@font-face {
  font-family: 'Lato Thin';
  src: url(/build/fonts/Lato-Thin.01923cbb.ttf);
}

@font-face {
  font-family: 'Lato Light';
  src: url(/build/fonts/Lato-Light.bfc37ff1.ttf);
}

@font-face {
  font-family: 'Lato';
  src: url(/build/fonts/Lato-Regular.9919edff.ttf);
}

@font-face {
  font-family: 'Lato Black';
  src: url(/build/fonts/Lato-Black.0b51cf32.ttf);
}

@font-face {
  font-family: 'Lato Bold';
  src: url(/build/fonts/Lato-Bold.5dd5aa02.ttf);
}

/*!
 * Bootstrap v4.6.2 (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 {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --breakpoint-xxl: 1400px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #FFFFFF;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

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

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

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

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: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #0056b3;
  text-decoration: underline;
}

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

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

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

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

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

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,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role="button"] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

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

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

textarea {
  overflow: auto;
  resize: vertical;
}

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

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

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

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

output {
  display: inline-block;
}

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

template {
  display: none;
}

[hidden] {
  display: none !important;
}

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

h1, .h1 {
  font-size: 2.5rem;
}

h2, .h2 {
  font-size: 2rem;
}

h3, .h3 {
  font-size: 1.75rem;
}

h4, .h4 {
  font-size: 1.5rem;
}

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

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

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

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

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

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

.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: 90%;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 0.875em;
  color: #6c757d;
}

.blockquote-footer::before {
  content: "\2014\00A0";
}

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

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

.figure {
  display: inline-block;
}

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

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word;
}

a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1140px;
  }
}

@media (min-width: 1400px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
    max-width: 1380px;
  }
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.no-gutters > .col,
.no-gutters > [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto, .col-xxl-1, .col-xxl-2, .col-xxl-3, .col-xxl-4, .col-xxl-5, .col-xxl-6, .col-xxl-7, .col-xxl-8, .col-xxl-9, .col-xxl-10, .col-xxl-11, .col-xxl-12, .col-xxl,
.col-xxl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

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

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

.row-cols-3 > * {
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

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

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

.row-cols-6 > * {
  flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

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

.col-1 {
  flex: 0 0 8.33333%;
  max-width: 8.33333%;
}

.col-2 {
  flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

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

.col-4 {
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.col-5 {
  flex: 0 0 41.66667%;
  max-width: 41.66667%;
}

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

.col-7 {
  flex: 0 0 58.33333%;
  max-width: 58.33333%;
}

.col-8 {
  flex: 0 0 66.66667%;
  max-width: 66.66667%;
}

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

.col-10 {
  flex: 0 0 83.33333%;
  max-width: 83.33333%;
}

.col-11 {
  flex: 0 0 91.66667%;
  max-width: 91.66667%;
}

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

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 13;
  }
  .order-sm-0 {
    order: 0;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-12 {
    order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333%;
  }
  .offset-sm-2 {
    margin-left: 16.66667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333%;
  }
  .offset-sm-5 {
    margin-left: 41.66667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333%;
  }
  .offset-sm-8 {
    margin-left: 66.66667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333%;
  }
  .offset-sm-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 13;
  }
  .order-md-0 {
    order: 0;
  }
  .order-md-1 {
    order: 1;
  }
  .order-md-2 {
    order: 2;
  }
  .order-md-3 {
    order: 3;
  }
  .order-md-4 {
    order: 4;
  }
  .order-md-5 {
    order: 5;
  }
  .order-md-6 {
    order: 6;
  }
  .order-md-7 {
    order: 7;
  }
  .order-md-8 {
    order: 8;
  }
  .order-md-9 {
    order: 9;
  }
  .order-md-10 {
    order: 10;
  }
  .order-md-11 {
    order: 11;
  }
  .order-md-12 {
    order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333%;
  }
  .offset-md-2 {
    margin-left: 16.66667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333%;
  }
  .offset-md-5 {
    margin-left: 41.66667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333%;
  }
  .offset-md-8 {
    margin-left: 66.66667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333%;
  }
  .offset-md-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 13;
  }
  .order-lg-0 {
    order: 0;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-12 {
    order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333%;
  }
  .offset-lg-2 {
    margin-left: 16.66667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333%;
  }
  .offset-lg-5 {
    margin-left: 41.66667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333%;
  }
  .offset-lg-8 {
    margin-left: 66.66667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333%;
  }
  .offset-lg-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 13;
  }
  .order-xl-0 {
    order: 0;
  }
  .order-xl-1 {
    order: 1;
  }
  .order-xl-2 {
    order: 2;
  }
  .order-xl-3 {
    order: 3;
  }
  .order-xl-4 {
    order: 4;
  }
  .order-xl-5 {
    order: 5;
  }
  .order-xl-6 {
    order: 6;
  }
  .order-xl-7 {
    order: 7;
  }
  .order-xl-8 {
    order: 8;
  }
  .order-xl-9 {
    order: 9;
  }
  .order-xl-10 {
    order: 10;
  }
  .order-xl-11 {
    order: 11;
  }
  .order-xl-12 {
    order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333%;
  }
  .offset-xl-2 {
    margin-left: 16.66667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333%;
  }
  .offset-xl-5 {
    margin-left: 41.66667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333%;
  }
  .offset-xl-8 {
    margin-left: 66.66667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333%;
  }
  .offset-xl-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 1400px) {
  .col-xxl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xxl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xxl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xxl-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-xxl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xxl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xxl-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xxl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-xxl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xxl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-xxl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-xxl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-xxl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-xxl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xxl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-xxl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-xxl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xxl-first {
    order: -1;
  }
  .order-xxl-last {
    order: 13;
  }
  .order-xxl-0 {
    order: 0;
  }
  .order-xxl-1 {
    order: 1;
  }
  .order-xxl-2 {
    order: 2;
  }
  .order-xxl-3 {
    order: 3;
  }
  .order-xxl-4 {
    order: 4;
  }
  .order-xxl-5 {
    order: 5;
  }
  .order-xxl-6 {
    order: 6;
  }
  .order-xxl-7 {
    order: 7;
  }
  .order-xxl-8 {
    order: 8;
  }
  .order-xxl-9 {
    order: 9;
  }
  .order-xxl-10 {
    order: 10;
  }
  .order-xxl-11 {
    order: 11;
  }
  .order-xxl-12 {
    order: 12;
  }
  .offset-xxl-0 {
    margin-left: 0;
  }
  .offset-xxl-1 {
    margin-left: 8.33333%;
  }
  .offset-xxl-2 {
    margin-left: 16.66667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.33333%;
  }
  .offset-xxl-5 {
    margin-left: 41.66667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.33333%;
  }
  .offset-xxl-8 {
    margin-left: 66.66667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.33333%;
  }
  .offset-xxl-11 {
    margin-left: 91.66667%;
  }
}

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}

.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dee2e6;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8daff;
}

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7abaff;
}

.table-hover .table-primary:hover {
  background-color: #9fcdff;
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #9fcdff;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db;
}

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb;
}

.table-hover .table-secondary:hover {
  background-color: #c8cbcf;
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #c8cbcf;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c3e6cb;
}

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e;
}

.table-hover .table-success:hover {
  background-color: #b1dfbb;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #b1dfbb;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb;
}

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda;
}

.table-hover .table-info:hover {
  background-color: #abdde5;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #abdde5;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeeba;
}

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e;
}

.table-hover .table-warning:hover {
  background-color: #ffe8a1;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #ffe8a1;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f5c6cb;
}

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e;
}

.table-hover .table-danger:hover {
  background-color: #f1b0b7;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #f1b0b7;
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe;
}

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc;
}

.table-hover .table-light:hover {
  background-color: #ececf6;
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca;
}

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c;
}

.table-hover .table-dark:hover {
  background-color: #b9bbbe;
}

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b9bbbe;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55;
}

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.table-dark {
  color: #fff;
  background-color: #343a40;
}

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}

.table-dark.table-bordered {
  border: 0;
}

.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}

.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}

@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}

@media (max-width: 1399.98px) {
  .table-responsive-xxl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xxl > .table-bordered {
    border: 0;
  }
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

input[type="date"].form-control,
input[type="time"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control {
  appearance: none;
}

select.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.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;
  line-height: 1.5;
}

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

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

.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}

.form-row > .col,
.form-row > [class*="col-"] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}

.form-check-input[disabled] ~ .form-check-label,
.form-check-input:disabled ~ .form-check-label {
  color: #6c757d;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

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

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem;
}

.form-row > .col > .valid-tooltip,
.form-row > [class*="col-"] > .valid-tooltip {
  left: 5px;
}

.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: #28a745;
  padding-right: calc(1.5em + 0.75rem) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated select.form-control:valid, select.form-control.is-valid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.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 .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}

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

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745;
}

.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

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

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

.form-row > .col > .invalid-tooltip,
.form-row > [class*="col-"] > .invalid-tooltip {
  left: 5px;
}

.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) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated select.form-control:invalid, select.form-control.is-invalid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.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 .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem 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;
}

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

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545;
}

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

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.form-inline .form-check {
  width: 100%;
}

@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}

.btn:hover {
  color: #212529;
  text-decoration: none;
}

.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.btn.disabled, .btn:disabled {
  opacity: 0.65;
}

.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}

.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}

.btn-secondary:focus, .btn-secondary.focus {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-secondary.disabled, .btn-secondary:disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:hover {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
}

.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #1e7e34;
  border-color: #1c7430;
}

.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}

.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #117a8b;
  border-color: #10707f;
}

.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}

.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}

.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #bd2130;
  border-color: #b21f2d;
}

.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}

.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}

.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}

.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1d2124;
  border-color: #171a1d;
}

.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}

.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #dc3545;
  background-color: transparent;
}

.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
.show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}

.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
.show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none;
}

.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
}

.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}

.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.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 {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.collapsing.width {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing.width {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}

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

.dropdown-toggle:empty::after {
  margin-left: 0;
}

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

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 1400px) {
  .dropdown-menu-xxl-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xxl-right {
    right: 0;
    left: auto;
  }
}

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}

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

.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}

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

.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}

.dropleft .dropdown-toggle::after {
  display: none;
}

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

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #e9ecef;
}

.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}

.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

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

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

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

.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:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}

.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.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 > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn:not(:first-child),
.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,
.dropright .dropdown-toggle-split::after {
  margin-left: 0;
}

.dropleft .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:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}

.btn-group-toggle > .btn input[type="radio"],
.btn-group-toggle > .btn input[type="checkbox"],
.btn-group-toggle > .btn-group > .btn input[type="radio"],
.btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}

.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .custom-file {
  display: flex;
  align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group:not(.has-validation) > .form-control:not(:last-child),
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label,
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group.has-validation > .form-control:nth-last-child(n + 3),
.input-group.has-validation > .custom-select:nth-last-child(n + 3),
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label,
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

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

.input-group-text input[type="radio"],
.input-group-text input[type="checkbox"] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

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

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  print-color-adjust: exact;
}

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #007bff;
  background-color: #007bff;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #80bdff;
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}

.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}

.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}

.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: 1px solid #adb5bd;
}

.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: 50% / 50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}

.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}

.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: transform 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) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  transform: translateX(0.75rem);
}

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none;
}

.custom-select:focus {
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}

.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}

.custom-select::-ms-expand {
  display: none;
}

.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  overflow: hidden;
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}

.custom-file-input:lang(fr) ~ .custom-file-label::after {
  content: "Parcourir";
}

.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  overflow: hidden;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  appearance: none;
}

.custom-range:focus {
  outline: 0;
}

.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range::-moz-focus-outer {
  border: 0;
}

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  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) {
  .custom-range::-webkit-slider-thumb {
    transition: none;
  }
}

.custom-range::-webkit-slider-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #007bff;
  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) {
  .custom-range::-moz-range-thumb {
    transition: none;
  }
}

.custom-range::-moz-range-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  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) {
  .custom-range::-ms-thumb {
    transition: none;
  }
}

.custom-range::-ms-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}

.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-moz-range-track {
  cursor: default;
}

.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: 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) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    transition: none;
  }
}

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

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}

.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-link {
  margin-bottom: -1px;
  background-color: transparent;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff;
}

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

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

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

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}

.navbar .container,
.navbar .container-fluid, .navbar .container-sm, .navbar .container-md, .navbar .container-lg, .navbar .container-xl, .navbar .container-xxl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}

.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

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

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}

.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

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

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

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50% / 100% 100% no-repeat;
}

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl, .navbar-expand-sm > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl, .navbar-expand-sm > .container-xxl {
    flex-wrap: nowrap;
  }
  .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;
  }
}

@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl, .navbar-expand-md > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl, .navbar-expand-md > .container-xxl {
    flex-wrap: nowrap;
  }
  .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;
  }
}

@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl, .navbar-expand-lg > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl, .navbar-expand-lg > .container-xxl {
    flex-wrap: nowrap;
  }
  .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;
  }
}

@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl, .navbar-expand-xl > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl, .navbar-expand-xl > .container-xxl {
    flex-wrap: nowrap;
  }
  .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;
  }
}

@media (max-width: 1399.98px) {
  .navbar-expand-xxl > .container,
  .navbar-expand-xxl > .container-fluid, .navbar-expand-xxl > .container-sm, .navbar-expand-xxl > .container-md, .navbar-expand-xxl > .container-lg, .navbar-expand-xxl > .container-xl, .navbar-expand-xxl > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1400px) {
  .navbar-expand-xxl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xxl > .container,
  .navbar-expand-xxl > .container-fluid, .navbar-expand-xxl > .container-sm, .navbar-expand-xxl > .container-md, .navbar-expand-xxl > .container-lg, .navbar-expand-xxl > .container-xl, .navbar-expand-xxl > .container-xxl {
    flex-wrap: nowrap;
  }
  .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 {
  flex-flow: row nowrap;
  justify-content: flex-start;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl, .navbar-expand > .container-xxl {
  padding-right: 0;
  padding-left: 0;
}

.navbar-expand .navbar-nav {
  flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl, .navbar-expand > .container-xxl {
  flex-wrap: nowrap;
}

.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}

.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}

.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}

.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}

.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-text a {
  color: #fff;
}

.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}

.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

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

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

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

.card-link:hover {
  text-decoration: none;
}

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

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

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

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

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

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

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

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

.card-deck .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group > .card {
  margin-bottom: 15px;
}

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

.card-columns .card {
  margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
  .card-columns {
    column-count: 3;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion {
  overflow-anchor: none;
}

.accordion > .card {
  overflow: hidden;
}

.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

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

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

.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}

a.badge:hover, a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

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

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #007bff;
}

a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: #0062cc;
}

a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.badge-secondary {
  color: #fff;
  background-color: #6c757d;
}

a.badge-secondary:hover, a.badge-secondary:focus {
  color: #fff;
  background-color: #545b62;
}

a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #28a745;
}

a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: #1e7e34;
}

a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #17a2b8;
}

a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  background-color: #117a8b;
}

a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}

a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}

a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #dc3545;
}

a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: #bd2130;
}

a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}

a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}

a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #343a40;
}

a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  background-color: #1d2124;
}

a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

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

.alert-heading {
  color: inherit;
}

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

.alert-dismissible {
  padding-right: 4rem;
}

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}

.alert-primary hr {
  border-top-color: #9fcdff;
}

.alert-primary .alert-link {
  color: #002752;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}

.alert-secondary hr {
  border-top-color: #c8cbcf;
}

.alert-secondary .alert-link {
  color: #202326;
}

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}

.alert-success hr {
  border-top-color: #b1dfbb;
}

.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}

.alert-info hr {
  border-top-color: #abdde5;
}

.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

.alert-warning hr {
  border-top-color: #ffe8a1;
}

.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}

.alert-danger hr {
  border-top-color: #f1b0b7;
}

.alert-danger .alert-link {
  color: #491217;
}

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}

.alert-light hr {
  border-top-color: #ececf6;
}

.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}

.alert-dark hr {
  border-top-color: #b9bbbe;
}

.alert-dark .alert-link {
  color: #040505;
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

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

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

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

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}

.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}

.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}

.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}

.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}

.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.list-group-item + .list-group-item {
  border-top-width: 0;
}

.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}

.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}

.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}

.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

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

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

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

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

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

.list-group-flush {
  border-radius: 0;
}

.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}

.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff;
}

.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #004085;
  background-color: #9fcdff;
}

.list-group-item-primary.list-group-item-action.active {
  color: #ffffff;
  background-color: #004085;
  border-color: #004085;
}

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db;
}

.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #383d41;
  background-color: #c8cbcf;
}

.list-group-item-secondary.list-group-item-action.active {
  color: #ffffff;
  background-color: #383d41;
  border-color: #383d41;
}

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb;
}

.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b1dfbb;
}

.list-group-item-success.list-group-item-action.active {
  color: #ffffff;
  background-color: #155724;
  border-color: #155724;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb;
}

.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #abdde5;
}

.list-group-item-info.list-group-item-action.active {
  color: #ffffff;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba;
}

.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #ffe8a1;
}

.list-group-item-warning.list-group-item-action.active {
  color: #ffffff;
  background-color: #856404;
  border-color: #856404;
}

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb;
}

.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #721c24;
  background-color: #f1b0b7;
}

.list-group-item-danger.list-group-item-action.active {
  color: #ffffff;
  background-color: #721c24;
  border-color: #721c24;
}

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe;
}

.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6;
}

.list-group-item-light.list-group-item-action.active {
  color: #ffffff;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca;
}

.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b9bbbe;
}

.list-group-item-dark.list-group-item-action.active {
  color: #ffffff;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5;
}

.close:hover {
  color: #000;
  text-decoration: none;
}

.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: .75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
}

a.close.disabled {
  pointer-events: none;
}

.toast {
  flex-basis: 350px;
  max-width: 350px;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  border-radius: 0.25rem;
}

.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast.showing {
  opacity: 1;
}

.toast.show {
  display: block;
  opacity: 1;
}

.toast.hide {
  display: none;
}

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

.toast-body {
  padding: 0.75rem;
}

.modal-open {
  overflow: hidden;
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  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 {
  display: flex;
  max-height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}

.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}

.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: min-content;
  content: "";
}

.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}

.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

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

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

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

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

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

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

.modal-footer > * {
  margin: 0.25rem;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: min-content;
  }
  .modal-sm {
    max-width: 300px;
  }
}

@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0;
}

.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0;
}

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem;
}

.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0;
}

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem;
}

.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

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

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}

.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}

.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem;
}

.bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
  bottom: calc(-0.5rem - 1px);
}

.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem;
}

.bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem;
}

.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
  top: calc(-0.5rem - 1px);
}

.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}

.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem;
}

.bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.popover-header:empty {
  display: none;
}

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

.carousel {
  position: relative;
}

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

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

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

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

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  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-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
  .carousel-fade .active.carousel-item-right {
    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: 20px;
  height: 20px;
  background: 50% / 100% 100% no-repeat;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: .5;
  transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}

.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  border: 0.25em solid currentcolor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: .75s linear infinite spinner-border;
}

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

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  background-color: currentcolor;
  border-radius: 50%;
  opacity: 0;
  animation: .75s linear infinite spinner-grow;
}

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

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    animation-duration: 1.5s;
  }
}

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

.bg-primary {
  background-color: #007bff !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #0062cc !important;
}

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

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important;
}

.bg-success {
  background-color: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

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

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important;
}

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

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #bd2130 !important;
}

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

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #ffffff !important;
}

.bg-transparent {
  background-color: transparent !important;
}

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

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

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

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

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

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

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

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

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

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

.border-primary {
  border-color: #007bff !important;
}

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

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

.border-info {
  border-color: #17a2b8 !important;
}

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

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

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

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

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

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

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

.rounded-pill {
  border-radius: 50rem !important;
}

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

.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

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

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

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

.d-block {
  display: block !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;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !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;
  }
}

@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !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;
  }
}

@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !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;
  }
}

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !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;
  }
}

@media (min-width: 1400px) {
  .d-xxl-none {
    display: none !important;
  }
  .d-xxl-inline {
    display: inline !important;
  }
  .d-xxl-inline-block {
    display: inline-block !important;
  }
  .d-xxl-block {
    display: block !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;
  }
}

@media print {
  .d-print-none {
    display: none !important;
  }
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !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;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.85714%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.embed-responsive-21by9::before {
  padding-top: 42.85714%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.embed-responsive-21by9::before {
  padding-top: 42.85714%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.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-wrap {
  flex-wrap: wrap !important;
}

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

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

.flex-fill {
  flex: 1 1 auto !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;
}

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

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

@media (min-width: 576px) {
  .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-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !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;
  }
  .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;
  }
  .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;
  }
}

@media (min-width: 768px) {
  .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-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !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;
  }
  .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;
  }
  .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;
  }
}

@media (min-width: 992px) {
  .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-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !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;
  }
  .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;
  }
  .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;
  }
}

@media (min-width: 1200px) {
  .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-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !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;
  }
  .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;
  }
  .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;
  }
}

@media (min-width: 1400px) {
  .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-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-xxl-fill {
    flex: 1 1 auto !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;
  }
  .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;
  }
  .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;
  }
}

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

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

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

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }
  .float-sm-right {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
}

@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }
  .float-md-right {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
}

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }
  .float-lg-right {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
}

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }
  .float-xl-right {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
}

@media (min-width: 1400px) {
  .float-xxl-left {
    float: left !important;
  }
  .float-xxl-right {
    float: right !important;
  }
  .float-xxl-none {
    float: none !important;
  }
}

.user-select-all {
  user-select: all !important;
}

.user-select-auto {
  user-select: auto !important;
}

.user-select-none {
  user-select: none !important;
}

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

.overflow-hidden {
  overflow: hidden !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;
}

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

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

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

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

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

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

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

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

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

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important;
}

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

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

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

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

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

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important;
  }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important;
  }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important;
  }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important;
  }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important;
  }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important;
  }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important;
  }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important;
  }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important;
  }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important;
  }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important;
  }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important;
  }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important;
  }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important;
  }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important;
  }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important;
  }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important;
  }
  .m-sm-n1 {
    margin: -0.25rem !important;
  }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important;
  }
  .m-sm-n2 {
    margin: -0.5rem !important;
  }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important;
  }
  .m-sm-n3 {
    margin: -1rem !important;
  }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important;
  }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important;
  }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important;
  }
  .m-sm-n4 {
    margin: -1.5rem !important;
  }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important;
  }
  .m-sm-n5 {
    margin: -3rem !important;
  }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important;
  }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important;
  }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important;
  }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important;
  }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important;
  }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important;
  }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important;
  }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important;
  }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important;
  }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important;
  }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important;
  }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important;
  }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important;
  }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important;
  }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important;
  }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important;
  }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important;
  }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important;
  }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important;
  }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important;
  }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important;
  }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important;
  }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important;
  }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important;
  }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important;
  }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important;
  }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important;
  }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important;
  }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important;
  }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important;
  }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important;
  }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important;
  }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important;
  }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important;
  }
  .m-md-n1 {
    margin: -0.25rem !important;
  }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important;
  }
  .m-md-n2 {
    margin: -0.5rem !important;
  }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important;
  }
  .m-md-n3 {
    margin: -1rem !important;
  }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important;
  }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important;
  }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important;
  }
  .m-md-n4 {
    margin: -1.5rem !important;
  }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important;
  }
  .m-md-n5 {
    margin: -3rem !important;
  }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important;
  }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important;
  }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important;
  }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important;
  }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important;
  }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important;
  }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important;
  }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important;
  }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important;
  }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important;
  }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important;
  }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important;
  }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important;
  }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important;
  }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important;
  }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important;
  }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important;
  }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important;
  }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important;
  }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important;
  }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important;
  }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important;
  }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important;
  }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important;
  }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important;
  }
  .m-lg-n1 {
    margin: -0.25rem !important;
  }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important;
  }
  .m-lg-n2 {
    margin: -0.5rem !important;
  }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important;
  }
  .m-lg-n3 {
    margin: -1rem !important;
  }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important;
  }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important;
  }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important;
  }
  .m-lg-n4 {
    margin: -1.5rem !important;
  }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important;
  }
  .m-lg-n5 {
    margin: -3rem !important;
  }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important;
  }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important;
  }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important;
  }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important;
  }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important;
  }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important;
  }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important;
  }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important;
  }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important;
  }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important;
  }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important;
  }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important;
  }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important;
  }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important;
  }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important;
  }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important;
  }
  .m-xl-n1 {
    margin: -0.25rem !important;
  }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important;
  }
  .m-xl-n2 {
    margin: -0.5rem !important;
  }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important;
  }
  .m-xl-n3 {
    margin: -1rem !important;
  }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important;
  }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important;
  }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important;
  }
  .m-xl-n4 {
    margin: -1.5rem !important;
  }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important;
  }
  .m-xl-n5 {
    margin: -3rem !important;
  }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important;
  }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important;
  }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important;
  }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important;
  }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 1400px) {
  .m-xxl-0 {
    margin: 0 !important;
  }
  .mt-xxl-0,
  .my-xxl-0 {
    margin-top: 0 !important;
  }
  .mr-xxl-0,
  .mx-xxl-0 {
    margin-right: 0 !important;
  }
  .mb-xxl-0,
  .my-xxl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xxl-0,
  .mx-xxl-0 {
    margin-left: 0 !important;
  }
  .m-xxl-1 {
    margin: 0.25rem !important;
  }
  .mt-xxl-1,
  .my-xxl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xxl-1,
  .mx-xxl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xxl-1,
  .my-xxl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xxl-1,
  .mx-xxl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xxl-2 {
    margin: 0.5rem !important;
  }
  .mt-xxl-2,
  .my-xxl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xxl-2,
  .mx-xxl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xxl-2,
  .my-xxl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xxl-2,
  .mx-xxl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xxl-3 {
    margin: 1rem !important;
  }
  .mt-xxl-3,
  .my-xxl-3 {
    margin-top: 1rem !important;
  }
  .mr-xxl-3,
  .mx-xxl-3 {
    margin-right: 1rem !important;
  }
  .mb-xxl-3,
  .my-xxl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xxl-3,
  .mx-xxl-3 {
    margin-left: 1rem !important;
  }
  .m-xxl-4 {
    margin: 1.5rem !important;
  }
  .mt-xxl-4,
  .my-xxl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xxl-4,
  .mx-xxl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xxl-4,
  .my-xxl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xxl-4,
  .mx-xxl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xxl-5 {
    margin: 3rem !important;
  }
  .mt-xxl-5,
  .my-xxl-5 {
    margin-top: 3rem !important;
  }
  .mr-xxl-5,
  .mx-xxl-5 {
    margin-right: 3rem !important;
  }
  .mb-xxl-5,
  .my-xxl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xxl-5,
  .mx-xxl-5 {
    margin-left: 3rem !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .pt-xxl-0,
  .py-xxl-0 {
    padding-top: 0 !important;
  }
  .pr-xxl-0,
  .px-xxl-0 {
    padding-right: 0 !important;
  }
  .pb-xxl-0,
  .py-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xxl-0,
  .px-xxl-0 {
    padding-left: 0 !important;
  }
  .p-xxl-1 {
    padding: 0.25rem !important;
  }
  .pt-xxl-1,
  .py-xxl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xxl-1,
  .px-xxl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xxl-1,
  .py-xxl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xxl-1,
  .px-xxl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xxl-2 {
    padding: 0.5rem !important;
  }
  .pt-xxl-2,
  .py-xxl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xxl-2,
  .px-xxl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xxl-2,
  .py-xxl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xxl-2,
  .px-xxl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xxl-3 {
    padding: 1rem !important;
  }
  .pt-xxl-3,
  .py-xxl-3 {
    padding-top: 1rem !important;
  }
  .pr-xxl-3,
  .px-xxl-3 {
    padding-right: 1rem !important;
  }
  .pb-xxl-3,
  .py-xxl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xxl-3,
  .px-xxl-3 {
    padding-left: 1rem !important;
  }
  .p-xxl-4 {
    padding: 1.5rem !important;
  }
  .pt-xxl-4,
  .py-xxl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xxl-4,
  .px-xxl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xxl-4,
  .py-xxl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xxl-4,
  .px-xxl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xxl-5 {
    padding: 3rem !important;
  }
  .pt-xxl-5,
  .py-xxl-5 {
    padding-top: 3rem !important;
  }
  .pr-xxl-5,
  .px-xxl-5 {
    padding-right: 3rem !important;
  }
  .pb-xxl-5,
  .py-xxl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xxl-5,
  .px-xxl-5 {
    padding-left: 3rem !important;
  }
  .m-xxl-n1 {
    margin: -0.25rem !important;
  }
  .mt-xxl-n1,
  .my-xxl-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-xxl-n1,
  .mx-xxl-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-xxl-n1,
  .my-xxl-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-xxl-n1,
  .mx-xxl-n1 {
    margin-left: -0.25rem !important;
  }
  .m-xxl-n2 {
    margin: -0.5rem !important;
  }
  .mt-xxl-n2,
  .my-xxl-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-xxl-n2,
  .mx-xxl-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-xxl-n2,
  .my-xxl-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xxl-n2,
  .mx-xxl-n2 {
    margin-left: -0.5rem !important;
  }
  .m-xxl-n3 {
    margin: -1rem !important;
  }
  .mt-xxl-n3,
  .my-xxl-n3 {
    margin-top: -1rem !important;
  }
  .mr-xxl-n3,
  .mx-xxl-n3 {
    margin-right: -1rem !important;
  }
  .mb-xxl-n3,
  .my-xxl-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-xxl-n3,
  .mx-xxl-n3 {
    margin-left: -1rem !important;
  }
  .m-xxl-n4 {
    margin: -1.5rem !important;
  }
  .mt-xxl-n4,
  .my-xxl-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-xxl-n4,
  .mx-xxl-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-xxl-n4,
  .my-xxl-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-xxl-n4,
  .mx-xxl-n4 {
    margin-left: -1.5rem !important;
  }
  .m-xxl-n5 {
    margin: -3rem !important;
  }
  .mt-xxl-n5,
  .my-xxl-n5 {
    margin-top: -3rem !important;
  }
  .mr-xxl-n5,
  .mx-xxl-n5 {
    margin-right: -3rem !important;
  }
  .mb-xxl-n5,
  .my-xxl-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-xxl-n5,
  .mx-xxl-n5 {
    margin-left: -3rem !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mt-xxl-auto,
  .my-xxl-auto {
    margin-top: auto !important;
  }
  .mr-xxl-auto,
  .mx-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-auto,
  .my-xxl-auto {
    margin-bottom: auto !important;
  }
  .ml-xxl-auto,
  .mx-xxl-auto {
    margin-left: auto !important;
  }
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

.text-justify {
  text-align: justify !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

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

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

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

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}

@media (min-width: 1400px) {
  .text-xxl-left {
    text-align: left !important;
  }
  .text-xxl-right {
    text-align: right !important;
  }
  .text-xxl-center {
    text-align: center !important;
  }
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #ffffff !important;
}

.text-primary {
  color: #007bff !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: #0056b3 !important;
}

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

a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

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

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}

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

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !important;
}

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

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }
  a:not(.btn) {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }
  .container {
    min-width: 992px !important;
  }
  .navbar {
    display: none;
  }
  .badge {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #ffffff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important;
  }
  .table-dark {
    color: inherit;
  }
  .table-dark th,
  .table-dark td,
  .table-dark thead th,
  .table-dark tbody + tbody {
    border-color: #dee2e6;
  }
  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6;
  }
}

/*------------------------------------*\
  #NAVIGATION
\*------------------------------------*/
.navigation .navigation__sidebar-button {
  color: inherit;
  font-size: 2rem;
  text-decoration: none;
}

.navigation .navigation__item {
  display: none;
}

.navigation .navigation__sub-block {
  display: none;
}

.navigation .navigation-dropdown {
  display: none;
}

@media (min-width: 992px) {
  .navigation {
    display: flex;
  }
  .navigation .navigation__sidebar-button {
    display: none;
  }
  .navigation .navigation__sub-block {
    display: grid;
    justify-items: center;
    margin-left: 50px;
  }
  .navigation .navigation__sub-block .navigation__item:first-child {
    margin-bottom: 5px;
  }
  .navigation .navigation__item {
    display: block;
    color: white;
    text-decoration: none;
    /*font-size: 1.2rem;*/
    font-weight: 500;
  }
  .navigation .navigation__item:hover {
    font-weight: 700;
  }
  .navigation .navigation__item.navigation__item--right {
    margin-left: auto;
  }
  .navigation .navigation__item.navigation__item--dropdown-toggle {
    display: grid;
    grid-template-areas: "user   icon" "entity icon";
  }
  .navigation .navigation__item.navigation__item--dropdown-toggle span:nth-child(1) {
    grid-area: user;
    justify-self: right;
  }
  .navigation .navigation__item.navigation__item--dropdown-toggle span:nth-child(2) {
    grid-area: entity;
    justify-self: right;
    font-weight: normal;
  }
  .navigation .navigation__item.navigation__item--dropdown-toggle span:nth-child(3) {
    grid-area: icon;
    align-self: center;
    margin-left: 5px;
  }
  .navigation .navigation-dropdown {
    display: block;
    position: relative;
    margin-left: auto;
  }
  .navigation .navigation-dropdown .navigation-dropdown-menu {
    display: none;
    position: absolute;
    width: 300px;
    right: 0;
    z-index: 1000;
    float: left;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16), 0 2px 4px rgba(0, 0, 0, 0.23);
  }
  .navigation .navigation-dropdown .navigation-dropdown-menu .navigation-dropdown-menu__item {
    display: block;
    padding: 20px 10px;
    color: #706f73;
    text-decoration: none;
    border-bottom: solid 1px #706f73;
  }
  .navigation .navigation-dropdown .navigation-dropdown-menu .navigation-dropdown-menu__item span {
    display: inline-block;
    width: 40px;
    text-align: center;
  }
  .navigation .navigation-dropdown .navigation-dropdown-menu .navigation-dropdown-menu__item:hover {
    background-color: rgba(0, 0, 0, 0.1);
  }
  .navigation .navigation-dropdown .navigation-dropdown-menu .navigation-dropdown-menu__item.navigation-dropdown-menu__item--with-chevron::after {
    margin-left: 10px;
    content: '\F054';
    font-family: FontAwesome, sans-serif;
    color: #DD3A98;
  }
  .navigation .navigation-dropdown .navigation-dropdown-submenu {
    display: none;
    position: absolute;
    width: 340px;
    right: 0;
    z-index: 1000;
    float: left;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16), 0 2px 4px rgba(0, 0, 0, 0.23);
  }
  .navigation .navigation-dropdown .navigation-dropdown-submenu .navigation-dropdown-submenu__title {
    display: block;
    padding: 20px;
    background-color: #DD3A98;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
  }
  .navigation .navigation-dropdown .navigation-dropdown-submenu .navigation-dropdown-submenu__title::before {
    margin-right: 10px;
    content: '\F053';
    font-family: FontAwesome, sans-serif;
  }
  .navigation .navigation-dropdown .navigation-dropdown-submenu .navigation-dropdown-submenu__item {
    display: block;
    padding: 5px 10px 5px 45px;
    hyphens: auto;
    color: #706f73;
    text-decoration: none;
  }
  .navigation .navigation-dropdown .navigation-dropdown-submenu .navigation-dropdown-submenu__item:hover {
    background-color: rgba(0, 0, 0, 0.1);
  }
  .navigation .navigation-dropdown .navigation-dropdown-submenu .navigation-dropdown-submenu__item.navigation-dropdown-submenu__item--active {
    font-weight: bold;
  }
}

/*------------------------------------*\
  #SIDEBAR
\*------------------------------------*/
.sidebar {
  height: 100%;
  width: 340px;
  position: fixed;
  z-index: 1050;
  top: 0;
  left: 0;
  background-color: #dfdfdf;
  overflow-x: hidden;
  transform: translateX(-340px);
  transition: 0.5s;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

.sidebar-header {
  background-color: #706f73;
}

.sidebar-header p {
  color: #fff;
  text-align: center;
  margin: 1.2rem 0;
}

.sidebar-content {
  padding: 10px;
}

.sidebar-content .sidebar-content__item {
  display: block;
  padding: 20px 10px;
  color: #706f73;
  text-decoration: none;
  border-bottom: solid 1px #706f73;
}

.sidebar-content .sidebar-content__item span {
  display: inline-block;
  width: 40px;
  text-align: center;
}

.sidebar-content .sidebar-content__item--dropdown-close::after {
  margin-left: 10px;
  content: '\F054';
  font-family: FontAwesome, sans-serif;
  color: #DD3A98;
}

.sidebar-content .sidebar-content__item--dropdown-open::after {
  margin-left: 10px;
  content: '\F078';
  font-family: FontAwesome, sans-serif;
  color: #DD3A98;
}

.sidebar-subcontent {
  padding: 10px 0;
  border-bottom: solid 1px #706f73;
  width: 320px;
}

.sidebar-subcontent .sidebar-subcontent__item {
  display: block;
  padding-left: 50px;
  padding-right: 50px;
  max-width: 100%;
  padding-top: 5px;
  padding-bottom: 5px;
  hyphens: auto;
  color: #706f73;
  text-decoration: none;
}

.sidebar-subcontent .sidebar-subcontent__item + .sidebar-subcontent__item--active {
  font-weight: bold;
}

.sidebar-footer {
  display: grid;
  justify-items: center;
  padding: 20px;
  color: #DD3A98;
}

.shadow-area {
  transition: 0.5s;
}

.--with--sidebar {
  overflow: hidden;
}

.--with--sidebar .sidebar {
  transform: translateX(0px);
}

.--with--sidebar .shadow-area {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 1040;
}

.force-roboto {
  font-family: 'Roboto', sans-serif;
}

/*------------------------------------*\
  #New menu
\*------------------------------------*/
.force-lato {
  font-family: 'Lato', sans-serif;
}

.navbar-desktop, .navbar-mobile {
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.16);
  margin-bottom: 1rem;
}

.dropdown-toggle::after {
  margin-left: 1.25em;
  vertical-align: inherit;
  font-family: "Fontawesome";
  content: "\f078";
  border: none;
}

.dropdown-toggle[aria-expanded="true"]::after {
  content: "\f077";
  color: #FF800A;
}

.main-menu a:hover {
  color: #FF800A;
}

.main-menu .nav-item {
  margin-top: 22px;
  margin-bottom: 22px;
  /*&:not(.dropdown, .active):hover{
            .nav-link, .dropdown-item {
                color: $ami2-orange;
            }
        }*/
}

.main-menu .nav-item .nav-link {
  color: #272727;
  font-size: 16px;
  text-transform: uppercase;
  font-family: Lato Bold, sans-serif;
}

.main-menu .nav-item.active .nav-link, .main-menu .nav-item.active .dropdown-item {
  color: #DD3A98;
  border-bottom: solid 3px #DD3498;
}

.main-menu .nav-item:not(:last-child):after {
  display: inline-block;
  content: url("data:image/svg+xml, %3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228.335%22%20height%3D%228.335%22%20viewBox%3D%220%200%208.335%208.335%22%3E%20%3Crect%20id%3D%22Rectangle_1039%22%20data-name%3D%22Rectangle%201039%22%20width%3D%225.894%22%20height%3D%225.894%22%20rx%3D%221%22%20transform%3D%22translate%284.168%29%20rotate%2845%29%22%20fill%3D%22%23dd3a98%22%2F%3E%3C%2Fsvg%3E");
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

.main-menu .nav-link {
  display: inline-block;
}

.main-menu .dropdown-item {
  margin: 0 1rem;
  padding: 1.5rem 0.5rem 1.5rem 0.5rem;
  width: auto;
  color: #272727;
  font-size: 16px;
  font-family: Lato, sans-serif;
}

.main-menu .dropdown-item:not(:last-child) {
  border-bottom: solid 1px #D5D5D5;
}

.main-menu #loyaltyForm .dropdown-item {
  border-bottom: solid 1px #D5D5D5;
}

.user-menu {
  padding-bottom: 3px;
  /* to align items cause border-bottom on active link */
}

.user-menu .dropdown-menu {
  left: auto;
  right: 0;
}

.user-menu .logout {
  color: #767676;
  text-transform: capitalize;
}

.user-menu .user-dropdown {
  padding: 0rem 0.25rem;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  background-color: #707070;
}

.user-menu .user-dropdown > a {
  color: #FFF;
  font-size: 14px;
  font-family: Lato Bold, sans-serif;
  text-align: center;
}

.user-menu .user-dropdown > a i {
  color: #D5D5D5;
}

.user-menu .dropdown-item {
  margin: 0 1rem;
  padding: 1.5rem 0.5rem 1.5rem 0.5rem;
  width: auto;
  color: #272727;
  font-size: 16px;
  font-family: Lato, sans-serif;
}

.user-menu .dropdown-item:not(:last-child):not(.dropdown-subitem) {
  border-bottom: solid 1px #D5D5D5;
}

.user-menu .dropdown-subitem {
  margin: 0;
}

.user-menu .dropdown-subitem span {
  font-family: "Lato", sans-serif;
}

.dropdown-item:hover, .dropdown-item:focus {
  background-color: #FFF;
}

.dropdown-item.active, .dropdown-item:active {
  color: #FF800A;
  text-decoration: none;
  background-color: #fff;
}

.dropdown-submenu-toggle:active, .dropdown-submenu-toggle.active {
  color: #272727;
  text-decoration: none;
  background-color: #FFF;
}

.dropdown-submenu-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-subitem {
  background-color: #D5D5D5;
}

.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
  cursor: not-allowed;
}

.left-sidebar-toggler, .right-sidebar-toggler {
  color: #272727;
}

.left-sidebar-toggler i, .right-sidebar-toggler i {
  font-size: 30px;
}

#left-sidebar {
  width: 290px;
  position: fixed;
  top: 0;
  left: 0;
  /* top layer */
  z-index: 9999;
  background-color: #fff;
  box-shadow: 6px 8px 15px 0px rgba(0, 0, 0, 0.16);
  -webkit-border-radius: 0 10px 10px 0;
  -moz-border-radius: 0 10px 10px 0;
  border-radius: 0 10px 10px 0;
  height: 100%;
  overflow: auto;
}

#left-sidebar a:hover {
  color: #FF800A;
}

#left-sidebar .nav-item {
  margin-top: 22px;
  margin-bottom: 22px;
}

#left-sidebar .nav-item .nav-link {
  color: #272727;
  font-size: 15px;
  text-transform: uppercase;
  font-family: Lato Bold, sans-serif;
}

#left-sidebar .nav-item.active .nav-link, #left-sidebar .nav-item.active .dropdown-item {
  color: #DD3A98;
  border-bottom: solid 3px #DD3498;
}

#left-sidebar .nav-item:before {
  display: inline-block;
  content: url("data:image/svg+xml, %3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228.335%22%20height%3D%228.335%22%20viewBox%3D%220%200%208.335%208.335%22%3E%20%3Crect%20id%3D%22Rectangle_1039%22%20data-name%3D%22Rectangle%201039%22%20width%3D%225.894%22%20height%3D%225.894%22%20rx%3D%221%22%20transform%3D%22translate%284.168%29%20rotate%2845%29%22%20fill%3D%22%23dd3a98%22%2F%3E%3C%2Fsvg%3E");
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

#left-sidebar .nav-link {
  display: inline-block;
}

.close-pink {
  color: #DD3A98;
  font-weight: bold;
}

.close-white {
  color: white;
  font-weight: bold;
}

.fixed-top-right {
  position: absolute;
  top: 0;
  right: 0;
}

#right-sidebar {
  width: 250px;
  position: fixed;
  top: 0;
  right: 0;
  /* top layer */
  z-index: 9999;
  background-color: #fff;
  box-shadow: -6px 8px 15px 0px rgba(0, 0, 0, 0.16);
  -webkit-border-radius: 10px 0 0 10px;
  -moz-border-radius: 10px 0 0 10px;
  border-radius: 10px 0 0 10px;
}

#right-sidebar a:hover {
  color: #FF800A;
}

#right-sidebar .nav-item {
  margin-top: 11px;
  margin-bottom: 11px;
}

#right-sidebar .nav-item .nav-link {
  color: #272727;
  font-size: 15px;
  font-family: Lato, sans-serif;
}

#right-sidebar .nav-item.active .nav-link, #right-sidebar .nav-item.active .dropdown-item {
  color: #DD3A98;
  border-bottom: solid 3px #DD3498;
}

#right-sidebar .nav-item.disabled {
  background-color: transparent;
  cursor: not-allowed;
}

#right-sidebar .nav-item.disabled .nav-link {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
  cursor: not-allowed;
}

#right-sidebar .nav-link {
  display: inline-block;
}

#right-sidebar .user-connected-infos {
  background-color: #767676;
  margin-left: -1.5rem;
  padding: 2rem 2.5rem;
}

#right-sidebar .user-connected-infos .user-connected-infos-user {
  color: #FFF;
  font-size: 15px;
  font-family: "Lato Bold", serif;
}

#right-sidebar .user-connected-infos i {
  color: #D5D5D5;
}

#right-sidebar .user-connected-infos i span {
  color: #D5D5D5;
  font-size: 12px;
}

#right-sidebar div.logout-item {
  width: 100%;
  padding-right: 1.5rem;
}

#right-sidebar div.logout-item a.logout {
  color: #DD3A98;
  font-family: "Lato Bold", serif;
  width: 100%;
  text-align: center;
}

.has-sub-menu:after {
  font-family: "Fontawesome";
  content: "\f078";
  padding-left: 1rem;
}

.has-sub-menu.open:after {
  font-family: "Fontawesome";
  content: "\f077";
  padding-left: 1rem;
  color: #FF800A;
}

.sub-menu {
  background-color: #F2F2F2;
  margin-left: -1.5rem;
  padding-left: 0;
}

.sub-menu-item {
  list-style: none;
  padding-left: 2rem;
  padding-top: 22px;
  padding-bottom: 22px;
  background-color: #F2F2F2;
}

.sub-menu-item:not(.disabled):hover, .sub-menu-item.active {
  text-decoration: none;
  background-color: #FFFFFF;
}

.sub-menu-item:not(.disabled):hover .sub-menu-item-link, .sub-menu-item.active .sub-menu-item-link {
  color: #FF800A;
  text-decoration: none;
}

.sub-menu-item-link {
  color: #272727;
  font-size: 15px;
  font-family: Lato, sans-serif;
}

.sub-menu-item-link.disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
  cursor: not-allowed;
}

.sub-menu-separator {
  height: 1px;
  background-color: #D5D5D5;
  width: calc(100% - 1.5rem);
  list-style: none;
}

/*------------------------------------*\
  #PAGE-HEAD
\*------------------------------------*/
.page-head {
  display: grid;
  height: 200px;
  background-color: #FFF;
  align-items: center;
  color: #272727;
}

.page-head--sticky {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1020;
}

.page-head__logo {
  display: block;
  position: absolute;
  top: 0;
  left: calc(50% - 122px);
  z-index: 5;
  width: 245px;
  height: 122px;
  background: url(/build/images/logo-ami2-header_245x122.56bfa925.png) no-repeat;
  background-size: cover;
}

.page-head__background {
  background-color: #FFFFFF;
}

/*------------------------------------*\
  #PAGE-CONTENT
\*------------------------------------*/
.page-content {
  padding-top: 5px;
}

/*------------------------------------*\
  #GRID-WIDGET
\*------------------------------------*/
.grid-widget {
  /*.first-column, .second-column, .third-column{
    margin-left: 2%;
    margin-right: 2%;
  }*/
}

/*------------------------------------*\
  #MANAGER ORGANIZATION AND SERVICE WIDGETS
\*------------------------------------*/
.manager-widget, .organization-widget, .service-widget {
  background-color: #F2F2F2;
  padding: 2rem;
  border-radius: 10px;
  box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.16);
}

.manager-widget .manager-widget__title, .manager-widget .organization-widget__title, .manager-widget .service-widget__title, .organization-widget .manager-widget__title, .organization-widget .organization-widget__title, .organization-widget .service-widget__title, .service-widget .manager-widget__title, .service-widget .organization-widget__title, .service-widget .service-widget__title {
  font-family: "Lato Bold", sans-serif;
  color: #272727;
  font-size: 25px;
  text-transform: capitalize;
  width: 100%;
  text-align: center;
  margin-bottom: 1.5rem;
}

.manager-widget .grouped-widget, .organization-widget .grouped-widget, .service-widget .grouped-widget {
  background-color: #FFF;
  padding: .5rem 1rem;
  border-radius: 10px;
  box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  margin-bottom: 1.5rem;
}

.manager-widget .grouped-widget.tablet, .organization-widget .grouped-widget.tablet, .service-widget .grouped-widget.tablet {
  height: 46px;
}

.manager-widget .grouped-widget:last-child:not(#loyaltyForm), .organization-widget .grouped-widget:last-child:not(#loyaltyForm), .service-widget .grouped-widget:last-child:not(#loyaltyForm) {
  margin-bottom: 0;
}

.manager-widget .grouped-widget .widget-title .widget-title__logo, .organization-widget .grouped-widget .widget-title .widget-title__logo, .service-widget .grouped-widget .widget-title .widget-title__logo {
  width: 10%;
  max-height: 30px;
}

.manager-widget .grouped-widget .widget-title .widget-title__logo-hovered, .organization-widget .grouped-widget .widget-title .widget-title__logo-hovered, .service-widget .grouped-widget .widget-title .widget-title__logo-hovered {
  display: none;
  width: 10%;
  max-height: 30px;
}

.manager-widget .grouped-widget .widget-title .widget-title__title, .organization-widget .grouped-widget .widget-title .widget-title__title, .service-widget .grouped-widget .widget-title .widget-title__title {
  width: 90%;
  font-family: "Lato Bold", sans-serif;
  font-size: 14px;
  color: #272727;
}

.manager-widget .grouped-widget:hover, .organization-widget .grouped-widget:hover, .service-widget .grouped-widget:hover {
  background-color: #FF800A;
}

.manager-widget .grouped-widget:hover .widget-title__title, .organization-widget .grouped-widget:hover .widget-title__title, .service-widget .grouped-widget:hover .widget-title__title {
  color: #FFF;
}

.manager-widget .grouped-widget:hover .widget-title__logo, .organization-widget .grouped-widget:hover .widget-title__logo, .service-widget .grouped-widget:hover .widget-title__logo {
  display: none;
  width: 10%;
  max-height: 30px;
}

.manager-widget .grouped-widget:hover .widget-title__logo-hovered, .organization-widget .grouped-widget:hover .widget-title__logo-hovered, .service-widget .grouped-widget:hover .widget-title__logo-hovered {
  display: inherit;
  width: 10%;
  max-height: 30px;
}

/*------------------------------------*\
  #PERSONAL SPACE WIDGET
\*------------------------------------*/
.personal-space-widget {
  background-color: #DD3A98;
  padding: .95rem;
  border-radius: 10px;
  box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  margin-bottom: 1.5rem;
}

.personal-space-widget .widget-title .widget-title__logo {
  width: 10%;
  max-height: 30px;
}

.personal-space-widget .widget-title .widget-title__logo-hovered {
  display: none;
  width: 10%;
  max-height: 30px;
}

.personal-space-widget .widget-title .widget-title__title {
  width: 90%;
  font-family: "Lato Bold", sans-serif;
  font-size: 14px;
  color: #fff;
}

.personal-space-widget:hover {
  background-color: #FF800A;
}

.personal-space-widget:hover .widget-title__logo {
  display: none;
  width: 10%;
  max-height: 30px;
}

.personal-space-widget:hover .widget-title__logo-hovered {
  display: inherit;
  width: 10%;
  max-height: 30px;
}

/*------------------------------------*\
  #CONTACT WIDGET
\*------------------------------------*/
.commercial-management {
  background-color: #F2F2F2;
  padding: 2rem;
  border-radius: 10px;
  box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  margin-bottom: 1.5rem;
  /*height: 422px;*/
  font-family: "Lato Bold", sans-serif;
  font-size: 14px;
}

.commercial-management .widget-title {
  color: #272727;
  font-size: 25px;
  text-transform: capitalize;
  width: 100%;
  text-align: center;
  margin-bottom: 1.5rem;
}

.commercial-management .widget-title .widget-title__title {
  text-align: center;
  width: 90%;
  font-size: 25px;
}

.commercial-management .widget-caption__commercial-block {
  background-color: #FFF;
  border-radius: 10px;
  box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.16);
}

.commercial-management .widget-caption__commercial-block .widget-caption__commercial-block__title {
  color: #DD3A98;
  font-family: "Lato Bold", sans-serif;
  font-size: 20px;
}

.commercial-management .widget-caption__commercial-block .widget-caption__commercial-block__phone, .commercial-management .widget-caption__commercial-block .widget-caption__commercial-block__email {
  font-family: 'Lato', sans-serif;
}

.commercial-management .widget-caption__commercial-block .widget-caption__commercial-block__phone > i, .commercial-management .widget-caption__commercial-block .widget-caption__commercial-block__email > i {
  color: #DD3A98;
}

.commercial-management .widget-caption__commercial-block .widget-caption__commercial-block__email a {
  overflow: hidden;
  text-overflow: ellipsis;
  color: #272727;
}

.commercial-management .widget-caption__commercial-block .widget-caption__commercial-block__email a:hover, .commercial-management .widget-caption__commercial-block .widget-caption__commercial-block__email a:focus, .commercial-management .widget-caption__commercial-block .widget-caption__commercial-block__email a:visited {
  color: #272727;
  text-decoration: none;
}

.commercial-management .widget-caption__commercial-block span {
  display: block;
}

.commercial-management .widget-caption__commercial-block span > i {
  width: 30px;
}

.commercial-management .widget-caption__commercial-block:hover .widget-caption__commercial-block__title {
  color: #FF800A;
}

.commercial-management .widget-caption__commercial-block:hover .widget-caption__commercial-block__phone > i, .commercial-management .widget-caption__commercial-block:hover .widget-caption__commercial-block__email > i {
  color: #FF800A;
}

/*------------------------------------*\
  #STANDARD WIDGET
\*------------------------------------*/
.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management) {
  background-color: #FFF;
  padding: 0;
  border-radius: 10px;
  box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  margin-bottom: 1.5rem;
  position: relative;
  height: 250px;
  overflow: hidden;
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management).customer:not(.commercial-management), .widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management).publications-management.supplier {
  /*height: 194px;*/
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management) .widget-title {
  height: 60px;
  background-color: #F2F2F2;
  border-radius: 10px 10px 0 0;
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management) .widget-title .widget-title__logo {
  width: 10%;
  max-height: 30px;
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management) .widget-title .widget-title__logo-hovered {
  display: none;
  width: 10%;
  max-height: 30px;
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management) .widget-title .widget-title__title {
  width: 90%;
  font-family: "Lato Bold", sans-serif;
  font-size: 14px;
  color: #272727;
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management):hover .widget-title__logo {
  display: none;
  width: 10%;
  max-height: 30px;
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management):hover .widget-title__logo-hovered {
  display: inherit;
  width: 10%;
  max-height: 30px;
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management):hover .widget-caption__title {
  display: block;
  border-radius: 0 0 10px 10px;
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management) .edit-widget {
  position: absolute;
  top: 0;
  right: 0;
}

.widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management) .edit-widget:hover {
  color: #FF800A !important;
}

article.widget[data-specific-widget-identifier="commercial"] {
  cursor: default;
}

/** specific to news widget **/
article[data-specific-widget-identifier~="news"] {
  height: auto !important;
}

article[data-specific-widget-identifier~="news"] .widget-caption {
  padding: 1rem;
}

/** specific to commercial widget **/
article[data-specific-widget-identifier~="commercial"] > .widget-caption {
  /*height:200px;*/
}

.widget-caption {
  position: relative;
  width: 100%;
  height: calc(100% - 60px);
}

.widget-caption .img-object-fit {
  object-fit: cover;
}

.widget-caption .news-line {
  padding: 0 10px;
  font-family: "Lato", sans-serif;
  font-size: 14px;
}

.widget-caption .news-line .news-line-content {
  display: grid;
  grid-template-columns: auto 30px;
  border-bottom: 1px solid #ccc;
  padding: 5px 0;
}

.widget-caption .news-line .news-line-content .news-line-left {
  overflow: hidden;
}

.widget-caption .news-line.last .news-line-content {
  border-bottom: none;
}

.widget-caption .news-line a, .widget-caption .news-line a:hover, .widget-caption .news-line a:visited {
  color: #272727;
  text-decoration: none;
}

.widget-caption .news-line .news-line-supplier-name, .widget-caption .news-line .news-line-title, .widget-caption .news-line .news-line-date {
  display: block;
}

.widget-caption .news-line .news-line-supplier-name {
  color: #DD3A98;
}

.widget-caption .news-line .news-line-title {
  color: #272727;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.widget-caption .news-line .news-line-date {
  color: #767676;
  font-size: 14px;
}

.widget-caption .news-line .news-line-right {
  color: #DD3A98;
  line-height: 72px;
  transition: 0.3s;
}

.widget-caption .news-line:hover .news-line-right {
  text-align: center !important;
  color: #FF800A;
}

.widget-caption .news-line:hover .news-line-supplier-name {
  color: #FF800A;
}

.widget-caption .all-news-link {
  padding-right: 10px;
}

.widget-caption .all-news-link a {
  color: #DD3A98;
  text-decoration: none;
}

.widget-caption .all-news-link a:hover, .widget-caption .all-news-link a:visited {
  color: #FF800A;
  text-decoration: none;
}

.widget-caption__title {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 1rem;
  background-color: rgba(255, 128, 10, 0.85);
  color: white;
}

.widget-caption__commercial-block {
  padding: 10px 10px 10px 90px;
  font-size: 14px;
  color: #272727;
}

.widget-caption_splitter {
  margin: 0 10px 0 90px;
  background-color: #dad9dc;
}

/*------------------------------------*\
  #Bootstrap File Input
\*------------------------------------*/
.kv-avatar {
  display: inline-block;
}

.kv-avatar .file-preview img {
  width: 100%;
}

.kv-avatar .file-input {
  display: table-cell;
  /*width: 213px;*/
}

.kv-avatar.krajee-default.file-preview-frame, .kv-avatar .kv-avatar .krajee-default.file-preview-frame:hover {
  margin: 0;
  padding: 0;
  border: none;
  box-shadow: none;
  text-align: center;
}

.kv-avatar .file-preview img {
  width: 100%;
}

.krajee-default.file-preview-frame .kv-file-content {
  width: 100% !important;
  height: auto !important;
}

.kv-reqd {
  color: red;
  font-family: monospace;
  font-weight: normal;
}

.targets {
  max-height: 300px;
  overflow-y: auto;
}

@media (min-width: 768px) {
  .widget-title__title {
    font-size: 15px !important;
  }
  .commercial-management .widget-title__title {
    font-size: 25px !important;
  }
  .widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management) .widget-title .widget-title__title {
    font-size: 15px;
  }
  .widget-title__title .news-line {
    font-size: 15px !important;
  }
  .widget-caption__commercial-block {
    font-size: 15px !important;
  }
}

@media (min-width: 992px) {
  /*------------------------------------*\
      #GRID-WIDGET
    \*------------------------------------*/
  .grid-widget .first-column, .grid-widget .second-column, .grid-widget .third-column {
    margin-left: 2%;
    margin-right: 2%;
  }
  .widget img {
    height: 200px;
    width: auto;
  }
}

@media (min-width: 1200px) {
  .widget-title__title {
    font-size: 16px !important;
  }
  .commercial-management .widget-title__title {
    font-size: 25px !important;
  }
  .widget:not(.grouped-widget):not(.personal-space-widget):not(.commercial-management) .widget-title .widget-title__title {
    font-size: 16px;
  }
  .widget-title__title .news-line {
    font-size: 16px !important;
  }
  .widget-caption__commercial-block {
    font-size: 16px !important;
  }
}

.modal-xl {
  max-width: 1170px;
}

.orderstatus {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}

.openingstatus {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}

.orderstatus-acknowledged {
  color: #fff;
  background-color: #28a745;
}

.orderstatus-acknowledged_with_comment {
  color: #fff;
  background-color: #28a745;
}

.orderstatus-not_acknowledged {
  color: #fff;
  background-color: #dc3545;
}

.orderstatus-retry {
  color: #dc3545;
  background-color: #fff;
  border-color: #dc3545;
}

.orderstatus-pending_validation {
  color: #fff;
  background-color: #007bff;
}

.orderstatus-pending_account_creation {
  color: #111;
  background-color: #ffc107;
}

.orderstatus-delayed {
  color: #fff;
  background-color: #8218a5;
}

.orderstatus-cancelled {
  color: #fff;
  background-color: #343a40;
}

.orderstatus-processing {
  color: #fff;
  background-color: #868e96;
}

.orderstatus-transformed {
  color: #111;
  background-color: #868e96;
}

.orderstatus-error {
  color: #343a40;
  background-color: #fff;
  border-color: #343a40;
}

.orderstatus-refused {
  color: #007bff;
  background-color: #fff;
  border-color: #007bff;
}

.orderstatus-account_created {
  color: #fff;
  background-color: #17a2b8;
}

.orderstatus-account_refused {
  color: #fff;
  background-color: #dc3545;
}

.orderstatus-unfinished {
  color: #111;
  background-color: #f8f9fa;
}

.orderstatus-interfax_error {
  color: #16bca3;
  background-color: #fff;
  border-color: #16bca3;
}

.orderstatus-pending_interfax {
  color: #fff;
  background-color: #16bca3;
}

.infotext {
  color: #17a2b8;
}

.green-check {
  color: green;
}

.red-delete {
  color: red;
}

.ami2centered {
  position: relative;
  top: 50%;
  left: 30%;
  transform: translate(-50%, -50%);
}

.ami2horizontal {
  transform: translateX(25%);
}

.noresize {
  resize: none;
}

div.dataTables_processing {
  z-index: 1;
}

#prestashop_orders_table.table thead tr, #prestashop_loyalty_orders_table.table thead tr {
  background-color: #DD3A98;
  color: white;
}

#prestashop_orders_table.table tbody tr:hover, #prestashop_loyalty_orders_table.table tbody tr:hover {
  cursor: pointer;
}

#prestashop_incoming_table thead tr {
  background-color: #DD3A98;
  color: white;
}

#prestashop_incoming_table tbody tr:hover {
  cursor: pointer;
}

#prestashop_carts_to_be_validated_table.table thead tr {
  background-color: #DD3A98;
  color: white;
}

#prestashop_carts_to_be_validated_table.table tbody tr:hover {
  cursor: pointer;
}

#prestashop_carts_table.table thead tr {
  background-color: #DD3A98;
  color: white;
}

#prestashop_carts_table.table tbody tr:hover {
  cursor: pointer;
}

#quotations_table.table thead tr {
  background-color: #DD3A98;
  color: white;
}

#quotations_table.table tbody tr:hover {
  cursor: pointer;
}

#openings_table.table thead tr {
  background-color: #DD3A98;
  color: white;
}

#openings_table.table tbody tr:hover {
  cursor: pointer;
}

#openings_table_back.table thead tr {
  background-color: #DD3A98;
  color: white;
}

#openings_table_back.table tbody tr:hover {
  cursor: pointer;
}

#prestashop_orders_table_back.table thead tr, #prestashop_loyalty_orders_table_back.table thead tr {
  background-color: #DD3A98;
  color: white;
}

#prestashop_orders_table_back.table tbody tr:hover, #prestashop_loyalty_orders_table_back.table tbody tr:hover {
  cursor: pointer;
}

#quotations_table_back.table thead tr {
  background-color: #DD3A98;
  color: white;
  width: 100%;
}

#quotations_table_back.table tbody tr:hover {
  cursor: pointer;
}

.back-orders .nav-link {
  background-color: lightgray;
  color: #ffffff;
  padding: 10px;
  margin: 5px;
}

.back-orders .nav-link.active {
  background-color: #DD3A98;
  color: #ffffff;
}

.back-orders .nav-link.active:hover {
  background-color: #9b2763;
  color: #ffffff;
}

.front-orders {
  /*
    a:hover {
      color: #ffffff;
      font-size: 12px;
    }
    */
  /*
    .nav-pills .nav-link.active, .nav-pills .show>.nav-link {
      //background-color: transparent;
      background-color: transparent;
      //color: #d1488f;
      font-weight: bold;
    }
  */
}

.front-orders .nav-link {
  background-color: #FF800A;
  color: #ffffff;
  padding: 10px;
  margin: 5px;
}

.front-orders .nav-link:hover {
  background-color: #E16211;
  color: #ffffff;
}

.front-orders .nav-link.active {
  background-color: #DD3A98;
  color: #ffffff;
}

.front-orders .nav-link.active:hover {
  background-color: #9b2763;
  color: #ffffff;
}

.order-detail.card-title {
  color: #FF800A;
}

.order-detail.card-subtitle {
  font-weight: bold;
}

.text-bleu-vert {
  color: #65c1c2;
}

.modal-content {
  background-color: #eaeaea;
}

.filters-collapse {
  background-color: #9e9c9f;
}

#account_opening_info_form_deliveryDays .form-check label.btn.btn-outline-primary.active {
  background-color: #c4317d;
  color: white;
  border-style: none;
  border-color: lightgrey;
}

#account_opening_info_form_deliveryDays .form-check label.btn.btn-outline-primary {
  background-color: lightgrey;
  color: black;
  border-style: none;
}

#form_deliveryDays .form-check label.btn.btn-outline-primary.active {
  background-color: #c4317d;
  color: white;
  border-style: none;
  border-color: lightgrey;
}

#form_deliveryDays .form-check label.btn.btn-outline-primary {
  background-color: lightgrey;
  color: black;
  border-style: none;
}

@media (max-width: 1399.98px) {
  .addresses-form.card-columns {
    column-count: 1;
  }
}

@media (min-width: 1200px) {
  .addresses-form.card-columns {
    column-count: 2;
  }
}

@media (max-width: 1399.98px) {
  .addresses-form .btn-group-toggle .long {
    display: none;
  }
}

@media (min-width: 1200px) {
  .addresses-form .btn-group-toggle .long {
    display: inline;
  }
}

@media (max-width: 1399.98px) {
  .addresses-form .btn-group-toggle .short {
    display: inline;
  }
}

@media (min-width: 1200px) {
  .addresses-form .btn-group-toggle .short {
    display: none;
  }
}

.addresses-menu a {
  text-decoration: none;
  color: #ffffff;
}

.addresses-menu .nav-pills, .addresses-menu .nav-pills .show > .nav-link {
  color: #ffffff;
  font-weight: bold;
}

.addresses-menu .nav-link {
  background-color: #FF800A;
  color: #ffffff;
  border-radius: 4px !important;
}

.addresses-menu .nav-link:hover {
  background-color: #E16211;
  color: #ffffff;
}

.addresses-menu .nav-link.active {
  background-color: #DD3A98;
  color: #ffffff;
}

.addresses-menu .nav-link.active:hover {
  background-color: #9b2763;
  color: #ffffff;
}

#addDistributorFormSubmit-1 {
  background-color: #f79221;
}

#addDistributorFormSubmit-2 {
  background-color: #f79221;
}

div.btn-group-toggle.delivery-days-input label.btn.btn-outline-primary.active {
  background-color: #c4317d;
  color: white;
  border-style: none;
  border-color: lightgrey;
}

div.btn-group-toggle.delivery-days-input label.btn.btn-outline-primary {
  background-color: lightgrey;
  color: black;
  border-style: none;
}

label.btn.btn-outline-primary.btn-sm:hover, .btn-group-sm > label.btn.btn-outline-primary:hover {
  background-color: transparent;
}

label.btn.btn-outline-primary.btn-type.active {
  background-color: #c4317d;
  color: white;
  border-color: lightgrey;
}

/*
label.btn.btn-outline-primary.btn-type.btn-sm:hover{
  background-color: #c4317d;
  color: white;
}
*/
label.btn.btn-outline-primary.btn-type.btn-sm, .btn-group-sm > label.btn.btn-outline-primary.btn-type {
  border-color: lightgrey;
}

input.btn.btn-primary {
  background-color: #f79221;
}

div.card-header {
  background-color: #F2F2F2;
  border-style: none;
}

div.card-header .btn-link {
  color: #dd3a98;
}

div.card-header .btn-link:hover {
  color: #dd3a98;
}

div.card-body {
  background-color: white;
  border-style: none;
}

div.card-footer.text-black {
  background-color: white;
  border-style: none;
}

h5.mb-0 {
  text-align: center;
}

#distributor {
  font-size: small;
  border-style: none;
}

/*#nav-distributor{
  font-size: 100%;
}

#nav-customer{
  font-size: 100%;
}*/
#customer {
  font-size: small;
  border-style: none;
}

ol.breadcrumb {
  background-color: transparent;
  font-size: small;
}

ol.breadcrumb a {
  color: #9e9c9f;
}

ol.breadcrumb #active {
  color: #4285F4;
}

option.selected {
  background: #DD3A98;
  color: white;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.test-max-height {
  max-height: 125px;
  max-width: 205px;
  width: auto;
}

.left-supplier-menu {
  padding-right: 20px;
}

.vertical-line {
  border-right: solid 1px lightgrey;
}

.supplier-name-bold {
  font-weight: bold;
  font-size: 125%;
}

.suppliers-pink {
  font-size: 120%;
  color: #DD3A98;
}

.btn-orange {
  background-color: #ef8837;
  color: #fff;
}

.btn-orange-bold-fixed-width {
  background-color: #ef8837;
  color: #fff;
  width: 200px;
  font-weight: bold;
}

.btn-full {
  width: 100% !important;
}

.suppliers-input-label {
  font-size: 1rem;
  color: black;
}

.btn-pink {
  color: #fff;
  background-color: #DD3A98;
}

.btn-pink-bold {
  color: #fff;
  background-color: #DD3A98;
  width: 200px;
  font-weight: bold;
}

.suppliers .list-group-item.list-group-item-action.py-2.mt-0.show.active {
  color: #fff;
  background-color: #DD3A98;
  margin-bottom: 5%;
}

.suppliers .list-group-item.list-group-item-action.py-2.mt-0 {
  background-color: #ff8533;
  color: #fff;
  margin-bottom: 5%;
}

.btn-covered {
  color: #fff;
  background-color: #5599AA;
}

.badge-covered {
  color: #fff;
  background-color: #5599AA;
}

.badge-uncovered {
  color: #fff;
  background-color: #999999;
}

.suppliers-pink--non-aligned {
  font-size: 1.5rem;
  color: #DD3A98;
}

.checkbox-hidden {
  position: fixed;
  opacity: 0;
}

.image-upload > input {
  display: none;
}

a.editlink {
  color: inherit;
}

.dropdown-container {
  display: none;
  background-color: inherit;
  color: inherit;
  padding-left: 8px;
}

.vcenter {
  display: inline-block;
  vertical-align: middle;
  float: none;
}

a.nav-link {
  font-size: 90%;
}

nav.ol.breadcrumb {
  background-color: transparent;
  font-size: small;
}

nav.ol.breadcrumb a {
  color: #9e9c9f;
}

nav.ol.breadcrumb #active {
  color: #4285F4;
}

.pink {
  color: #c4317d;
  font-size: medium;
}

.tcenter {
  text-align: center;
}

.suppliers-list {
  border-top: solid 1px #706f73;
}

.suppliers {
  font-size: 140%;
}

.none {
  border: none;
}

.shipping {
  text-align: right;
  font-size: small;
}

.btn-search {
  background-color: #cccccc;
}

.search {
  margin-bottom: 5%;
}

.dropdown-show {
  display: block;
}

.dropdown-hide {
  display: none;
}

.dropdown-selected {
  background-color: #D6589A;
  color: white;
}

.deleteSupplierFile:hover {
  cursor: pointer;
}

/*------------------------------------*\
  #PAGE-FOOT
\*------------------------------------*/
/*
html{
  height: 100%;
}

body{
  padding-bottom: $footer-height + 20px + 15px;
  position: relative;
  min-height: 100%;
}

.padding-top-15{
  padding-top: 15px;
}

.page-foot {
  height: $footer-height;
  background-color: $footer-bg;
  font-size: $footer-font-size;
  color: $footer-color;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;

  & a, a:visited{
    color: $footer-color;

    &:hover {
      text-decoration: underline;
      color: $footer-color;
    }
  }
  & address{
    margin-bottom: 0;
  }
}

.page-foot__logo {
  display: block;
  position: absolute;
  top: 0;
  left: calc(50% - 122px);
  z-index: 5;

  width: 245px;
  height: 122px;

  background: url("..//..//static//logo-ami2-header_245x122.png") no-repeat;
  background-size: cover;
}*/
html {
  height: 100%;
}

body {
  padding-bottom: 385px;
  position: relative;
  min-height: 100%;
}

@media (min-width: 576px) {
  body {
    padding-bottom: 410px;
  }
}

@media (min-width: 1200px) {
  body {
    padding-bottom: 235px;
  }
}

.page-foot {
  height: 350px;
  background-color: #272727;
  font-size: 13px;
  color: #FFF;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  font-family: 'Lato', sans-serif;
}

.page-foot a {
  color: #fff;
  text-decoration: none;
}

.page-foot a:hover, .page-foot a:focus, .page-foot a:active {
  color: #fff;
  text-decoration: none;
}

.footer-company-informations__detail__social-network span {
  font-size: 23px;
}

@media (min-width: 992px) {
  .footer-company-informations__detail__social-network span {
    font-size: 30px;
  }
}

@media (min-width: 576px) {
  .page-foot {
    font-size: 13px;
    height: 375px;
  }
}

@media (min-width: 768px) {
  .page-foot {
    font-size: 15px;
    height: 300px;
  }
}

@media (min-width: 1200px) {
  .page-foot {
    font-size: 16px;
    height: 200px;
  }
}

.footer-menus ul li {
  list-style: none;
  font-family: "Lato Light", Sans-serif;
}

.footer-menus .menu-header {
  font-family: "Lato Bold", Sans-serif;
}

@media (min-width: 768px) {
  .footer-menus {
    width: 60%;
  }
}

@media (min-width: 1400px) {
  .footer-menus {
    width: 50%;
  }
}

/********
* General
********/
.signup-html {
  height: 100%;
}

.signup-body {
  height: 100%;
  padding: 0;
  font-family: "Open Sans light",sans-serif;
  color: #7c7c7c;
  font-size: 15px;
  font-weight: normal;
  background-color: #c22d79 !important;
}

@media (max-width: 767.98px) {
  .signup-body {
    font-size: 13px;
  }
}

.wrapper-full-page {
  height: 100%;
}

.top-img {
  /* left: calc(50% - 61.25px); */
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  top: 0;
  z-index: 100;
}

@media (max-width: 767.98px) {
  .top-img {
    left: calc(50% - 20px);
  }
}

.top-img img {
  height: 100px;
}

@media (max-width: 767.98px) {
  .top-img img {
    height: 40px;
  }
}

.form-group > label.required:after {
  content: " *";
}

.form-text-error {
  color: red;
}

.card-perso {
  background-color: #ffffff;
}

/*******
Charte + Form
*******/
.container-signup {
  padding: 50px;
  height: 100%;
}

@media (max-width: 767.98px) {
  .container-signup {
    padding: 15px;
  }
}

#signup form {
  height: 100%;
}

#signup .card {
  border-radius: 3px;
}

#signup .card-header {
  background-color: rgba(0, 0, 0, 0.03);
  height: 80px;
  display: flex;
  align-items: center;
  padding: 0;
}

@media (max-width: 767.98px) {
  #signup .card-header {
    justify-content: center;
    flex-direction: column;
  }
}

#signup .card-header ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

#signup .card-header ul li {
  float: left;
  text-align: center;
  font-size: 12px;
}

#signup .card-title {
  font-size: 40px;
  margin: 0;
  font-weight: 200;
  padding-left: 15px;
}

@media (max-width: 767.98px) {
  #signup .card-title {
    padding-left: 0px;
  }
}

#signup .card-title h1 {
  margin-bottom: 0rem;
}

@media (max-width: 767.98px) {
  #signup .card-title h1 {
    font-size: 1.4rem;
  }
}

#signup .card-suivi {
  display: flex;
  align-items: center;
  padding: 15px;
}

@media (max-width: 767.98px) {
  #signup .card-suivi {
    width: 100%;
    margin-top: 25px;
    margin-bottom: 15px;
    justify-content: center;
    padding: 0px;
  }
}

#signup .card-body {
  padding: 25px 50px 25px 50px;
  height: calc(100% - 160px);
  overflow-y: auto;
}

@media (max-width: 767.98px) {
  #signup .card-body {
    overflow-y: scroll;
    padding: 15px;
  }
}

#signup .card-footer {
  background-color: rgba(0, 0, 0, 0.03);
  height: 80px;
  display: flex;
  align-items: center;
  padding: 0;
}

@media (max-width: 767.98px) {
  #signup .card-footer {
    justify-content: center !important;
    flex-direction: column;
    align-items: center;
  }
}

@media (max-width: 767.98px) {
  #signup .card-footer span {
    padding: 0 !important;
    font-size: 10px;
  }
}

#signup .card-footer .btn {
  background-color: #ef8837;
  color: #fff;
  width: 200px;
  font-weight: bold;
}

@media (max-width: 767.98px) {
  #signup .footer-subscriber-contact .btn {
    width: auto;
  }
}

#signup .card-footer .btn:hover {
  background-color: #d1488f;
}

#signup .checkbox label {
  display: flex;
}

.header-with-suivi .card-header {
  height: 100px !important;
}

@media (max-width: 767.98px) {
  .header-with-suivi .card-header {
    height: 170px !important;
  }
}

.header-with-suivi .card-body {
  height: calc(100% - 180px) !important;
}

@media (max-width: 767.98px) {
  .header-with-suivi .card-body {
    height: calc(100% - 250px) !important;
  }
}

@media (max-width: 767.98px) {
  .header-subscriber .card-title {
    margin-top: 25px !important;
  }
}

@media (max-width: 767.98px) {
  .footer-contact-text {
    font-size: 10px;
  }
}

.footer-actions {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

@media (max-width: 767.98px) {
  .footer-actions {
    align-items: center;
    justify-content: center;
  }
}

.footer-actions-subscriber {
  display: flex;
  justify-content: center;
}

@media (max-width: 767.98px) {
  .footer-actions-subscriber {
    flex-direction: column;
    align-items: center;
  }
}

.footer-actions-subscriber span {
  margin-bottom: 0px !important;
  align-self: center;
}

@media (max-width: 767.98px) {
  .footer-actions-subscriber span {
    margin-bottom: 0.5rem !important;
  }
}

/*********
Form SignUp Customer
**********/
.form-signup label {
  color: #d1488f;
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 0.3rem;
}

.form-signup .form-group {
  margin-bottom: 0.3rem;
}

#sign_up_acceptComEmail, #sign_up_receiptCatalog, #sign_up_status, #sign_up_contact_receiptNewsletter, #sign_up_contact_gender {
  display: flex;
}

#sign_up_acceptComEmail .form-check, #sign_up_receiptCatalog .form-check, #sign_up_status .form-check, #sign_up_contact_receiptNewsletter .form-check, #sign_up_contact_gender .form-check {
  padding-right: 15px;
}

/**********
  Card Suivi
  **********/
.bs-wizard {
  border-bottom: solid 1px #e0e0e0;
  width: 400px;
}

@media (max-width: 767.98px) {
  .bs-wizard {
    width: 100%;
    flex-wrap: initial;
  }
}

.bs-wizard > .bs-wizard-step {
  padding: 0;
  position: relative;
}

.bs-wizard > .bs-wizard-step .bs-wizard-stepnum {
  font-size: 12px;
  margin-bottom: 5px;
}

.bs-wizard > .bs-wizard-step.active .bs-wizard-stepnum {
  color: #d1488f;
}

.bs-wizard > .bs-wizard-step.complete .bs-wizard-stepnum {
  color: #d1488f;
}

.bs-wizard > .bs-wizard-step .bs-wizard-info {
  color: #999;
  font-size: 14px;
}

.bs-wizard > .bs-wizard-step > .bs-wizard-dot {
  position: absolute;
  width: 16px;
  height: 16px;
  display: block;
  background: #d1488f;
  top: 65px;
  left: 55%;
  margin-top: -15px;
  margin-left: -15px;
  border-radius: 50%;
}

.bs-wizard > .bs-wizard-step > .bs-wizard-dot:after {
  content: ' ';
  width: 8px;
  height: 8px;
  background: #fff;
  border-radius: 50px;
  position: absolute;
  top: 4px;
  left: 4px;
}

.bs-wizard > .bs-wizard-step.complete > .bs-wizard-dot:after {
  background: #d1488f;
}

.bs-wizard > .bs-wizard-step > .progress {
  position: relative;
  border-radius: 0px;
  height: 4px;
  box-shadow: none;
  margin: 20px 0;
}

.bs-wizard > .bs-wizard-step > .progress > .progress-bar {
  width: 0px;
  box-shadow: none;
  background: #d1488f;
}

.bs-wizard > .bs-wizard-step.complete > .progress > .progress-bar {
  width: 100%;
}

.bs-wizard > .bs-wizard-step.active > .progress > .progress-bar {
  width: 50%;
}

.bs-wizard > .bs-wizard-step:first-child.active > .progress > .progress-bar {
  width: 0%;
}

.bs-wizard > .bs-wizard-step:last-child.active > .progress > .progress-bar {
  width: 100%;
}

.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot {
  background-color: #d1488f;
}

.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot:after {
  opacity: 0;
}

.bs-wizard > .bs-wizard-step:first-child > .progress {
  left: 50%;
  width: 50%;
}

.bs-wizard > .bs-wizard-step:last-child > .progress {
  width: 50%;
}

.bs-wizard > .bs-wizard-step.disabled a.bs-wizard-dot {
  pointer-events: none;
}

/* Sponsorship */
.sponsorship-form {
  max-width: 300px;
  margin: 0 auto;
  margin-top: 4rem;
  padding: 2rem;
  border: solid 1px #c22d79;
  border-radius: 5px;
  background: #c22d7908;
  /* color: #333; */
}

.sponsorship-box {
  position: fixed;
  top: 6rem;
  left: 50%;
  transform: translateX(-50%);
  padding: .5rem 1rem;
  background: rgba(194, 45, 121, 0.1);
  color: #c22d79;
  font-weight: bold;
}

/**************************************************
* General
**************************************************/
.flashMessage {
  width: auto;
  z-index: 10000;
  position: absolute;
  top: 15px;
  right: 15px;
}

.bodyCustomer {
  background-color: #f7f7f7;
}

.breadcrumb {
  /*background-color: #f7f7f7 !important;
  font-size: 12px;
  padding-left: 0;
  padding-right: 0;*/
}

.breadcrumb .separator {
  padding: 0px 5px;
}

.breadcrumb a {
  color: #000;
}

.btn-customer {
  border-radius: 0px;
}

.btn-customer-color-ami2 {
  background-color: #ef8837;
  color: #fff;
}

.btn-customer-color-ami2:hover {
  background-color: #d1488f;
  color: #fff;
}

.btn-customer-color-ami2-inverse {
  background-color: #d1488f;
  color: #ffffff;
}

#overlay {
  position: fixed;
  z-index: 999;
  height: 2em;
  width: 2em;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: none;
}

/* Transparent Overlay */
#overlay:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

#overlay .fa-spinner {
  color: #d1488f;
}

/**************************************************
* Filtres
**************************************************/
.customer-filters {
  padding: 15px;
  background-color: #ffffff;
}

.customer-filters label {
  font-size: 12px;
  padding-right: 10px;
}

.customer-filters .form-group {
  flex-flow: row;
  justify-content: space-between;
  margin-bottom: 10px;
}

.customer-filters input[type='text'] {
  height: 32px;
  width: 244px !important;
}

.customer-filters select {
  height: 32px;
  width: 244px !important;
}

.filter-checkbox .form-group {
  margin-bottom: 0px;
}

/**************************************************
* Sections
**************************************************/
.customer-section-title span {
  font-weight: bold;
  font-size: 13px;
}

.datatable-customer tbody {
  background-color: #ffffff;
}

.datatable-customer thead {
  font-size: 12px;
  background-color: #565656;
  color: #ffffff;
  line-height: 25px;
}

/**************************************************
* Customer Fiche
**************************************************/
.customer-fiche {
  background-color: #ffffff;
  border: 1px solid #cccccc;
}

.customer-fiche-header {
  padding: 15px;
  border-bottom: 1px solid #cccccc;
  padding-top: 0px;
}

.customer-fiche-menu {
  /*
  a:hover {
    color: #ffffff;
    font-size: 12px;
  }
  */
  /*
  .nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    //background-color: transparent;
    background-color: transparent;
    //color: #d1488f;
    font-weight: bold;
  }
*/
}

.customer-fiche-menu a {
  text-decoration: none;
  color: #ffffff;
}

.customer-fiche-menu .nav-link {
  background-color: #FF800A;
  color: #ffffff;
  border-radius: 4px !important;
}

.customer-fiche-menu .nav-link:hover {
  background-color: #E16211;
  color: #ffffff;
}

.customer-fiche-menu .nav-link.active {
  background-color: #DD3A98;
  color: #ffffff;
}

.customer-fiche-menu .nav-link.active:hover {
  background-color: #9b2763;
  color: #ffffff;
}

.customer-fiche-menu ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.customer-fiche-action {
  background-color: #ffffff;
  padding: 15px;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}

.customer-fiche-errors {
  background-color: #ffffff;
  font-size: 12px;
  color: red;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
}

.customer-back-fiche-action {
  background-color: #ffffff;
  padding: 15px;
  border-top: 1px solid #cccccc;
}

.customer-back-fiche-errors {
  background-color: #ffffff;
  font-size: 12px;
  color: red;
}

.customer-fiche-menu ul > li {
  line-height: 40px;
  font-size: 12px;
}

.customer-fiche-infos {
  width: 100%;
  background-color: #ffffff;
  padding: 15px;
}

.customer-fiche-infos label {
  font-size: 11px;
  padding-right: 10px;
}

.customer-fiche-infos input[type='text'], .customer-fiche-infos input[type='number'], .customer-fiche-infos input[type='email'] {
  height: 32px;
}

.customer-fiche-infos select {
  height: 32px;
}

.customer-fiche-infos .form-check {
  padding-left: 0rem;
}

.customer-fiche-infos .form-group {
  margin-bottom: 0.4rem;
}

.customer-fiche-title {
  color: #d1488f;
  font-weight: bold;
}

.customer-fiche-infos form {
  width: 100%;
}

.customer-fiche-file {
  height: 120px;
  border: 1px solid #cccccc;
  text-align: center;
}

.customer-file-image {
  max-height: 118px;
  width: auto;
}

.customer-fiche-file-name-remove {
  text-decoration: line-through;
}

.vich-image {
  display: none;
}

.customer-fiche-docs-title {
  font-size: 13px;
  font-weight: bold;
  color: #d1488f;
}

#customer-fiche-docs {
  padding: 15px;
  border: 1px solid #cccccc;
}

#customer-fiche-docs-list {
  max-height: 200px;
  overflow-y: auto;
  overflow-x: hidden;
}

.customer-fiche-doc-actions {
  text-align: center;
}

#btn-customer-fiche-action-file {
  margin: 0px;
  padding-right: 8px;
  font-size: .875rem;
}

#btn-customer-fiche-action-file:hover {
  background-color: #C02979;
}

.hidden {
  display: none;
}

.customer-fiche-infos .odd {
  background-color: #FEEFF7;
}

.customer-fiche-user {
  padding-top: 15px;
  padding-bottom: 15px;
}

.customer-list-status {
  padding: 5px;
  color: #ffffff;
  background-color: #5a6268;
  font-size: 12px;
}

.customer-list-status-tovalid {
  background-color: #007bff;
}

.customer-list-status-valid {
  background-color: #28a745;
}

.customer-list-status-refuse {
  background-color: #dc3545;
}

.customer-list-status-dmdDelete {
  background-color: #ffc107;
}

.form-vars-label {
  font-size: 11px;
}

#customer-fiche-protect {
  padding: 15px;
  border: 1px solid #cccccc;
}

#customer-fiche-protect .title {
  font-size: 14px;
  color: #4a4a4a;
}

#customer-fiche-protect .link1 {
  color: #0069d9;
  font-size: 11px;
}

#customer-fiche-protect .link2 {
  color: #dc3545;
  font-size: 11px;
}

/**************************************************
* General
**************************************************/
/**************************************************
* Contact List
**************************************************/
.contact-disable {
  background-color: #FAD6E9 !important;
}

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

.contact-list-row {
  margin-bottom: 15px !important;
}

.contact-block {
  background-color: #FBFBFB;
  padding: 15px;
  box-shadow: 0px 0px 8px #ccc;
  transition: box-shadow 0.2s;
  cursor: pointer;
  color: #6c757d !important;
}

.contact-block-noneditable {
  background-color: #FBFBFB;
  padding: 15px;
  box-shadow: 0px 0px 8px #ccc;
  transition: box-shadow 0.2s;
  color: #6c757d !important;
}

.contact-block-name {
  color: #c4317d !important;
  font-size: 1rem;
}

.color-block-fa {
  color: #65c1c2 !important;
}

.contact-pagination .active {
  background-color: #65c1c2 !important;
  color: #FFFFFF !important;
}

.contact-pagination .page-link {
  color: #65c1c2 !important;
}

.contact-pagination .page-item.active .page-link {
  background-color: #65c1c2 !important;
  border-color: #65c1c2 !important;
  color: #FFFFFF !important;
}

.card-edit-contact {
  padding-left: 30px;
}

/**************************************************
* Departements
**************************************************/
.enableDelegueAmi2 {
  display: none;
}

#departments fieldset {
  width: 100% !important;
}

#company_contact_departments {
  display: flex;
  flex-flow: wrap;
}

#company_contact_departments .btn-group-toggle {
  cursor: pointer;
}

.nav-tabs > li.active a, .nav-tabs > li.active a:hover, .nav-tabs > li.active a:focus {
  border-width: 1px !important;
  font-weight: bold;
}

.checkbox.no-button input[type="checkbox"], .checkbox-inline.no-button input[type="checkbox"], .radio.no-button input[type="radio"], .radio-inline.no-button input[type="radio"] {
  margin-left: 0px;
  position: inherit;
}

label.no-button {
  width: 50%;
}

.checkbox.no-button, .radio.no-button {
  display: inline-block;
}

.bg-warning-forced {
  background-color: #fcf8e3 !important;
}

.bg-success-forced {
  background-color: #DFF0D8 !important;
}

.bg-danger-forced {
  background-color: #f2dede !important;
}

.bg-info-forced {
  background-color: #d9edf7 !important;
}

#buffer-distributor-table {
  padding: 10px;
}

.modal-header {
  background-color: #c22d79;
  color: white;
  font-weight: bold;
}

.modal-header .close {
  color: white;
  filter: alpha(opacity=70);
  opacity: .7;
}

.table .buffer-fields td {
  vertical-align: middle !important;
}

table .buffer-table-header .bg-info {
  background-color: #d9edf7 !important;
  width: 25%;
}

table .buffer-table-header .bg-success {
  background-color: #dff0d8 !important;
  width: 25%;
}

table .buffer-table-header .bg-danger {
  background-color: #f2dede !important;
  width: 25%;
}

.tcenter {
  text-align: center;
}

.Ami2BaseVerticalMenu {
  padding: .5em;
  background-color: #ffffff;
  box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.161);
  border-radius: 10px;
}

.Ami2BaseVerticalMenu .menu--item__link img {
  max-height: 22px;
  width: 25px;
}

.Ami2BaseVerticalMenu .menu--item__link.active {
  text-align: left;
  color: white;
}

.Ami2BaseVerticalMenu .menu--item__link:not(.active) {
  color: #272727;
  background-color: #ffffff;
  text-align: left;
}

.Ami2BaseVerticalMenu .menu--item__link:not(.active):hover {
  color: white;
  background-color: #ffa945;
}

#distributorsIndexSubMenu {
  border-radius: 10px;
  background-color: #F2F2F2;
  margin-top: 1em;
  padding: 1em;
  overflow-y: auto;
  max-height: 300px;
}

#distributorsIndexSubMenu a, #distributorsIndexSubMenu a:visited, #distributorsIndexSubMenu a:focus {
  color: #272727;
  text-decoration: none;
}

#distributorsIndexSubMenu a:hover {
  color: #ffa945;
  font-weight: bold;
  text-decoration: none;
}

#distributorsIndexSubMenu ul {
  list-style: none;
  padding-left: 0;
}

#distributorsIndexSubMenu .submenuDistributor li {
  padding-left: 1em;
}

.Ami2BaseHorizontalMenu {
  display: flex;
  justify-content: center;
  flex-direction: column;
  position: relative;
  width: 100%;
}

.Ami2BaseHorizontalMenu .Ami2Swiper-pagination {
  bottom: 3rem;
  left: 48%;
  position: absolute;
}

.Ami2BaseHorizontalMenu .Ami2Swiper-pagination .swiper-pagination-bullet-active {
  opacity: 1;
  background: #ff800a;
}

.Ami2BaseHorizontalMenu .Ami2Swiper-pagination > .swiper-pagination-bullet {
  margin: 0 4px;
}

.Ami2BaseHorizontalMenu .Ami2Swiper {
  width: 100%;
  padding-top: 10px;
}

.Ami2BaseHorizontalMenu .Ami2Swiper .swiper-slide {
  justify-content: center;
  display: flex;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper {
  box-shadow: 1px 1px 20px rgba(0, 0, 0, 0.16);
  border-radius: 10px;
  padding: 2em;
  margin-top: 0;
  margin-bottom: 3em;
  display: flex;
  justify-content: space-around;
  width: 100%;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .swiper-button-next, .Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .swiper-container-rtl .swiper-button-prev {
  right: 0;
  left: auto;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .swiper-button-prev, .Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .swiper-container-rtl .swiper-button-next {
  left: 0;
  right: auto;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .swiper-button-prev, .Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .swiper-button-next {
  color: #ff800a;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .swiper-button-prev::after, .Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .swiper-button-next::after {
  font-size: 28px;
  font-weight: bolder;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem {
  max-width: 150px;
  margin: 0 1em;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content {
  display: flex;
  justify-content: center;
  text-align: center;
  cursor: pointer;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content a {
  color: inherit;
  justify-content: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content a:hover, .Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content a:visited, .Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content a:focus {
  text-decoration: none;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content .Ami2BaseMenuItem__iconbox {
  width: 40px;
  height: 40px;
  box-shadow: 1px 1px 20px rgba(0, 0, 0, 0.16);
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: .5em;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content .Ami2BaseMenuItem__iconbox img {
  max-width: 16px;
  max-height: 16px;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content.disabled {
  cursor: default;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content:not(.disabled):hover .Ami2BaseMenuItem__iconbox, .Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content.active .Ami2BaseMenuItem__iconbox {
  background-color: #dd3a98;
  color: white;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content:hover a, .Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content.active a {
  color: #dd3a98;
  font-family: "Lato Bold", sans-serif;
}

.Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content:hover a i, .Ami2BaseHorizontalMenu .Ami2BaseHorizontalMenu__wrapper .Ami2BaseMenuItem__content.active a i {
  color: white;
}

.Ami2Btn {
  border: none;
  padding: 0.4em 1em;
  border-radius: 10px;
  flex-shrink: 0;
}

.Ami2Btn--pink {
  color: #ffffff;
  background-color: #dd3a98;
}

.Ami2Btn--orange {
  color: #ffffff;
  background-color: #ff800a;
}

.Ami2Btn--white-pink {
  color: #dd3a98;
  background-color: #ffffff;
}

.Ami2Btn--white-black {
  color: #272727;
  background-color: #ffffff;
}

.Ami2Btn--border {
  border: 2px solid #d5d5d5;
}

.Ami2Btn--shadow {
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.161);
}

.Ami2Btn--centred {
  display: block;
  margin: 0 auto;
}

.Ami2Btn--red {
  color: #ffffff;
  background-color: #dc3545;
}

.Ami2Btn :not(:first-child) {
  margin-left: 15px;
}

.Ami2Btn .fa-stack .pink {
  font-size: xx-large !important;
}

.Ami2Btn i:nth-child(2) {
  margin-left: 0;
}

.Ami2Btn:hover {
  /*transform: scale(1.1);*/
}

@font-face {
  font-family: 'swiper-icons';
  src: url("data:application/font-woff;charset=utf-8;base64, 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") format("woff");
  font-weight: 400;
  font-style: normal;
}

:root {
  --swiper-theme-color: #007aff;
}

.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-container-pointer-events {
  touch-action: pan-y;
}

.swiper-container-pointer-events.swiper-container-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

/* 3D Effects */
.swiper-container-3d {
  perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2;
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-blue {
  --swiper-pagination-color: #007bff;
}

.swiper-pagination-indigo {
  --swiper-pagination-color: #6610f2;
}

.swiper-pagination-purple {
  --swiper-pagination-color: #6f42c1;
}

.swiper-pagination-pink {
  --swiper-pagination-color: #e83e8c;
}

.swiper-pagination-red {
  --swiper-pagination-color: #dc3545;
}

.swiper-pagination-orange {
  --swiper-pagination-color: #fd7e14;
}

.swiper-pagination-yellow {
  --swiper-pagination-color: #ffc107;
}

.swiper-pagination-green {
  --swiper-pagination-color: #28a745;
}

.swiper-pagination-teal {
  --swiper-pagination-color: #20c997;
}

.swiper-pagination-cyan {
  --swiper-pagination-color: #17a2b8;
}

.swiper-pagination-white {
  --swiper-pagination-color: #fff;
}

.swiper-pagination-gray {
  --swiper-pagination-color: #6c757d;
}

.swiper-pagination-gray-dark {
  --swiper-pagination-color: #343a40;
}

.swiper-pagination-lock {
  display: none;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: 'prev';
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: 'next';
}

.swiper-button-prev.swiper-button-blue,
.swiper-button-next.swiper-button-blue {
  --swiper-navigation-color: #007bff;
}

.swiper-button-prev.swiper-button-indigo,
.swiper-button-next.swiper-button-indigo {
  --swiper-navigation-color: #6610f2;
}

.swiper-button-prev.swiper-button-purple,
.swiper-button-next.swiper-button-purple {
  --swiper-navigation-color: #6f42c1;
}

.swiper-button-prev.swiper-button-pink,
.swiper-button-next.swiper-button-pink {
  --swiper-navigation-color: #e83e8c;
}

.swiper-button-prev.swiper-button-red,
.swiper-button-next.swiper-button-red {
  --swiper-navigation-color: #dc3545;
}

.swiper-button-prev.swiper-button-orange,
.swiper-button-next.swiper-button-orange {
  --swiper-navigation-color: #fd7e14;
}

.swiper-button-prev.swiper-button-yellow,
.swiper-button-next.swiper-button-yellow {
  --swiper-navigation-color: #ffc107;
}

.swiper-button-prev.swiper-button-green,
.swiper-button-next.swiper-button-green {
  --swiper-navigation-color: #28a745;
}

.swiper-button-prev.swiper-button-teal,
.swiper-button-next.swiper-button-teal {
  --swiper-navigation-color: #20c997;
}

.swiper-button-prev.swiper-button-cyan,
.swiper-button-next.swiper-button-cyan {
  --swiper-navigation-color: #17a2b8;
}

.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #fff;
}

.swiper-button-prev.swiper-button-gray,
.swiper-button-next.swiper-button-gray {
  --swiper-navigation-color: #6c757d;
}

.swiper-button-prev.swiper-button-gray-dark,
.swiper-button-next.swiper-button-gray-dark {
  --swiper-navigation-color: #343a40;
}

.swiper-button-lock {
  display: none;
}

/*------------------------------------*\
  #SOCIAL-MEDIAS
\*------------------------------------*/
.social-medias {
  display: grid;
  grid-template-columns: repeat(4, 25px);
  grid-column-gap: 10px;
  justify-items: center;
}

.social-medias.social-medias--large-gap {
  grid-column-gap: 25px;
}

.social-medias .social-medias__item {
  display: inline-block;
  width: 25px;
  height: 25px;
  line-height: 24px;
  border: 1px solid;
  color: white;
  text-decoration: none;
  text-align: center;
  transform: rotate(45deg);
}

.social-medias .social-medias__item:before {
  display: inline-block;
  transform: rotate(-45deg);
}

.navigation .social-medias__item:hover {
  background-color: white;
  color: #DD3A98;
}

.switch {
  font-size: 1rem;
  position: relative;
}

.switch input {
  position: absolute;
  height: 1px;
  width: 1px;
  background: none;
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  overflow: hidden;
  padding: 0;
}

.switch input + label {
  position: relative;
  min-width: calc(calc(2.375rem * .8) * 2);
  border-radius: calc(2.375rem * .8);
  height: calc(2.375rem * .8);
  line-height: calc(2.375rem * .8);
  display: inline-block;
  cursor: pointer;
  outline: none;
  user-select: none;
  vertical-align: middle;
  text-indent: calc(calc(calc(2.375rem * .8) * 2) + .5rem);
}

.switch input + label::before,
.switch input + label::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: calc(calc(2.375rem * .8) * 2);
  bottom: 0;
  display: block;
}

.switch input + label::before {
  right: 0;
  background-color: #dee2e6;
  border-radius: calc(2.375rem * .8);
  transition: 0.2s all;
}

.switch input + label::after {
  top: 2px;
  left: 2px;
  width: calc(calc(2.375rem * .8) - calc(2px * 2));
  height: calc(calc(2.375rem * .8) - calc(2px * 2));
  border-radius: 50%;
  background-color: white;
  transition: 0.2s all;
}

.switch input:checked + label::before {
  background-color: #9b2763;
}

.switch input:checked + label::after {
  margin-left: calc(2.375rem * .8);
}

.switch input:focus + label::before {
  outline: none;
  box-shadow: 0 0 0 0.2rem rgba(155, 39, 99, 0.25);
}

.switch input:disabled + label {
  color: #868e96;
  cursor: not-allowed;
}

.switch input:disabled + label::before {
  background-color: #e9ecef;
}

.switch.switch-sm {
  font-size: 0.875rem;
}

.switch.switch-sm input + label {
  min-width: calc(calc(1.9375rem * .8) * 2);
  height: calc(1.9375rem * .8);
  line-height: calc(1.9375rem * .8);
  text-indent: calc(calc(calc(1.9375rem * .8) * 2) + .5rem);
}

.switch.switch-sm input + label::before {
  width: calc(calc(1.9375rem * .8) * 2);
}

.switch.switch-sm input + label::after {
  width: calc(calc(1.9375rem * .8) - calc(2px * 2));
  height: calc(calc(1.9375rem * .8) - calc(2px * 2));
}

.switch.switch-sm input:checked + label::after {
  margin-left: calc(1.9375rem * .8);
}

.switch.switch-lg {
  font-size: 1.25rem;
}

.switch.switch-lg input + label {
  min-width: calc(calc(3rem * .8) * 2);
  height: calc(3rem * .8);
  line-height: calc(3rem * .8);
  text-indent: calc(calc(calc(3rem * .8) * 2) + .5rem);
}

.switch.switch-lg input + label::before {
  width: calc(calc(3rem * .8) * 2);
}

.switch.switch-lg input + label::after {
  width: calc(calc(3rem * .8) - calc(2px * 2));
  height: calc(calc(3rem * .8) - calc(2px * 2));
}

.switch.switch-lg input:checked + label::after {
  margin-left: calc(3rem * .8);
}

.switch + .switch {
  margin-left: 1rem;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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OztBR21HQTtFQUNFLGFBQWE7QUhoR2Y7O0FBRUE7RUdvR0Usd0JBQXdCO0FIbEcxQjs7QU8xWEE7O0VBRUUscUJIc1N3QztFR3BTeEMsZ0JIc1MrQjtFR3JTL0IsZ0JIc1MrQjtBSnNGakM7O0FPeFhBO0VGcUtNLGlCQUFXO0FMdU5qQjs7QU8zWEE7RUZvS00sZUFBVztBTDJOakI7O0FPOVhBO0VGbUtNLGtCQUFXO0FMK05qQjs7QU9qWUE7RUZrS00saUJBQVc7QUxtT2pCOztBT3BZQTtFRmlLTSxrQkFBVztBTHVPakI7O0FPdllBO0VGZ0tNLGVBQVc7QUwyT2pCOztBT3pZQTtFRjhKTSxrQkFBVztFRTVKZixnQkh3UytCO0FKb0dqQzs7QU94WUE7RUZ3Sk0sZUFBVztFRXRKZixnQkgyUitCO0VHMVIvQixnQkhrUitCO0FKeUhqQzs7QU96WUE7RUZtSk0saUJBQVc7RUVqSmYsZ0JIdVIrQjtFR3RSL0IsZ0JINlErQjtBSitIakM7O0FPMVlBO0VGOElNLGlCQUFXO0VFNUlmLGdCSG1SK0I7RUdsUi9CLGdCSHdRK0I7QUpxSWpDOztBTzNZQTtFRnlJTSxpQkFBVztFRXZJZixnQkgrUStCO0VHOVEvQixnQkhtUStCO0FKMklqQzs7QUdqWEE7RUlwQkUsZ0JIZ0ZXO0VHL0VYLG1CSCtFVztFRzlFWCxTQUFTO0VBQ1Qsd0NIekNhO0FKa2JmOztBT2pZQTs7RUZrR0ksa0JBQVc7RUUvRmIsZ0JIMk4rQjtBSnlLakM7O0FPallBOztFQUVFLGNIbVFnQztFR2xRaEMseUJIMlFtQztBSnlIckM7O0FPNVhBO0VDL0VFLGVBQWU7RUFDZixnQkFBZ0I7QVIrY2xCOztBTzVYQTtFQ3BGRSxlQUFlO0VBQ2YsZ0JBQWdCO0FSb2RsQjs7QU85WEE7RUFDRSxxQkFBcUI7QVBpWXZCOztBT2xZQTtFQUlJLG9CSHFQK0I7QUo2SW5DOztBT3hYQTtFRjJESSxjQUFXO0VFekRiLHlCQUF5QjtBUDJYM0I7O0FPdlhBO0VBQ0UsbUJIdUJXO0VDNkNQLGtCQUFXO0FMdVRqQjs7QU92WEE7RUFDRSxjQUFjO0VGK0NaLGtCQUFXO0VFN0NiLGNIMUdnQjtBSm9lbEI7O0FPN1hBO0VBTUkscUJBQXFCO0FQMlh6Qjs7QVM5ZUE7RUNJRSxlQUFlO0VBR2YsWUFBWTtBVjRlZDs7QVM3ZUE7RUFDRSxnQkxxZ0N3QztFS3BnQ3hDLHNCTFJhO0VLU2IseUJMTmdCO0VPUWQsc0JQNk5nQztFTXBPbEMsZUFBZTtFQUdmLFlBQVk7QVZxZmQ7O0FTdmVBO0VBRUUscUJBQXFCO0FUeWV2Qjs7QVN0ZUE7RUFDRSxxQkFBMkI7RUFDM0IsY0FBYztBVHllaEI7O0FTdGVBO0VKOEhJLGNBQVc7RUk1SGIsY0wzQmdCO0FKb2dCbEI7O0FZaGhCQTtFUG1LSSxnQkFBVztFT2pLYixjUm1DZTtFUWxDZixxQkFBcUI7QVptaEJ2Qjs7QVloaEJFO0VBQ0UsY0FBYztBWm1oQmxCOztBWTlnQkE7RUFDRSxzQlIwbEN1QztFQ3A4QnJDLGdCQUFXO0VPcEpiLFdSVGE7RVFVYix5QlJEZ0I7RU9FZCxxQlArTitCO0FKa1RuQzs7QVl0aEJBO0VBU0ksVUFBVTtFUDhJVixlQUFXO0VPNUlYLGdCUnlRNkI7QUp3UWpDOztBR3pVQTtFU2pNRSxjQUFjO0VQcUlaLGdCQUFXO0VPbkliLGNSakJnQjtBSitoQmxCOztBWWpoQkE7RVBzSUksa0JBQVc7RU85SFgsY0FBYztFQUNkLGtCQUFrQjtBWjhnQnRCOztBWXpnQkE7RUFDRSxpQlJpa0N1QztFUWhrQ3ZDLGtCQUFrQjtBWjRnQnBCOztBYXBqQkU7Ozs7Ozs7RUNEQSxXQUFXO0VBQ1gsbUJBQTJCO0VBQzNCLGtCQUEwQjtFQUMxQixrQkFBa0I7RUFDbEIsaUJBQWlCO0FkK2pCbkI7O0FlNWdCSTtFRnpDRTtJQUNFLGdCZDhCUztFQzJoQmY7QUFDRjs7QWVsaEJJO0VGekNFO0lBQ0UsZ0JkK0JTO0VDZ2lCZjtBQUNGOztBZXhoQkk7RUZ6Q0U7SUFDRSxnQmRnQ1M7RUNxaUJmO0FBQ0Y7O0FlOWhCSTtFRnpDRTtJQUNFLGlCZGlDVTtFQzBpQmhCO0FBQ0Y7O0FlcGlCSTtFRnpDRTtJQUNFLGlCZGtDVztFQytpQmpCO0FBQ0Y7O0FhdGpCRTtFQ25DQSxhQUFhO0VBQ2IsZUFBZTtFQUNmLG1CQUEyQjtFQUMzQixrQkFBMEI7QWQ2bEI1Qjs7QWF2akJFO0VBQ0UsZUFBZTtFQUNmLGNBQWM7QWIwakJsQjs7QWE1akJFOztFQU1JLGdCQUFnQjtFQUNoQixlQUFlO0FiMmpCckI7O0FnQmpuQkU7Ozs7Ozs7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLG1CQUEyQjtFQUMzQixrQkFBMEI7QWhCMG5COUI7O0FnQnBtQk07RUFDRSxhQUFhO0VBQ2IsWUFBWTtFQUNaLGVBQWU7QWhCdW1CdkI7O0FnQmxtQlU7RUZ3Qk4sY1R1QnFEO0VTdEJyRCxlVHNCcUQ7QUx3akJ6RDs7QWdCdm1CVTtFRndCTixhVHVCcUQ7RVN0QnJELGNUc0JxRDtBTDZqQnpEOztBZ0I1bUJVO0VGd0JOLG1CVHVCcUQ7RVN0QnJELG9CVHNCcUQ7QUxra0J6RDs7QWdCam5CVTtFRndCTixhVHVCcUQ7RVN0QnJELGNUc0JxRDtBTHVrQnpEOztBZ0J0bkJVO0VGd0JOLGFUdUJxRDtFU3RCckQsY1RzQnFEO0FMNGtCekQ7O0FnQjNuQlU7RUZ3Qk4sbUJUdUJxRDtFU3RCckQsb0JUc0JxRDtBTGlsQnpEOztBZ0IxbkJNO0VGQ0osY0FBYztFQUNkLFdBQVc7RUFDWCxlQUFlO0FkNm5CakI7O0FnQjFuQlU7RUZiUixrQkFBNkM7RUFJN0MsbUJBQThDO0Fkd29CaEQ7O0FnQi9uQlU7RUZiUixtQkFBNkM7RUFJN0Msb0JBQThDO0FkNm9CaEQ7O0FnQnBvQlU7RUZiUixhQUE2QztFQUk3QyxjQUE4QztBZGtwQmhEOztBZ0J6b0JVO0VGYlIsbUJBQTZDO0VBSTdDLG9CQUE4QztBZHVwQmhEOztBZ0I5b0JVO0VGYlIsbUJBQTZDO0VBSTdDLG9CQUE4QztBZDRwQmhEOztBZ0JucEJVO0VGYlIsYUFBNkM7RUFJN0MsY0FBOEM7QWRpcUJoRDs7QWdCeHBCVTtFRmJSLG1CQUE2QztFQUk3QyxvQkFBOEM7QWRzcUJoRDs7QWdCN3BCVTtFRmJSLG1CQUE2QztFQUk3QyxvQkFBOEM7QWQycUJoRDs7QWdCbHFCVTtFRmJSLGFBQTZDO0VBSTdDLGNBQThDO0FkZ3JCaEQ7O0FnQnZxQlU7RUZiUixtQkFBNkM7RUFJN0Msb0JBQThDO0FkcXJCaEQ7O0FnQjVxQlU7RUZiUixtQkFBNkM7RUFJN0Msb0JBQThDO0FkMHJCaEQ7O0FnQmpyQlU7RUZiUixjQUE2QztFQUk3QyxlQUE4QztBZCtyQmhEOztBZ0JockJNO0VBQXdCLFNBQVM7QWhCb3JCdkM7O0FnQmxyQk07RUFBdUIsU1ptS0c7QUptaEJoQzs7QWdCbnJCUTtFQUF3QixRQURaO0FoQndyQnBCOztBZ0J2ckJRO0VBQXdCLFFBRFo7QWhCNHJCcEI7O0FnQjNyQlE7RUFBd0IsUUFEWjtBaEJnc0JwQjs7QWdCL3JCUTtFQUF3QixRQURaO0FoQm9zQnBCOztBZ0Juc0JRO0VBQXdCLFFBRFo7QWhCd3NCcEI7O0FnQnZzQlE7RUFBd0IsUUFEWjtBaEI0c0JwQjs7QWdCM3NCUTtFQUF3QixRQURaO0FoQmd0QnBCOztBZ0Ivc0JRO0VBQXdCLFFBRFo7QWhCb3RCcEI7O0FnQm50QlE7RUFBd0IsUUFEWjtBaEJ3dEJwQjs7QWdCdnRCUTtFQUF3QixRQURaO0FoQjR0QnBCOztBZ0IzdEJRO0VBQXdCLFNBRFo7QWhCZ3VCcEI7O0FnQi90QlE7RUFBd0IsU0FEWjtBaEJvdUJwQjs7QWdCbnVCUTtFQUF3QixTQURaO0FoQnd1QnBCOztBZ0JodUJZO0VGaEJWLHFCQUE4QztBZG92QmhEOztBZ0JwdUJZO0VGaEJWLHNCQUE4QztBZHd2QmhEOztBZ0J4dUJZO0VGaEJWLGdCQUE4QztBZDR2QmhEOztBZ0I1dUJZO0VGaEJWLHNCQUE4QztBZGd3QmhEOztBZ0JodkJZO0VGaEJWLHNCQUE4QztBZG93QmhEOztBZ0JwdkJZO0VGaEJWLGdCQUE4QztBZHd3QmhEOztBZ0J4dkJZO0VGaEJWLHNCQUE4QztBZDR3QmhEOztBZ0I1dkJZO0VGaEJWLHNCQUE4QztBZGd4QmhEOztBZ0Jod0JZO0VGaEJWLGdCQUE4QztBZG94QmhEOztBZ0Jwd0JZO0VGaEJWLHNCQUE4QztBZHd4QmhEOztBZ0J4d0JZO0VGaEJWLHNCQUE4QztBZDR4QmhEOztBZXZ4Qkk7RUMzQkU7SUFDRSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWU7RWhCc3pCckI7RWdCanpCUTtJRndCTixjVHVCcUQ7SVN0QnJELGVUc0JxRDtFTHN3QnZEO0VnQnJ6QlE7SUZ3Qk4sYVR1QnFEO0lTdEJyRCxjVHNCcUQ7RUwwd0J2RDtFZ0J6ekJRO0lGd0JOLG1CVHVCcUQ7SVN0QnJELG9CVHNCcUQ7RUw4d0J2RDtFZ0I3ekJRO0lGd0JOLGFUdUJxRDtJU3RCckQsY1RzQnFEO0VMa3hCdkQ7RWdCajBCUTtJRndCTixhVHVCcUQ7SVN0QnJELGNUc0JxRDtFTHN4QnZEO0VnQnIwQlE7SUZ3Qk4sbUJUdUJxRDtJU3RCckQsb0JUc0JxRDtFTDB4QnZEO0VnQm4wQkk7SUZDSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RWRxMEJmO0VnQmwwQlE7SUZiUixrQkFBNkM7SUFJN0MsbUJBQThDO0VkKzBCOUM7RWdCdDBCUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWRtMUI5QztFZ0IxMEJRO0lGYlIsYUFBNkM7SUFJN0MsY0FBOEM7RWR1MUI5QztFZ0I5MEJRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDIxQjlDO0VnQmwxQlE7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkKzFCOUM7RWdCdDFCUTtJRmJSLGFBQTZDO0lBSTdDLGNBQThDO0VkbTJCOUM7RWdCMTFCUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR1MkI5QztFZ0I5MUJRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDIyQjlDO0VnQmwyQlE7SUZiUixhQUE2QztJQUk3QyxjQUE4QztFZCsyQjlDO0VnQnQyQlE7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkbTNCOUM7RWdCMTJCUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR1M0I5QztFZ0I5MkJRO0lGYlIsY0FBNkM7SUFJN0MsZUFBOEM7RWQyM0I5QztFZ0I1MkJJO0lBQXdCLFNBQVM7RWhCKzJCckM7RWdCNzJCSTtJQUF1QixTWm1LRztFSjZzQjlCO0VnQjcyQk07SUFBd0IsUUFEWjtFaEJpM0JsQjtFZ0JoM0JNO0lBQXdCLFFBRFo7RWhCbzNCbEI7RWdCbjNCTTtJQUF3QixRQURaO0VoQnUzQmxCO0VnQnQzQk07SUFBd0IsUUFEWjtFaEIwM0JsQjtFZ0J6M0JNO0lBQXdCLFFBRFo7RWhCNjNCbEI7RWdCNTNCTTtJQUF3QixRQURaO0VoQmc0QmxCO0VnQi8zQk07SUFBd0IsUUFEWjtFaEJtNEJsQjtFZ0JsNEJNO0lBQXdCLFFBRFo7RWhCczRCbEI7RWdCcjRCTTtJQUF3QixRQURaO0VoQnk0QmxCO0VnQng0Qk07SUFBd0IsUUFEWjtFaEI0NEJsQjtFZ0IzNEJNO0lBQXdCLFNBRFo7RWhCKzRCbEI7RWdCOTRCTTtJQUF3QixTQURaO0VoQms1QmxCO0VnQmo1Qk07SUFBd0IsU0FEWjtFaEJxNUJsQjtFZ0I3NEJVO0lGaEJWLGNBQTRCO0VkZzZCNUI7RWdCaDVCVTtJRmhCVixxQkFBOEM7RWRtNkI5QztFZ0JuNUJVO0lGaEJWLHNCQUE4QztFZHM2QjlDO0VnQnQ1QlU7SUZoQlYsZ0JBQThDO0VkeTZCOUM7RWdCejVCVTtJRmhCVixzQkFBOEM7RWQ0NkI5QztFZ0I1NUJVO0lGaEJWLHNCQUE4QztFZCs2QjlDO0VnQi81QlU7SUZoQlYsZ0JBQThDO0VkazdCOUM7RWdCbDZCVTtJRmhCVixzQkFBOEM7RWRxN0I5QztFZ0JyNkJVO0lGaEJWLHNCQUE4QztFZHc3QjlDO0VnQng2QlU7SUZoQlYsZ0JBQThDO0VkMjdCOUM7RWdCMzZCVTtJRmhCVixzQkFBOEM7RWQ4N0I5QztFZ0I5NkJVO0lGaEJWLHNCQUE4QztFZGk4QjlDO0FBQ0Y7O0FlNzdCSTtFQzNCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFaEI0OUJyQjtFZ0J2OUJRO0lGd0JOLGNUdUJxRDtJU3RCckQsZVRzQnFEO0VMNDZCdkQ7RWdCMzlCUTtJRndCTixhVHVCcUQ7SVN0QnJELGNUc0JxRDtFTGc3QnZEO0VnQi85QlE7SUZ3Qk4sbUJUdUJxRDtJU3RCckQsb0JUc0JxRDtFTG83QnZEO0VnQm4rQlE7SUZ3Qk4sYVR1QnFEO0lTdEJyRCxjVHNCcUQ7RUx3N0J2RDtFZ0J2K0JRO0lGd0JOLGFUdUJxRDtJU3RCckQsY1RzQnFEO0VMNDdCdkQ7RWdCMytCUTtJRndCTixtQlR1QnFEO0lTdEJyRCxvQlRzQnFEO0VMZzhCdkQ7RWdCeitCSTtJRkNKLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtFZDIrQmY7RWdCeCtCUTtJRmJSLGtCQUE2QztJQUk3QyxtQkFBOEM7RWRxL0I5QztFZ0I1K0JRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZHkvQjlDO0VnQmgvQlE7SUZiUixhQUE2QztJQUk3QyxjQUE4QztFZDYvQjlDO0VnQnAvQlE7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkaWdDOUM7RWdCeC9CUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWRxZ0M5QztFZ0I1L0JRO0lGYlIsYUFBNkM7SUFJN0MsY0FBOEM7RWR5Z0M5QztFZ0JoZ0NRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDZnQzlDO0VnQnBnQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkaWhDOUM7RWdCeGdDUTtJRmJSLGFBQTZDO0lBSTdDLGNBQThDO0VkcWhDOUM7RWdCNWdDUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR5aEM5QztFZ0JoaENRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDZoQzlDO0VnQnBoQ1E7SUZiUixjQUE2QztJQUk3QyxlQUE4QztFZGlpQzlDO0VnQmxoQ0k7SUFBd0IsU0FBUztFaEJxaENyQztFZ0JuaENJO0lBQXVCLFNabUtHO0VKbTNCOUI7RWdCbmhDTTtJQUF3QixRQURaO0VoQnVoQ2xCO0VnQnRoQ007SUFBd0IsUUFEWjtFaEIwaENsQjtFZ0J6aENNO0lBQXdCLFFBRFo7RWhCNmhDbEI7RWdCNWhDTTtJQUF3QixRQURaO0VoQmdpQ2xCO0VnQi9oQ007SUFBd0IsUUFEWjtFaEJtaUNsQjtFZ0JsaUNNO0lBQXdCLFFBRFo7RWhCc2lDbEI7RWdCcmlDTTtJQUF3QixRQURaO0VoQnlpQ2xCO0VnQnhpQ007SUFBd0IsUUFEWjtFaEI0aUNsQjtFZ0IzaUNNO0lBQXdCLFFBRFo7RWhCK2lDbEI7RWdCOWlDTTtJQUF3QixRQURaO0VoQmtqQ2xCO0VnQmpqQ007SUFBd0IsU0FEWjtFaEJxakNsQjtFZ0JwakNNO0lBQXdCLFNBRFo7RWhCd2pDbEI7RWdCdmpDTTtJQUF3QixTQURaO0VoQjJqQ2xCO0VnQm5qQ1U7SUZoQlYsY0FBNEI7RWRza0M1QjtFZ0J0akNVO0lGaEJWLHFCQUE4QztFZHlrQzlDO0VnQnpqQ1U7SUZoQlYsc0JBQThDO0VkNGtDOUM7RWdCNWpDVTtJRmhCVixnQkFBOEM7RWQra0M5QztFZ0IvakNVO0lGaEJWLHNCQUE4QztFZGtsQzlDO0VnQmxrQ1U7SUZoQlYsc0JBQThDO0VkcWxDOUM7RWdCcmtDVTtJRmhCVixnQkFBOEM7RWR3bEM5QztFZ0J4a0NVO0lGaEJWLHNCQUE4QztFZDJsQzlDO0VnQjNrQ1U7SUZoQlYsc0JBQThDO0VkOGxDOUM7RWdCOWtDVTtJRmhCVixnQkFBOEM7RWRpbUM5QztFZ0JqbENVO0lGaEJWLHNCQUE4QztFZG9tQzlDO0VnQnBsQ1U7SUZoQlYsc0JBQThDO0VkdW1DOUM7QUFDRjs7QWVubUNJO0VDM0JFO0lBQ0UsYUFBYTtJQUNiLFlBQVk7SUFDWixlQUFlO0VoQmtvQ3JCO0VnQjduQ1E7SUZ3Qk4sY1R1QnFEO0lTdEJyRCxlVHNCcUQ7RUxrbEN2RDtFZ0Jqb0NRO0lGd0JOLGFUdUJxRDtJU3RCckQsY1RzQnFEO0VMc2xDdkQ7RWdCcm9DUTtJRndCTixtQlR1QnFEO0lTdEJyRCxvQlRzQnFEO0VMMGxDdkQ7RWdCem9DUTtJRndCTixhVHVCcUQ7SVN0QnJELGNUc0JxRDtFTDhsQ3ZEO0VnQjdvQ1E7SUZ3Qk4sYVR1QnFEO0lTdEJyRCxjVHNCcUQ7RUxrbUN2RDtFZ0JqcENRO0lGd0JOLG1CVHVCcUQ7SVN0QnJELG9CVHNCcUQ7RUxzbUN2RDtFZ0Ivb0NJO0lGQ0osY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlO0VkaXBDZjtFZ0I5b0NRO0lGYlIsa0JBQTZDO0lBSTdDLG1CQUE4QztFZDJwQzlDO0VnQmxwQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkK3BDOUM7RWdCdHBDUTtJRmJSLGFBQTZDO0lBSTdDLGNBQThDO0VkbXFDOUM7RWdCMXBDUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR1cUM5QztFZ0I5cENRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDJxQzlDO0VnQmxxQ1E7SUZiUixhQUE2QztJQUk3QyxjQUE4QztFZCtxQzlDO0VnQnRxQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkbXJDOUM7RWdCMXFDUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR1ckM5QztFZ0I5cUNRO0lGYlIsYUFBNkM7SUFJN0MsY0FBOEM7RWQyckM5QztFZ0JsckNRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZCtyQzlDO0VnQnRyQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkbXNDOUM7RWdCMXJDUTtJRmJSLGNBQTZDO0lBSTdDLGVBQThDO0VkdXNDOUM7RWdCeHJDSTtJQUF3QixTQUFTO0VoQjJyQ3JDO0VnQnpyQ0k7SUFBdUIsU1ptS0c7RUp5aEM5QjtFZ0J6ckNNO0lBQXdCLFFBRFo7RWhCNnJDbEI7RWdCNXJDTTtJQUF3QixRQURaO0VoQmdzQ2xCO0VnQi9yQ007SUFBd0IsUUFEWjtFaEJtc0NsQjtFZ0Jsc0NNO0lBQXdCLFFBRFo7RWhCc3NDbEI7RWdCcnNDTTtJQUF3QixRQURaO0VoQnlzQ2xCO0VnQnhzQ007SUFBd0IsUUFEWjtFaEI0c0NsQjtFZ0Izc0NNO0lBQXdCLFFBRFo7RWhCK3NDbEI7RWdCOXNDTTtJQUF3QixRQURaO0VoQmt0Q2xCO0VnQmp0Q007SUFBd0IsUUFEWjtFaEJxdENsQjtFZ0JwdENNO0lBQXdCLFFBRFo7RWhCd3RDbEI7RWdCdnRDTTtJQUF3QixTQURaO0VoQjJ0Q2xCO0VnQjF0Q007SUFBd0IsU0FEWjtFaEI4dENsQjtFZ0I3dENNO0lBQXdCLFNBRFo7RWhCaXVDbEI7RWdCenRDVTtJRmhCVixjQUE0QjtFZDR1QzVCO0VnQjV0Q1U7SUZoQlYscUJBQThDO0VkK3VDOUM7RWdCL3RDVTtJRmhCVixzQkFBOEM7RWRrdkM5QztFZ0JsdUNVO0lGaEJWLGdCQUE4QztFZHF2QzlDO0VnQnJ1Q1U7SUZoQlYsc0JBQThDO0Vkd3ZDOUM7RWdCeHVDVTtJRmhCVixzQkFBOEM7RWQydkM5QztFZ0IzdUNVO0lGaEJWLGdCQUE4QztFZDh2QzlDO0VnQjl1Q1U7SUZoQlYsc0JBQThDO0VkaXdDOUM7RWdCanZDVTtJRmhCVixzQkFBOEM7RWRvd0M5QztFZ0JwdkNVO0lGaEJWLGdCQUE4QztFZHV3QzlDO0VnQnZ2Q1U7SUZoQlYsc0JBQThDO0VkMHdDOUM7RWdCMXZDVTtJRmhCVixzQkFBOEM7RWQ2d0M5QztBQUNGOztBZXp3Q0k7RUMzQkU7SUFDRSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWU7RWhCd3lDckI7RWdCbnlDUTtJRndCTixjVHVCcUQ7SVN0QnJELGVUc0JxRDtFTHd2Q3ZEO0VnQnZ5Q1E7SUZ3Qk4sYVR1QnFEO0lTdEJyRCxjVHNCcUQ7RUw0dkN2RDtFZ0IzeUNRO0lGd0JOLG1CVHVCcUQ7SVN0QnJELG9CVHNCcUQ7RUxnd0N2RDtFZ0IveUNRO0lGd0JOLGFUdUJxRDtJU3RCckQsY1RzQnFEO0VMb3dDdkQ7RWdCbnpDUTtJRndCTixhVHVCcUQ7SVN0QnJELGNUc0JxRDtFTHd3Q3ZEO0VnQnZ6Q1E7SUZ3Qk4sbUJUdUJxRDtJU3RCckQsb0JUc0JxRDtFTDR3Q3ZEO0VnQnJ6Q0k7SUZDSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RWR1ekNmO0VnQnB6Q1E7SUZiUixrQkFBNkM7SUFJN0MsbUJBQThDO0VkaTBDOUM7RWdCeHpDUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWRxMEM5QztFZ0I1ekNRO0lGYlIsYUFBNkM7SUFJN0MsY0FBOEM7RWR5MEM5QztFZ0JoMENRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDYwQzlDO0VnQnAwQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkaTFDOUM7RWdCeDBDUTtJRmJSLGFBQTZDO0lBSTdDLGNBQThDO0VkcTFDOUM7RWdCNTBDUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR5MUM5QztFZ0JoMUNRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDYxQzlDO0VnQnAxQ1E7SUZiUixhQUE2QztJQUk3QyxjQUE4QztFZGkyQzlDO0VnQngxQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkcTJDOUM7RWdCNTFDUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR5MkM5QztFZ0JoMkNRO0lGYlIsY0FBNkM7SUFJN0MsZUFBOEM7RWQ2MkM5QztFZ0I5MUNJO0lBQXdCLFNBQVM7RWhCaTJDckM7RWdCLzFDSTtJQUF1QixTWm1LRztFSityQzlCO0VnQi8xQ007SUFBd0IsUUFEWjtFaEJtMkNsQjtFZ0JsMkNNO0lBQXdCLFFBRFo7RWhCczJDbEI7RWdCcjJDTTtJQUF3QixRQURaO0VoQnkyQ2xCO0VnQngyQ007SUFBd0IsUUFEWjtFaEI0MkNsQjtFZ0IzMkNNO0lBQXdCLFFBRFo7RWhCKzJDbEI7RWdCOTJDTTtJQUF3QixRQURaO0VoQmszQ2xCO0VnQmozQ007SUFBd0IsUUFEWjtFaEJxM0NsQjtFZ0JwM0NNO0lBQXdCLFFBRFo7RWhCdzNDbEI7RWdCdjNDTTtJQUF3QixRQURaO0VoQjIzQ2xCO0VnQjEzQ007SUFBd0IsUUFEWjtFaEI4M0NsQjtFZ0I3M0NNO0lBQXdCLFNBRFo7RWhCaTRDbEI7RWdCaDRDTTtJQUF3QixTQURaO0VoQm80Q2xCO0VnQm40Q007SUFBd0IsU0FEWjtFaEJ1NENsQjtFZ0IvM0NVO0lGaEJWLGNBQTRCO0VkazVDNUI7RWdCbDRDVTtJRmhCVixxQkFBOEM7RWRxNUM5QztFZ0JyNENVO0lGaEJWLHNCQUE4QztFZHc1QzlDO0VnQng0Q1U7SUZoQlYsZ0JBQThDO0VkMjVDOUM7RWdCMzRDVTtJRmhCVixzQkFBOEM7RWQ4NUM5QztFZ0I5NENVO0lGaEJWLHNCQUE4QztFZGk2QzlDO0VnQmo1Q1U7SUZoQlYsZ0JBQThDO0VkbzZDOUM7RWdCcDVDVTtJRmhCVixzQkFBOEM7RWR1NkM5QztFZ0J2NUNVO0lGaEJWLHNCQUE4QztFZDA2QzlDO0VnQjE1Q1U7SUZoQlYsZ0JBQThDO0VkNjZDOUM7RWdCNzVDVTtJRmhCVixzQkFBOEM7RWRnN0M5QztFZ0JoNkNVO0lGaEJWLHNCQUE4QztFZG03QzlDO0FBQ0Y7O0FlLzZDSTtFQzNCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFaEI4OENyQjtFZ0J6OENRO0lGd0JOLGNUdUJxRDtJU3RCckQsZVRzQnFEO0VMODVDdkQ7RWdCNzhDUTtJRndCTixhVHVCcUQ7SVN0QnJELGNUc0JxRDtFTGs2Q3ZEO0VnQmo5Q1E7SUZ3Qk4sbUJUdUJxRDtJU3RCckQsb0JUc0JxRDtFTHM2Q3ZEO0VnQnI5Q1E7SUZ3Qk4sYVR1QnFEO0lTdEJyRCxjVHNCcUQ7RUwwNkN2RDtFZ0J6OUNRO0lGd0JOLGFUdUJxRDtJU3RCckQsY1RzQnFEO0VMODZDdkQ7RWdCNzlDUTtJRndCTixtQlR1QnFEO0lTdEJyRCxvQlRzQnFEO0VMazdDdkQ7RWdCMzlDSTtJRkNKLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtFZDY5Q2Y7RWdCMTlDUTtJRmJSLGtCQUE2QztJQUk3QyxtQkFBOEM7RWR1K0M5QztFZ0I5OUNRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDIrQzlDO0VnQmwrQ1E7SUZiUixhQUE2QztJQUk3QyxjQUE4QztFZCsrQzlDO0VnQnQrQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkbS9DOUM7RWdCMStDUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR1L0M5QztFZ0I5K0NRO0lGYlIsYUFBNkM7SUFJN0MsY0FBOEM7RWQyL0M5QztFZ0JsL0NRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZCsvQzlDO0VnQnQvQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkbWdEOUM7RWdCMS9DUTtJRmJSLGFBQTZDO0lBSTdDLGNBQThDO0VkdWdEOUM7RWdCOS9DUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWQyZ0Q5QztFZ0JsZ0RRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZCtnRDlDO0VnQnRnRFE7SUZiUixjQUE2QztJQUk3QyxlQUE4QztFZG1oRDlDO0VnQnBnREk7SUFBd0IsU0FBUztFaEJ1Z0RyQztFZ0JyZ0RJO0lBQXVCLFNabUtHO0VKcTJDOUI7RWdCcmdETTtJQUF3QixRQURaO0VoQnlnRGxCO0VnQnhnRE07SUFBd0IsUUFEWjtFaEI0Z0RsQjtFZ0IzZ0RNO0lBQXdCLFFBRFo7RWhCK2dEbEI7RWdCOWdETTtJQUF3QixRQURaO0VoQmtoRGxCO0VnQmpoRE07SUFBd0IsUUFEWjtFaEJxaERsQjtFZ0JwaERNO0lBQXdCLFFBRFo7RWhCd2hEbEI7RWdCdmhETTtJQUF3QixRQURaO0VoQjJoRGxCO0VnQjFoRE07SUFBd0IsUUFEWjtFaEI4aERsQjtFZ0I3aERNO0lBQXdCLFFBRFo7RWhCaWlEbEI7RWdCaGlETTtJQUF3QixRQURaO0VoQm9pRGxCO0VnQm5pRE07SUFBd0IsU0FEWjtFaEJ1aURsQjtFZ0J0aURNO0lBQXdCLFNBRFo7RWhCMGlEbEI7RWdCemlETTtJQUF3QixTQURaO0VoQjZpRGxCO0VnQnJpRFU7SUZoQlYsY0FBNEI7RWR3akQ1QjtFZ0J4aURVO0lGaEJWLHFCQUE4QztFZDJqRDlDO0VnQjNpRFU7SUZoQlYsc0JBQThDO0VkOGpEOUM7RWdCOWlEVTtJRmhCVixnQkFBOEM7RWRpa0Q5QztFZ0JqakRVO0lGaEJWLHNCQUE4QztFZG9rRDlDO0VnQnBqRFU7SUZoQlYsc0JBQThDO0VkdWtEOUM7RWdCdmpEVTtJRmhCVixnQkFBOEM7RWQwa0Q5QztFZ0IxakRVO0lGaEJWLHNCQUE4QztFZDZrRDlDO0VnQjdqRFU7SUZoQlYsc0JBQThDO0VkZ2xEOUM7RWdCaGtEVTtJRmhCVixnQkFBOEM7RWRtbEQ5QztFZ0Jua0RVO0lGaEJWLHNCQUE4QztFZHNsRDlDO0VnQnRrRFU7SUZoQlYsc0JBQThDO0VkeWxEOUM7QUFDRjs7QWlCN29EQTtFQUNFLFdBQVc7RUFDWCxtQmJpSVc7RWFoSVgsY2JTZ0I7QUp1b0RsQjs7QWlCbnBEQTs7RUFRSSxnQmJtVmdDO0VhbFZoQyxtQkFBbUI7RUFDbkIsNkJiSmM7QUpvcERsQjs7QWlCMXBEQTtFQWNJLHNCQUFzQjtFQUN0QixnQ2JUYztBSnlwRGxCOztBaUIvcERBO0VBbUJJLDZCYmJjO0FKNnBEbEI7O0FpQnZvREE7O0VBR0ksZWI2VCtCO0FKNDBDbkM7O0FpQmhvREE7RUFDRSx5QmJuQ2dCO0FKc3FEbEI7O0FpQnBvREE7O0VBS0kseUJidkNjO0FKMnFEbEI7O0FpQnpvREE7O0VBV00sd0JBQTRDO0FqQm1vRGxEOztBaUI5bkRBOzs7O0VBS0ksU0FBUztBakJnb0RiOztBaUJ4bkRBO0VBRUkscUNiMURXO0FKb3JEZjs7QU16ckRFO0VXMkVJLGNidkVZO0Vhd0VaLHNDYnZFUztBSnlyRGY7O0FrQnJzREU7OztFQUlJLHlCQ2dHNEQ7QW5CdW1EbEU7O0FrQjNzREU7Ozs7RUFZTSxxQkN3RjBEO0FuQjhtRGxFOztBTTNzREU7RVlpQk0seUJBSnNDO0FsQmtzRDlDOztBa0Juc0RFOztFQVNRLHlCQVJvQztBbEJ1c0Q5Qzs7QWtCM3RERTs7O0VBSUkseUJDZ0c0RDtBbkI2bkRsRTs7QWtCanVERTs7OztFQVlNLHFCQ3dGMEQ7QW5Cb29EbEU7O0FNanVERTtFWWlCTSx5QkFKc0M7QWxCd3REOUM7O0FrQnp0REU7O0VBU1EseUJBUm9DO0FsQjZ0RDlDOztBa0JqdkRFOzs7RUFJSSx5QkNnRzREO0FuQm1wRGxFOztBa0J2dkRFOzs7O0VBWU0scUJDd0YwRDtBbkIwcERsRTs7QU12dkRFO0VZaUJNLHlCQUpzQztBbEI4dUQ5Qzs7QWtCL3VERTs7RUFTUSx5QkFSb0M7QWxCbXZEOUM7O0FrQnZ3REU7OztFQUlJLHlCQ2dHNEQ7QW5CeXFEbEU7O0FrQjd3REU7Ozs7RUFZTSxxQkN3RjBEO0FuQmdyRGxFOztBTTd3REU7RVlpQk0seUJBSnNDO0FsQm93RDlDOztBa0Jyd0RFOztFQVNRLHlCQVJvQztBbEJ5d0Q5Qzs7QWtCN3hERTs7O0VBSUkseUJDZ0c0RDtBbkIrckRsRTs7QWtCbnlERTs7OztFQVlNLHFCQ3dGMEQ7QW5Cc3NEbEU7O0FNbnlERTtFWWlCTSx5QkFKc0M7QWxCMHhEOUM7O0FrQjN4REU7O0VBU1EseUJBUm9DO0FsQit4RDlDOztBa0JuekRFOzs7RUFJSSx5QkNnRzREO0FuQnF0RGxFOztBa0J6ekRFOzs7O0VBWU0scUJDd0YwRDtBbkI0dERsRTs7QU16ekRFO0VZaUJNLHlCQUpzQztBbEJnekQ5Qzs7QWtCanpERTs7RUFTUSx5QkFSb0M7QWxCcXpEOUM7O0FrQnowREU7OztFQUlJLHlCQ2dHNEQ7QW5CMnVEbEU7O0FrQi8wREU7Ozs7RUFZTSxxQkN3RjBEO0FuQmt2RGxFOztBTS8wREU7RVlpQk0seUJBSnNDO0FsQnMwRDlDOztBa0J2MERFOztFQVNRLHlCQVJvQztBbEIyMEQ5Qzs7QWtCLzFERTs7O0VBSUkseUJDZ0c0RDtBbkJpd0RsRTs7QWtCcjJERTs7OztFQVlNLHFCQ3dGMEQ7QW5Cd3dEbEU7O0FNcjJERTtFWWlCTSx5QkFKc0M7QWxCNDFEOUM7O0FrQjcxREU7O0VBU1EseUJBUm9DO0FsQmkyRDlDOztBa0JyM0RFOzs7RUFJSSxzQ2RRUztBSisyRGY7O0FNcDNERTtFWWlCTSxzQ0FKc0M7QWxCMjJEOUM7O0FrQjUyREU7O0VBU1Esc0NBUm9DO0FsQmczRDlDOztBaUIxeERBO0VBR00sV2IzR1M7RWE0R1QseUJicEdZO0VhcUdaLHFCYmlRcUQ7QUowaEQzRDs7QWlCaHlEQTtFQVdNLGNiNUdZO0VhNkdaLHlCYmxIWTtFYW1IWixxQmJsSFk7QUoyNERsQjs7QWlCcHhEQTtFQUNFLFdiM0hhO0VhNEhiLHlCYnBIZ0I7QUoyNERsQjs7QWlCenhEQTs7O0VBT0kscUJiNk91RDtBSjJpRDNEOztBaUIveERBO0VBV0ksU0FBUztBakJ3eERiOztBaUJueURBO0VBZ0JNLDJDYjFJUztBSmk2RGY7O0FNNTVERTtFVzRJTSxXYmpKTztFYWtKUCw0Q2JsSk87QUpzNkRmOztBZXAyREk7RUVpR0E7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7RWpCc3dEdkM7RWlCM3dERztJQVNLLFNBQVM7RWpCcXdEakI7QUFDRjs7QWVoM0RJO0VFaUdBO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0VqQmt4RHZDO0VpQnZ4REc7SUFTSyxTQUFTO0VqQml4RGpCO0FBQ0Y7O0FlNTNESTtFRWlHQTtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztFakI4eER2QztFaUJueURHO0lBU0ssU0FBUztFakI2eERqQjtBQUNGOztBZXg0REk7RUVpR0E7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7RWpCMHlEdkM7RWlCL3lERztJQVNLLFNBQVM7RWpCeXlEakI7QUFDRjs7QWVwNURJO0VFaUdBO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0VqQnN6RHZDO0VpQjN6REc7SUFTSyxTQUFTO0VqQnF6RGpCO0FBQ0Y7O0FpQnAwREE7RUFPUSxjQUFjO0VBQ2QsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixpQ0FBaUM7QWpCaTBEekM7O0FpQjMwREE7RUFjVSxTQUFTO0FqQmkwRG5COztBb0I5K0RBO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxtQ0RpSDhEO0VDaEg5RCx5QmhCMFhrQztFQ2hOOUIsZUFBVztFZXZLZixnQmhCbVIrQjtFZ0JsUi9CLGdCaEJ1UitCO0VnQnRSL0IsY2hCRGdCO0VnQkVoQixzQmhCVGE7RWdCVWIsNEJBQTRCO0VBQzVCLHlCaEJQZ0I7RU9PZCxzQlA2TmdDO0VpQi9OOUIsd0VqQndlNEY7QUo0Z0RsRzs7QXFCaC9ETTtFRGROO0lDZVEsZ0JBQWdCO0VyQm8vRHRCO0FBQ0Y7O0FvQnBnRUE7RUFzQkksNkJBQTZCO0VBQzdCLFNBQVM7QXBCay9EYjs7QXNCbGdFRTtFQUNFLGNsQkFjO0VrQkNkLHNCbEJSVztFa0JTWCxxQmxCc2RzRTtFa0JyZHRFLFVBQVU7RUFLUixnRGxCYVc7QUpvL0RqQjs7QW9CamhFQTtFQStCSSxjaEJ4QmM7RWdCMEJkLFVBQVU7QXBCcS9EZDs7QW9CdGhFQTtFQTJDSSx5QmhCeENjO0VnQjBDZCxVQUFVO0FwQjgrRGQ7O0FvQjErREE7Ozs7RUFLSSxnQkFBZ0I7QXBCNCtEcEI7O0FvQngrREE7RUFHSSxrQkFBa0I7RUFDbEIsMEJoQnREYztBSitoRWxCOztBb0I3K0RBO0VBYUksY2hCL0RjO0VnQmdFZCxzQmhCdkVXO0FKMmlFZjs7QW9CLzlEQTs7RUFFRSxjQUFjO0VBQ2QsV0FBVztBcEJrK0RiOztBb0J4OURBO0VBQ0UsaUNEeUI4RDtFQ3hCOUQsb0NEd0I4RDtFQ3ZCOUQsZ0JBQWdCO0VmaUVkLGtCQUFXO0VlL0RiLGdCaEJnTStCO0FKMnhEakM7O0FvQng5REE7RUFDRSwrQkRpQjhEO0VDaEI5RCxrQ0RnQjhEO0VkMEQxRCxrQkFBVztFZXhFZixnQmhCNkgrQjtBSjgxRGpDOztBb0J4OURBO0VBQ0UsZ0NEVThEO0VDVDlELG1DRFM4RDtFZDBEMUQsbUJBQVc7RWVqRWYsZ0JoQnVIK0I7QUpvMkRqQzs7QW9CbDlEQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsbUJBQTJCO0VBQzNCLGdCQUFnQjtFZm9EWixlQUFXO0VlbERmLGdCaEJtSytCO0VnQmxLL0IsY2hCbkhnQjtFZ0JvSGhCLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsbUJBQW1DO0FwQnE5RHJDOztBb0IvOURBO0VBY0ksZ0JBQWdCO0VBQ2hCLGVBQWU7QXBCcTlEbkI7O0FvQno4REE7RUFDRSxrQ0Q5QjhEO0VDK0I5RCx1QmhCcVBpQztFQzFON0IsbUJBQVc7RWV6QmYsZ0JoQitFK0I7RU94TjdCLHFCUCtOK0I7QUp1M0RuQzs7QW9CejhEQTtFQUNFLGdDRHRDOEQ7RUN1QzlELG9CaEJrUGdDO0VDL041QixrQkFBVztFZWpCZixnQmhCc0UrQjtFT3ZON0IscUJQOE4rQjtBSmc0RG5DOztBb0J4OERBO0VBR0ksWUFBWTtBcEJ5OERoQjs7QW9CcjhEQTtFQUNFLFlBQVk7QXBCdzhEZDs7QW9CaDhEQTtFQUNFLG1CaEIyVTBDO0FKd25ENUM7O0FvQmg4REE7RUFDRSxjQUFjO0VBQ2QsbUJoQjRUNEM7QUp1b0Q5Qzs7QW9CMzdEQTtFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2Ysa0JBQTJDO0VBQzNDLGlCQUEwQztBcEI4N0Q1Qzs7QW9CbDhEQTs7RUFRSSxrQkFBMkM7RUFDM0MsaUJBQTBDO0FwQis3RDlDOztBb0J0N0RBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxxQmhCaVM2QztBSndwRC9DOztBb0J0N0RBO0VBQ0Usa0JBQWtCO0VBQ2xCLGtCaEI2UjJDO0VnQjVSM0MscUJoQjJSNkM7QUo4cEQvQzs7QW9CNTdEQTs7RUFRSSxjaEJ6TmM7QUprcEVsQjs7QW9CcjdEQTtFQUNFLGdCQUFnQjtBcEJ3N0RsQjs7QW9CcjdEQTtFQUNFLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLHFCaEI4UTRDO0FKMHFEOUM7O0FvQjU3REE7RUFRSSxnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLHVCaEJ5UTRDO0VnQnhRNUMsY0FBYztBcEJ3N0RsQjs7QXNCcm9FRTtFQUNFLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJsQjJjMEM7RUN0VjFDLGtCQUFXO0VpQm5IWCxjbEJQYTtBSitvRWpCOztBc0Jyb0VFO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2YsdUJsQnN5QnFDO0VrQnJ5QnJDLGlCQUFpQjtFakJ3SGYsbUJBQVc7RWlCdEhiLGdCbEJ1TzZCO0VrQnRPN0IsV2xCeERXO0VrQnlEWCx3Q2xCdEJhO0VPeEJiLHNCUDZOZ0M7QUowOURwQzs7QXNCcG9FSTs7RUFFRSxTQUFrQztBdEJ1b0V4Qzs7QXNCOXFFSTs7OztFQThDRSxjQUFjO0F0QnVvRXBCOztBc0JyckVJO0VBb0RFLHFCbEIxQ1c7RWtCNkNULCtDQUE2QztFQUM3QyxpUkgzQjBFO0VHNEIxRSw0QkFBNEI7RUFDNUIsMkRBQTZEO0VBQzdELGdFSCtCd0Q7QW5Cb21FaEU7O0FzQjlyRUk7RUErREkscUJsQnJEUztFa0JzRFQsZ0RsQnREUztBSnlyRWpCOztBc0Juc0VJO0VBeUVJLDhCQUE4QztFQUM5Qyx3Q0FBc0Q7QXRCOG5FOUQ7O0FzQnhzRUk7RUFtRkksb0NIT3dEO0VHTnhELGtGSE13RDtBbkJtbkVoRTs7QXNCN3NFSTtFQTJGRSxxQmxCakZXO0VrQm9GVCxrREFBb0U7RUFDcEUsdWpCQUE4SjtBdEJvbkV0Szs7QXNCbnRFSTtFQW1HSSxxQmxCekZTO0VrQjBGVCxnRGxCMUZTO0FKOHNFakI7O0FzQnh0RUk7RUE0R0ksY2xCbEdTO0FKa3RFakI7O0FzQjV0RUk7OztFQWlISSxjQUFjO0F0QmluRXRCOztBc0JsdUVJO0VBeUhJLGNsQi9HUztBSjR0RWpCOztBc0J0dUVJO0VBNEhNLHFCbEJsSE87QUpndUVqQjs7QXNCMXVFSTtFQWtJTSxxQkFBa0M7RUM1SnhDLHlCRDZKK0M7QXRCNG1FbkQ7O0FzQi91RUk7RUF5SU0sZ0RsQi9ITztBSnl1RWpCOztBc0JudkVJO0VBNklNLHFCbEJuSU87QUo2dUVqQjs7QXNCdnZFSTtFQXVKSSxxQmxCN0lTO0FKaXZFakI7O0FzQjN2RUk7RUE0Sk0scUJsQmxKTztFa0JtSlAsZ0RsQm5KTztBSnN2RWpCOztBc0JwdkVFO0VBQ0UsYUFBYTtFQUNiLFdBQVc7RUFDWCxtQmxCMmMwQztFQ3RWMUMsa0JBQVc7RWlCbkhYLGNsQlZhO0FKaXdFakI7O0FzQnB2RUU7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZix1QmxCc3lCcUM7RWtCcnlCckMsaUJBQWlCO0VqQndIZixtQkFBVztFaUJ0SGIsZ0JsQnVPNkI7RWtCdE83QixXbEJ4RFc7RWtCeURYLHdDbEJ6QmE7RU9yQmIsc0JQNk5nQztBSnlrRXBDOztBc0JudkVJOztFQUVFLFNBQWtDO0F0QnN2RXhDOztBc0I3eEVJOzs7O0VBOENFLGNBQWM7QXRCc3ZFcEI7O0FzQnB5RUk7RUFvREUscUJsQjdDVztFa0JnRFQsK0NBQTZDO0VBQzdDLDRVSDNCMEU7RUc0QjFFLDRCQUE0QjtFQUM1QiwyREFBNkQ7RUFDN0QsZ0VIK0J3RDtBbkJtdEVoRTs7QXNCN3lFSTtFQStESSxxQmxCeERTO0VrQnlEVCxnRGxCekRTO0FKMnlFakI7O0FzQmx6RUk7RUF5RUksOEJBQThDO0VBQzlDLHdDQUFzRDtBdEI2dUU5RDs7QXNCdnpFSTtFQW1GSSxvQ0hPd0Q7RUdOeEQsa0ZITXdEO0FuQmt1RWhFOztBc0I1ekVJO0VBMkZFLHFCbEJwRlc7RWtCdUZULGtEQUFvRTtFQUNwRSxrbkJBQThKO0F0Qm11RXRLOztBc0JsMEVJO0VBbUdJLHFCbEI1RlM7RWtCNkZULGdEbEI3RlM7QUpnMEVqQjs7QXNCdjBFSTtFQTRHSSxjbEJyR1M7QUpvMEVqQjs7QXNCMzBFSTs7O0VBaUhJLGNBQWM7QXRCZ3VFdEI7O0FzQmoxRUk7RUF5SEksY2xCbEhTO0FKODBFakI7O0FzQnIxRUk7RUE0SE0scUJsQnJITztBSmsxRWpCOztBc0J6MUVJO0VBa0lNLHFCQUFrQztFQzVKeEMseUJENkorQztBdEIydEVuRDs7QXNCOTFFSTtFQXlJTSxnRGxCbElPO0FKMjFFakI7O0FzQmwyRUk7RUE2SU0scUJsQnRJTztBSisxRWpCOztBc0J0MkVJO0VBdUpJLHFCbEJoSlM7QUptMkVqQjs7QXNCMTJFSTtFQTRKTSxxQmxCckpPO0VrQnNKUCxnRGxCdEpPO0FKdzJFakI7O0FvQjduRUE7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLG1CQUFtQjtBcEJnb0VyQjs7QW9Cbm9FQTtFQVNJLFdBQVc7QXBCOG5FZjs7QWU3MUVJO0VLc05KO0lBZU0sYUFBYTtJQUNiLG1CQUFtQjtJQUNuQix1QkFBdUI7SUFDdkIsZ0JBQWdCO0VwQjZuRXBCO0VvQi9vRUY7SUF1Qk0sYUFBYTtJQUNiLGNBQWM7SUFDZCxtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLGdCQUFnQjtFcEIybkVwQjtFb0J0cEVGO0lBZ0NNLHFCQUFxQjtJQUNyQixXQUFXO0lBQ1gsc0JBQXNCO0VwQnluRTFCO0VvQjNwRUY7SUF1Q00scUJBQXFCO0VwQnVuRXpCO0VvQjlwRUY7O0lBNENNLFdBQVc7RXBCc25FZjtFb0JscUVGO0lBa0RNLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLFdBQVc7SUFDWCxlQUFlO0VwQm1uRW5CO0VvQnpxRUY7SUF5RE0sa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxhQUFhO0lBQ2IscUJoQmdMd0M7SWdCL0t4QyxjQUFjO0VwQm1uRWxCO0VvQmhyRUY7SUFpRU0sbUJBQW1CO0lBQ25CLHVCQUF1QjtFcEJrbkUzQjtFb0JwckVGO0lBcUVNLGdCQUFnQjtFcEJrbkVwQjtBQUNGOztBd0JwOEVBO0VBQ0UscUJBQXFCO0VBRXJCLGdCcEJ1UitCO0VvQnRSL0IsY3BCTWdCO0VvQkxoQixrQkFBa0I7RUFHbEIsc0JBQXNCO0VBQ3RCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsNkJBQTJDO0VDdUYzQyx5QnJCNFJrQztFQ2hOOUIsZUFBVztFb0IxRWYsZ0JyQjJMK0I7RU9uUjdCLHNCUDZOZ0M7RWlCL045QixxSWpCaWI2STtBSnloRW5KOztBcUJ0OEVNO0VHZE47SUhlUSxnQkFBZ0I7RXJCMDhFdEI7QUFDRjs7QU1wOUVFO0VrQlVFLGNwQk5jO0VvQk9kLHFCQUFxQjtBeEI4OEV6Qjs7QXdCLzlFQTtFQXNCSSxVQUFVO0VBQ1YsZ0RwQk1hO0FKdThFakI7O0F3QnArRUE7RUE2QkksYXBCa1o2QjtBSnlqRWpDOztBd0J4K0VBO0VBa0NJLGVBQXNEO0F4QjA4RTFEOztBd0I1N0VBOztFQUVFLG9CQUFvQjtBeEIrN0V0Qjs7QXdCdDdFRTtFQzNEQSxXckJDYTtFbUJEWCx5Qm5CNkJhO0VxQjNCZixxQnJCMkJlO0FKMDlFakI7O0FNai9FRTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F6QjgvRTdIOztBeUJsL0VFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCxnREFBaUY7QXpCZy9FdkY7O0F5QjMrRUU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJDYTtFcUJBYixxQnJCQWE7QUo2K0VqQjs7QXlCdCtFRTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXpCa2hGbk47O0F5Qm4rRUk7O0VBS0ksZ0RBQWlGO0F6Qm0rRXpGOztBd0IzOUVFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJPYztFcUJMaEIscUJyQktnQjtBSnFoRmxCOztBTXRoRkU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBekJtaUY3SDs7QXlCdmhGRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsaURBQWlGO0F6QnFoRnZGOztBeUJoaEZFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCckJjO0VxQnNCZCxxQnJCdEJjO0FKd2lGbEI7O0F5QjNnRkU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F6QnVqRm5OOztBeUJ4Z0ZJOztFQUtJLGlEQUFpRjtBekJ3Z0Z6Rjs7QXdCaGdGRTtFQzNEQSxXckJDYTtFbUJEWCx5Qm5Cb0NhO0VxQmxDZixxQnJCa0NlO0FKNmhGakI7O0FNM2pGRTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F6QndrRjdIOztBeUI1akZFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCwrQ0FBaUY7QXpCMGpGdkY7O0F5QnJqRkU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJRYTtFcUJQYixxQnJCT2E7QUpnakZqQjs7QXlCaGpGRTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXpCNGxGbk47O0F5QjdpRkk7O0VBS0ksK0NBQWlGO0F6QjZpRnpGOztBd0JyaUZFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJzQ2E7RXFCcENmLHFCckJvQ2U7QUpna0ZqQjs7QU1obUZFO0VtQkFFLFdyQkxXO0VtQkRYLHlCRURvRjtFQVNwRixxQkFUeUg7QXpCNm1GN0g7O0F5QmptRkU7RUFFRSxXckJaVztFbUJEWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILGdEQUFpRjtBekIrbEZ2Rjs7QXlCMWxGRTtFQUVFLFdyQjFCVztFcUIyQlgseUJyQlVhO0VxQlRiLHFCckJTYTtBSm1sRmpCOztBeUJybEZFOztFQUdFLFdyQnRDVztFcUJ1Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBekJpb0ZuTjs7QXlCbGxGSTs7RUFLSSxnREFBaUY7QXpCa2xGekY7O0F3QjFrRkU7RUMzREEsY3JCVWdCO0VtQlZkLHlCbkJtQ2E7RXFCakNmLHFCckJpQ2U7QUp3bUZqQjs7QU1yb0ZFO0VtQkFFLGNyQkljO0VtQlZkLHlCRURvRjtFQVNwRixxQkFUeUg7QXpCa3BGN0g7O0F5QnRvRkU7RUFFRSxjckJIYztFbUJWZCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILGdEQUFpRjtBekJvb0Z2Rjs7QXlCL25GRTtFQUVFLGNyQmpCYztFcUJrQmQseUJyQk9hO0VxQk5iLHFCckJNYTtBSjJuRmpCOztBeUIxbkZFOztFQUdFLGNyQjdCYztFcUI4QmQseUJBekN1SztFQTZDdksscUJBN0MrTTtBekJzcUZuTjs7QXlCdm5GSTs7RUFLSSxnREFBaUY7QXpCdW5GekY7O0F3Qi9tRkU7RUMzREEsV3JCQ2E7RW1CRFgseUJuQmlDYTtFcUIvQmYscUJyQitCZTtBSitvRmpCOztBTTFxRkU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBekJ1ckY3SDs7QXlCM3FGRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsK0NBQWlGO0F6QnlxRnZGOztBeUJwcUZFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCS2E7RXFCSmIscUJyQklhO0FKa3FGakI7O0F5Qi9wRkU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F6QjJzRm5OOztBeUI1cEZJOztFQUtJLCtDQUFpRjtBekI0cEZ6Rjs7QXdCcHBGRTtFQzNEQSxjckJVZ0I7RW1CVmQseUJuQkVjO0VxQkFoQixxQnJCQWdCO0FKbXRGbEI7O0FNL3NGRTtFbUJBRSxjckJJYztFbUJWZCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F6QjR0RjdIOztBeUJodEZFO0VBRUUsY3JCSGM7RW1CVmQseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCxpREFBaUY7QXpCOHNGdkY7O0F5QnpzRkU7RUFFRSxjckJqQmM7RXFCa0JkLHlCckIxQmM7RXFCMkJkLHFCckIzQmM7QUpzdUZsQjs7QXlCcHNGRTs7RUFHRSxjckI3QmM7RXFCOEJkLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXpCZ3ZGbk47O0F5QmpzRkk7O0VBS0ksaURBQWlGO0F6QmlzRnpGOztBd0J6ckZFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJTYztFcUJQaEIscUJyQk9nQjtBSml2RmxCOztBTXB2RkU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBekJpd0Y3SDs7QXlCcnZGRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsOENBQWlGO0F6Qm12RnZGOztBeUI5dUZFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCbkJjO0VxQm9CZCxxQnJCcEJjO0FKb3dGbEI7O0F5Qnp1RkU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F6QnF4Rm5OOztBeUJ0dUZJOztFQUtJLDhDQUFpRjtBekJzdUZ6Rjs7QXdCeHRGRTtFQ1BBLGNyQjdCZTtFcUI4QmYscUJyQjlCZTtBSml3RmpCOztBTXh4RkU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQmxDYTtFcUJtQ2IscUJyQm5DYTtBSnV3RmpCOztBeUJqdUZFO0VBRUUsK0NyQnhDYTtBSjJ3RmpCOztBeUJodUZFO0VBRUUsY3JCN0NhO0VxQjhDYiw2QkFBNkI7QXpCa3VGakM7O0F5Qi90RkU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCckRhO0VxQnNEYixxQnJCdERhO0FKdXhGakI7O0F5Qi90Rkk7O0VBS0ksK0NyQjdEUztBSjR4RmpCOztBd0J4dkZFO0VDUEEsY3JCbkRnQjtFcUJvRGhCLHFCckJwRGdCO0FKdXpGbEI7O0FNeHpGRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCeERjO0VxQnlEZCxxQnJCekRjO0FKNnpGbEI7O0F5Qmp3RkU7RUFFRSxpRHJCOURjO0FKaTBGbEI7O0F5Qmh3RkU7RUFFRSxjckJuRWM7RXFCb0VkLDZCQUE2QjtBekJrd0ZqQzs7QXlCL3ZGRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckIzRWM7RXFCNEVkLHFCckI1RWM7QUo2MEZsQjs7QXlCL3ZGSTs7RUFLSSxpRHJCbkZVO0FKazFGbEI7O0F3Qnh4RkU7RUNQQSxjckJ0QmU7RXFCdUJmLHFCckJ2QmU7QUowekZqQjs7QU14MUZFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckIzQmE7RXFCNEJiLHFCckI1QmE7QUpnMEZqQjs7QXlCanlGRTtFQUVFLCtDckJqQ2E7QUpvMEZqQjs7QXlCaHlGRTtFQUVFLGNyQnRDYTtFcUJ1Q2IsNkJBQTZCO0F6Qmt5RmpDOztBeUIveEZFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQjlDYTtFcUIrQ2IscUJyQi9DYTtBSmcxRmpCOztBeUIveEZJOztFQUtJLCtDckJ0RFM7QUpxMUZqQjs7QXdCeHpGRTtFQ1BBLGNyQnBCZTtFcUJxQmYscUJyQnJCZTtBSncxRmpCOztBTXgzRkU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQnpCYTtFcUIwQmIscUJyQjFCYTtBSjgxRmpCOztBeUJqMEZFO0VBRUUsZ0RyQi9CYTtBSmsyRmpCOztBeUJoMEZFO0VBRUUsY3JCcENhO0VxQnFDYiw2QkFBNkI7QXpCazBGakM7O0F5Qi96RkU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCNUNhO0VxQjZDYixxQnJCN0NhO0FKODJGakI7O0F5Qi96Rkk7O0VBS0ksZ0RyQnBEUztBSm0zRmpCOztBd0J4MUZFO0VDUEEsY3JCdkJlO0VxQndCZixxQnJCeEJlO0FKMjNGakI7O0FNeDVGRTtFbUJ3REUsY3JCcERjO0VxQnFEZCx5QnJCNUJhO0VxQjZCYixxQnJCN0JhO0FKaTRGakI7O0F5QmoyRkU7RUFFRSwrQ3JCbENhO0FKcTRGakI7O0F5QmgyRkU7RUFFRSxjckJ2Q2E7RXFCd0NiLDZCQUE2QjtBekJrMkZqQzs7QXlCLzFGRTs7RUFHRSxjckJ2RWM7RXFCd0VkLHlCckIvQ2E7RXFCZ0RiLHFCckJoRGE7QUppNUZqQjs7QXlCLzFGSTs7RUFLSSwrQ3JCdkRTO0FKczVGakI7O0F3QngzRkU7RUNQQSxjckJ6QmU7RXFCMEJmLHFCckIxQmU7QUo2NUZqQjs7QU14N0ZFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckI5QmE7RXFCK0JiLHFCckIvQmE7QUptNkZqQjs7QXlCajRGRTtFQUVFLCtDckJwQ2E7QUp1NkZqQjs7QXlCaDRGRTtFQUVFLGNyQnpDYTtFcUIwQ2IsNkJBQTZCO0F6Qms0RmpDOztBeUIvM0ZFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQmpEYTtFcUJrRGIscUJyQmxEYTtBSm03RmpCOztBeUIvM0ZJOztFQUtJLCtDckJ6RFM7QUp3N0ZqQjs7QXdCeDVGRTtFQ1BBLGNyQnhEZ0I7RXFCeURoQixxQnJCekRnQjtBSjQ5RmxCOztBTXg5RkU7RW1Cd0RFLGNyQnBEYztFcUJxRGQseUJyQjdEYztFcUI4RGQscUJyQjlEYztBSmsrRmxCOztBeUJqNkZFO0VBRUUsaURyQm5FYztBSnMrRmxCOztBeUJoNkZFO0VBRUUsY3JCeEVjO0VxQnlFZCw2QkFBNkI7QXpCazZGakM7O0F5Qi81RkU7O0VBR0UsY3JCdkVjO0VxQndFZCx5QnJCaEZjO0VxQmlGZCxxQnJCakZjO0FKay9GbEI7O0F5Qi81Rkk7O0VBS0ksaURyQnhGVTtBSnUvRmxCOztBd0J4N0ZFO0VDUEEsY3JCakRnQjtFcUJrRGhCLHFCckJsRGdCO0FKcS9GbEI7O0FNeC9GRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCdERjO0VxQnVEZCxxQnJCdkRjO0FKMi9GbEI7O0F5Qmo4RkU7RUFFRSw4Q3JCNURjO0FKKy9GbEI7O0F5Qmg4RkU7RUFFRSxjckJqRWM7RXFCa0VkLDZCQUE2QjtBekJrOEZqQzs7QXlCLzdGRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckJ6RWM7RXFCMEVkLHFCckIxRWM7QUoyZ0dsQjs7QXlCLzdGSTs7RUFLSSw4Q3JCakZVO0FKZ2hHbEI7O0F3Qjc4RkE7RUFDRSxnQnBCNk0rQjtFb0I1TS9CLGNwQmpEZTtFb0JrRGYscUJwQjJGNEM7QUpxM0Y5Qzs7QU16aEdFO0VrQjRFRSxjcEJ5RjhEO0VvQnhGOUQsMEJwQnlGK0M7QUp3M0ZuRDs7QXdCeDlGQTtFQVlJLDBCcEJvRitDO0FKNDNGbkQ7O0F3QjU5RkE7RUFpQkksY3BCdEZjO0VvQnVGZCxvQkFBb0I7QXhCKzhGeEI7O0F3QnA4RkE7RUNQRSxvQnJCMlNnQztFQy9ONUIsa0JBQVc7RW9CMUVmLGdCckIrSCtCO0VPdk43QixxQlA4TitCO0FKMDBGbkM7O0F3QnY4RkE7RUNYRSx1QnJCc1NpQztFQzFON0IsbUJBQVc7RW9CMUVmLGdCckJnSStCO0VPeE43QixxQlArTitCO0FKZzFGbkM7O0F3QnI4RkE7RUFDRSxjQUFjO0VBQ2QsV0FBVztBeEJ3OEZiOztBd0IxOEZBO0VBTUksa0JwQndUK0I7QUpncEZuQzs7QXdCbjhGQTs7O0VBSUksV0FBVztBeEJxOEZmOztBMEJobEdBO0VMZ0JNLGdDakJpUDJDO0FKbTFGakQ7O0FxQmhrR007RUtwQk47SUxxQlEsZ0JBQWdCO0VyQm9rR3RCO0FBQ0Y7O0EwQjFsR0E7RUFJSSxVQUFVO0ExQjBsR2Q7O0EwQnRsR0E7RUFFSSxhQUFhO0ExQndsR2pCOztBMEJwbEdBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxnQkFBZ0I7RUxEWiw2QmpCa1B3QztBSnUyRjlDOztBcUJybEdNO0VLTk47SUxPUSxnQkFBZ0I7RXJCeWxHdEI7QUFDRjs7QTBCam1HQTtFQU9JLFFBQVE7RUFDUixZQUFZO0VMTlYsNEJqQm1QdUM7QUprM0Y3Qzs7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aUI7QTNCK3RHdkI7O0EyQnh0R0E7RUFLSSxXQUFXO0VBQ1gsWUFBWTtBM0J1dEdoQjs7QTJCbHRHQTtFRTlHRSxTQUFTO0VBQ1QsZ0JBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQiw2QnpCQ2dCO0FKbTBHbEI7O0EyQmx0R0E7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLHVCdkJvcEJ3QztFdUJucEJ4QyxXQUFXO0VBQ1gsZ0J2QmlLK0I7RXVCaEsvQixjdkJoSGdCO0V1QmlIaEIsbUJBQW1CO0VBRW5CLG1CQUFtQjtFQUNuQiw2QkFBNkI7RUFDN0IsU0FBUztBM0JvdEdYOztBTXowR0U7RXFCb0lFLGN2Qm9uQnFEO0V1Qm5uQnJELHFCQUFxQjtFSi9JckIseUJuQkdjO0FKczFHbEI7O0EyQnJ1R0E7RUFpQ0ksV3ZCcEpXO0V1QnFKWCxxQkFBcUI7RUp0SnJCLHlCbkI2QmE7QUprMEdqQjs7QTJCM3VHQTtFQXdDSSxjdkJ0SmM7RXVCdUpkLG9CQUFvQjtFQUNwQiw2QkFBNkI7QTNCdXNHakM7O0EyQi9yR0E7RUFDRSxjQUFjO0EzQmtzR2hCOztBMkI5ckdBO0VBQ0UsY0FBYztFQUNkLHNCdkI4bEJ3QztFdUI3bEJ4QyxnQkFBZ0I7RXRCQVosbUJBQVc7RXNCRWYsY3ZCektnQjtFdUIwS2hCLG1CQUFtQjtBM0Jpc0dyQjs7QTJCN3JHQTtFQUNFLGNBQWM7RUFDZCx1QnZCb2xCd0M7RXVCbmxCeEMsY3ZCOUtnQjtBSjgyR2xCOztBOEIzM0dBOztFQUVFLGtCQUFrQjtFQUNsQixvQkFBb0I7RUFDcEIsc0JBQXNCO0E5QjgzR3hCOztBOEJsNEdBOztFQU9JLGtCQUFrQjtFQUNsQixjQUFjO0E5Qmc0R2xCOztBTS8zR0U7O0V3QklJLFVBQVU7QTlCZzRHaEI7O0E4Qjc0R0E7Ozs7RUFrQk0sVUFBVTtBOUJrNEdoQjs7QThCNTNHQTtFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2YsMkJBQTJCO0E5QiszRzdCOztBOEJsNEdBO0VBTUksV0FBVztBOUJnNEdmOztBOEI1M0dBOztFQUlJLGlCMUJtTTZCO0FKMHJHakM7O0E4Qmo0R0E7O0VuQkhJLDBCbUJhOEI7RW5CWjlCLDZCbUJZOEI7QTlCNjNHbEM7O0E4QnY0R0E7O0VuQldJLHlCbUJJNkI7RW5CSDdCLDRCbUJHNkI7QTlCODNHakM7O0E4QjkyR0E7RUFDRSx3QkFBbUM7RUFDbkMsdUJBQWtDO0E5QmkzR3BDOztBOEJuM0dBOzs7RUFPSSxjQUFjO0E5QmszR2xCOztBOEIvMkdFO0VBQ0UsZUFBZTtBOUJrM0duQjs7QThCOTJHQTtFQUNFLHVCQUFzQztFQUN0QyxzQkFBcUM7QTlCaTNHdkM7O0E4QjkyR0E7RUFDRSxzQkFBc0M7RUFDdEMscUJBQXFDO0E5QmkzR3ZDOztBOEI3MUdBO0VBQ0Usc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2Qix1QkFBdUI7QTlCZzJHekI7O0E4Qm4yR0E7O0VBT0ksV0FBVztBOUJpMkdmOztBOEJ4MkdBOztFQVlJLGdCMUJrSDZCO0FKK3VHakM7O0E4QjcyR0E7O0VuQnJFSSw2Qm1CdUYrQjtFbkJ0Ri9CLDRCbUJzRitCO0E5QmkyR25DOztBOEJuM0dBOztFbkJuRkkseUJtQjBHNEI7RW5Cekc1QiwwQm1CeUc0QjtBOUJrMkdoQzs7QThCajFHQTs7RUFHSSxnQkFBZ0I7QTlCbTFHcEI7O0E4QnQxR0E7Ozs7RUFPTSxrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLG9CQUFvQjtBOUJzMUcxQjs7QStCLytHQTtFQUNFLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQixXQUFXO0EvQmsvR2I7O0ErQnYvR0E7Ozs7RUFXSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLFNBQVM7RUFDVCxZQUFZO0VBQ1osZ0JBQWdCO0EvQm0vR3BCOztBK0JsZ0hBOzs7Ozs7Ozs7Ozs7RUFvQk0saUIzQmtOMkI7QUoyeUdqQzs7QStCamhIQTs7O0VBNEJJLFVBQVU7QS9CMi9HZDs7QStCdmhIQTtFQWlDSSxVQUFVO0EvQjAvR2Q7O0ErQjNoSEE7O0VwQjBDSSx5Qm9CSm1EO0VwQktuRCw0Qm9CTG1EO0EvQjIvR3ZEOztBK0JqaUhBO0VBNENJLGFBQWE7RUFDYixtQkFBbUI7QS9CeS9HdkI7O0ErQnRpSEE7O0VwQjRCSSwwQm9Cb0I2RTtFcEJuQjdFLDZCb0JtQjZFO0EvQjQvR2pGOztBK0I1aUhBO0VwQjBDSSx5Qm9CT3NFO0VwQk50RSw0Qm9CTXNFO0EvQmdnSDFFOztBK0JqakhBOzs7O0VwQjRCSSwwQm9CNkJnQztFcEI1QmhDLDZCb0I0QmdDO0EvQmdnSHBDOztBK0J6akhBOzs7O0VwQjRCSSwwQm9Cc0NnQztFcEJyQ2hDLDZCb0JxQ2dDO0EvQisvR3BDOztBK0JuL0dBOztFQUVFLGFBQWE7QS9Ccy9HZjs7QStCeC9HQTs7RUFRSSxrQkFBa0I7RUFDbEIsVUFBVTtBL0JxL0dkOztBK0I5L0dBOztFQVlNLFVBQVU7QS9CdS9HaEI7O0ErQm5nSEE7Ozs7Ozs7O0VBb0JJLGlCM0JvSTZCO0FKczNHakM7O0ErQnQvR0E7RUFBdUIsa0IzQmdJVTtBSjAzR2pDOztBK0J6L0dBO0VBQXNCLGlCM0IrSFc7QUo4M0dqQzs7QStCci9HQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIseUIzQjRRa0M7RTJCM1FsQyxnQkFBZ0I7RTFCMkRaLGVBQVc7RTBCekRmLGdCM0JxSytCO0UyQnBLL0IsZ0IzQnlLK0I7RTJCeEsvQixjM0IvR2dCO0UyQmdIaEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix5QjNCdkhnQjtFMkJ3SGhCLHlCM0J0SGdCO0VPT2Qsc0JQNk5nQztBSjI0R3BDOztBK0JyZ0hBOztFQWtCSSxhQUFhO0EvQncvR2pCOztBK0I5K0dBOztFQUVFLGdDWnpCOEQ7QW5CMGdIaEU7O0ErQjkrR0E7Ozs7OztFQU1FLG9CM0J1UGdDO0VDL041QixrQkFBVztFMEJ0QmYsZ0IzQjJFK0I7RU92TjdCLHFCUDhOK0I7QUpnNkduQzs7QStCOStHQTs7RUFFRSxrQ1oxQzhEO0FuQjJoSGhFOztBK0I5K0dBOzs7Ozs7RUFNRSx1QjNCaU9pQztFQzFON0IsbUJBQVc7RTBCTGYsZ0IzQjJEK0I7RU94TjdCLHFCUCtOK0I7QUpnN0duQzs7QStCOStHQTs7RUFFRSxzQkFBMEU7QS9CaS9HNUU7O0ErQnQrR0E7Ozs7Ozs7O0VwQjlKSSwwQm9Cc0s0QjtFcEJySzVCLDZCb0JxSzRCO0EvQjArR2hDOztBK0J2K0dBOzs7Ozs7RXBCM0pJLHlCb0JpSzJCO0VwQmhLM0IsNEJvQmdLMkI7QS9CMitHL0I7O0FnQ25ySEE7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGNBQWM7RUFDZCxrQkFBK0M7RUFDL0Msb0JBQXFFO0VBQ3JFLHlCQUF5QjtBaENzckgzQjs7QWdDbnJIQTtFQUNFLG9CQUFvQjtFQUNwQixrQjVCeWYwQztBSjZyRzVDOztBZ0NuckhBO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxXQUFXO0VBQ1gsVzVCcWYwQztFNEJwZjFDLGVBQW1GO0VBQ25GLFVBQVU7QWhDc3JIWjs7QWdDNXJIQTtFQVNJLFc1QnpCVztFNEIwQlgscUI1QkVhO0VtQjdCYix5Qm5CNkJhO0FKc3JIakI7O0FnQ2xzSEE7RUFvQk0sZ0Q1QlJXO0FKMHJIakI7O0FnQ3RzSEE7RUF5QkkscUI1QnNic0U7QUoydkcxRTs7QWdDMXNIQTtFQTZCSSxXNUI3Q1c7RTRCOENYLHlCNUJrZjhFO0U0QmpmOUUscUI1QmlmOEU7QUpnc0dsRjs7QWdDaHRIQTtFQXVDTSxjNUJqRFk7QUo4dEhsQjs7QWdDcHRIQTtFQTBDUSx5QjVCeERVO0FKc3VIbEI7O0FnQ3BxSEE7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBRWhCLG1CQUFtQjtBaENzcUhyQjs7QWdDMXFIQTtFQVNJLGtCQUFrQjtFQUNsQixZQUFnRjtFQUNoRixhQUErRDtFQUMvRCxjQUFjO0VBQ2QsVzVCd2J3QztFNEJ2YnhDLFk1QnVid0M7RTRCdGJ4QyxvQkFBb0I7RUFDcEIsV0FBVztFQUNYLHNCNUJyRlc7RTRCc0ZYLHlCNUJqRmM7QUpzdkhsQjs7QWdDdnJIQTtFQXdCSSxrQkFBa0I7RUFDbEIsWUFBZ0Y7RUFDaEYsYUFBK0Q7RUFDL0QsY0FBYztFQUNkLFc1Qnlhd0M7RTRCeGF4QyxZNUJ3YXdDO0U0QnZheEMsV0FBVztFQUNYLG1DQUFnRTtBaENtcUhwRTs7QWdDMXBIQTtFckJqR0ksc0JQNk5nQztBSmtpSHBDOztBZ0M5cEhBO0VBT00sa09iN0Q0RTtBbkJ3dEhsRjs7QWdDbHFIQTtFQWFNLHFCNUI3Rlc7RW1CN0JiLHlCbkI2QmE7QUp1dkhqQjs7QWdDdnFIQTtFQWtCTSwrS2J4RTRFO0FuQml1SGxGOztBZ0MzcUhBO0VUN0dJLHdDbkI2QmE7QUordkhqQjs7QWdDL3FIQTtFVDdHSSx3Q25CNkJhO0FKbXdIakI7O0FnQy9vSEE7RUFHSSxrQjVCMForQztBSnN2R25EOztBZ0NucEhBO0VBUU0sOEtibEc0RTtBbkJpdkhsRjs7QWdDdnBIQTtFVGpKSSx3Q25CNkJhO0FKK3dIakI7O0FnQ25vSEE7RUFDRSxxQkFBMkQ7QWhDc29IN0Q7O0FnQ3ZvSEE7RUFLTSxjQUFxRDtFQUNyRCxjNUJrWStFO0U0QmpZL0UsbUJBQW1CO0VBRW5CLHFCNUJnWTZFO0FKcXdHbkY7O0FnQzlvSEE7RUFhTSx3QmJsRTBEO0VhbUUxRCwwQmJuRTBEO0Vhb0UxRCx1QmI1QzBEO0VhNkMxRCx3QmI3QzBEO0VhOEMxRCx5QjVCcExZO0U0QnNMWixxQjVCc1g2RTtFaUJ4aUI3RSx5SWpCMGYrSDtBSjZ6R3JJOztBcUJuekhNO0VXMkpOO0lYMUpRLGdCQUFnQjtFckJ1ekh0QjtBQUNGOztBZ0M5cEhBO0VBMEJNLHNCNUJsTVM7RTRCbU1ULDhCQUE0RTtBaEN3b0hsRjs7QWdDbnFIQTtFVHpLSSx3Q25CNkJhO0FKbXpIakI7O0FnQzFuSEE7RUFDRSxxQkFBcUI7RUFDckIsV0FBVztFQUNYLG1DYnJHOEQ7RWFzRzlELDBDNUJvS2tDO0VDaE45QixlQUFXO0UyQitDZixnQjVCNkQrQjtFNEI1RC9CLGdCNUJpRStCO0U0QmhFL0IsYzVCdk5nQjtFNEJ3TmhCLHNCQUFzQjtFQUN0Qix1TzVCbVcrSTtFNEJsVy9JLHlCNUI3TmdCO0VPT2Qsc0JQNk5nQztFNEJKbEMsZ0JBQWdCO0FoQzJuSGxCOztBZ0Mxb0hBO0VBa0JJLHFCNUJ3UHNFO0U0QnZQdEUsVUFBVTtFQUtSLGdENUJqTlc7QUp5MEhqQjs7QWdDaHBIQTtFQWlDTSxjNUIvT1k7RTRCZ1BaLHNCNUJ2UFM7QUowMkhmOztBZ0NycEhBO0VBd0NJLFlBQVk7RUFDWixzQjVCK0hnQztFNEI5SGhDLHNCQUFzQjtBaENpbkgxQjs7QWdDM3BIQTtFQThDSSxjNUI3UGM7RTRCOFBkLHlCNUJsUWM7QUptM0hsQjs7QWdDaHFIQTtFQW9ESSxhQUFhO0FoQ2duSGpCOztBZ0NwcUhBO0VBeURJLGtCQUFrQjtFQUNsQiwwQjVCeFFjO0FKdTNIbEI7O0FnQzNtSEE7RUFDRSxrQ2JqSzhEO0Vha0s5RCxvQjVCaUhrQztFNEJoSGxDLHVCNUJnSGtDO0U0Qi9HbEMsb0I1QmdIaUM7RUMxTjdCLG1CQUFXO0FMeXRIakI7O0FnQzNtSEE7RUFDRSxnQ2J6SzhEO0VhMEs5RCxtQjVCOEdpQztFNEI3R2pDLHNCNUI2R2lDO0U0QjVHakMsa0I1QjZHZ0M7RUMvTjVCLGtCQUFXO0FMaXVIakI7O0FnQ3RtSEE7RUFDRSxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxtQ2J6TDhEO0VhMEw5RCxnQkFBZ0I7QWhDeW1IbEI7O0FnQ3RtSEE7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxtQ2JqTThEO0Vha005RCxTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLFVBQVU7QWhDeW1IWjs7QWdDaG5IQTtFQVVJLHFCNUJxS3NFO0U0QnBLdEUsZ0Q1Qi9SYTtBSnk0SGpCOztBZ0NybkhBOztFQWlCSSx5QjVCL1RjO0FKdzZIbEI7O0FnQzFuSEE7RUFzQk0saUJqQzNNYztBQ216SHBCOztBZ0M5bkhBO0VBc0JNLG9CakMxTWlCO0FDc3pIdkI7O0FnQ2xvSEE7RUEyQkksMEJBQTBCO0FoQzJtSDlCOztBZ0N2bUhBO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsT0FBTztFQUNQLFVBQVU7RUFDVixtQ2JsTzhEO0VhbU85RCx5QjVCdUNrQztFNEJ0Q2xDLGdCQUFnQjtFQUVoQixnQjVCaEUrQjtFNEJpRS9CLGdCNUI1RCtCO0U0QjZEL0IsYzVCcFZnQjtFNEJxVmhCLHNCNUI1VmE7RTRCNlZiLHlCNUJ6VmdCO0VPT2Qsc0JQNk5nQztBSit0SHBDOztBZ0N4bkhBO0VBbUJJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxVQUFVO0VBQ1YsY0FBYztFQUNkLDZCYnJQNEQ7RWFzUDVELHlCNUJvQmdDO0U0Qm5CaEMsZ0I1QjVFNkI7RTRCNkU3QixjNUJwV2M7RTRCcVdkLGlCQUFpQjtFVDdXakIseUJuQkdjO0U0QjRXZCxvQkFBb0I7RXJCbldwQixrQ3FCb1dnRjtBaEN5bUhwRjs7QWdDL2xIQTtFQUNFLFdBQVc7RUFDWCxjYjNRMkI7RWE0UTNCLFVBQVU7RUFDViw2QkFBNkI7RUFDN0IsZ0JBQWdCO0FoQ2ttSGxCOztBZ0N2bUhBO0VBUUksVUFBVTtBaENtbUhkOztBZ0MzbUhBO0VBWThCLGdFNUJ6V2I7QUo0OEhqQjs7QWdDL21IQTtFQWE4QixnRTVCMVdiO0FKZzlIakI7O0FnQ25uSEE7RUFjOEIsZ0U1QjNXYjtBSm85SGpCOztBZ0N2bkhBO0VBa0JJLFNBQVM7QWhDeW1IYjs7QWdDM25IQTtFQXNCSSxXNUJvTjZDO0U0Qm5ON0MsWTVCbU42QztFNEJsTjdDLG9CQUEwRTtFVGxaMUUseUJuQjZCYTtFNEJ1WGIsUzVCbU4wQztFTzNsQjFDLG1CUDRsQjZDO0VpQjlsQjNDLDRHakIwZitIO0U0QjVHakksZ0JBQWdCO0FoQ3dtSHBCOztBcUJsL0hNO0VXNFdOO0lYM1dRLGdCQUFnQjtFckJzL0h0QjtBQUNGOztBZ0M1b0hBO0VUMVhJLHlCbkI0bUIyRTtBSjg1Ry9FOztBZ0NocEhBO0VBc0NJLFc1QjZMb0M7RTRCNUxwQyxjNUI2THFDO0U0QjVMckMsa0JBQWtCO0VBQ2xCLGU1QjRMdUM7RTRCM0x2Qyx5QjVCaGFjO0U0QmlhZCx5QkFBeUI7RXJCelp6QixtQlBxbEJvQztBSm03R3hDOztBZ0MxcEhBO0VBaURJLFc1QnlMNkM7RTRCeEw3QyxZNUJ3TDZDO0VtQnBtQjdDLHlCbkI2QmE7RTRCaVpiLFM1QnlMMEM7RU8zbEIxQyxtQlA0bEI2QztFaUI5bEIzQyw0R2pCMGYrSDtFNEJsRmpJLGdCQUFnQjtBaEM0bUhwQjs7QXFCaGhJTTtFVzRXTjtJWDNXUSxnQkFBZ0I7RXJCb2hJdEI7QUFDRjs7QWdDMXFIQTtFVDFYSSx5Qm5CNG1CMkU7QUo0N0cvRTs7QWdDOXFIQTtFQWdFSSxXNUJtS29DO0U0QmxLcEMsYzVCbUtxQztFNEJsS3JDLGtCQUFrQjtFQUNsQixlNUJrS3VDO0U0QmpLdkMseUI1QjFiYztFNEIyYmQseUJBQXlCO0VyQm5iekIsbUJQcWxCb0M7QUppOUd4Qzs7QWdDeHJIQTtFQTJFSSxXNUIrSjZDO0U0QjlKN0MsWTVCOEo2QztFNEI3SjdDLGFBQWE7RUFDYixvQjVCckUrQjtFNEJzRS9CLG1CNUJ0RStCO0VtQm5ZL0IseUJuQjZCYTtFNEI4YWIsUzVCNEowQztFTzNsQjFDLG1CUDRsQjZDO0VpQjlsQjNDLDRHakIwZitIO0U0QnJEakksZ0JBQWdCO0FoQ2duSHBCOztBcUJqaklNO0VXNFdOO0lYM1dRLGdCQUFnQjtFckJxakl0QjtBQUNGOztBZ0Mzc0hBO0VUMVhJLHlCbkI0bUIyRTtBSjY5Ry9FOztBZ0Mvc0hBO0VBNkZJLFc1QnNJb0M7RTRCcklwQyxjNUJzSXFDO0U0QnJJckMsa0JBQWtCO0VBQ2xCLGU1QnFJdUM7RTRCcEl2Qyw2QkFBNkI7RUFDN0IseUJBQXlCO0VBQ3pCLG9CQUE2QztBaENzbkhqRDs7QWdDenRIQTtFQXdHSSx5QjVCOWRjO0VPUWQsbUJQcWxCb0M7QUp1L0d4Qzs7QWdDOXRIQTtFQTZHSSxrQkFBa0I7RUFDbEIseUI1QnBlYztFT1FkLG1CUHFsQm9DO0FKNi9HeEM7O0FnQ3B1SEE7RUFvSE0seUI1QnhlWTtBSjRsSWxCOztBZ0N4dUhBO0VBd0hNLGVBQWU7QWhDb25IckI7O0FnQzV1SEE7RUE0SE0seUI1QmhmWTtBSm9tSWxCOztBZ0NodkhBO0VBZ0lNLGVBQWU7QWhDb25IckI7O0FnQ3B2SEE7RUFvSU0seUI1QnhmWTtBSjRtSWxCOztBZ0MvbUhBOzs7RVh6Zk0sNEdqQjBmK0g7QUpvbkhySTs7QXFCMW1JTTtFV3FmTjs7O0lYcGZRLGdCQUFnQjtFckJnbkl0QjtBQUNGOztBaUNqb0lBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBakNvb0lsQjs7QWlDam9JQTtFQUNFLGNBQWM7RUFDZCxvQjdCMHFCc0M7QUowOUd4Qzs7QU1ub0lFO0UyQkdFLHFCQUFxQjtBakNvb0l6Qjs7QWlDMW9JQTtFQVdJLGM3QlhjO0U2QllkLG9CQUFvQjtFQUNwQixlQUFlO0FqQ21vSW5COztBaUMzbklBO0VBQ0UsZ0M3QnpCZ0I7QUp1cElsQjs7QWlDL25JQTtFQUlJLG1CN0JzTTZCO0U2QnJNN0IsNkJBQTZCO0VBQzdCLDZCQUFnRDtFdEJiaEQsK0JQb05nQztFT25OaEMsZ0NQbU5nQztBSjA3SHBDOztBTXpwSUU7RTJCNkJJLGtCQUFrQjtFQUNsQixxQzdCcENZO0FKb3FJbEI7O0FpQzVvSUE7RUFnQk0sYzdCckNZO0U2QnNDWiw2QkFBNkI7RUFDN0IseUJBQXlCO0FqQ2dvSS9COztBaUNscElBOztFQXdCSSxjN0I1Q2M7RTZCNkNkLHNCN0JwRFc7RTZCcURYLGtDN0JyRFc7QUpvcklmOztBaUN6cElBO0VBK0JJLGdCN0IySzZCO0VPak43Qix5QnNCd0M0QjtFdEJ2QzVCLDBCc0J1QzRCO0FqQzhuSWhDOztBaUNybklBO0VBRUksZ0JBQWdCO0VBQ2hCLFNBQVM7RXRCN0RULHNCUDZOZ0M7QUp3OUhwQzs7QWlDM25JQTs7RUFTSSxXN0I5RVc7RTZCK0VYLHlCN0JuRGE7QUowcUlqQjs7QWlDOW1JQTs7RUFHSSxjQUFjO0VBQ2Qsa0JBQWtCO0FqQ2duSXRCOztBaUM1bUlBOztFQUdJLGFBQWE7RUFDYixZQUFZO0VBQ1osa0JBQWtCO0FqQzhtSXRCOztBaUNybUlBO0VBRUksYUFBYTtBakN1bUlqQjs7QWlDem1JQTtFQUtJLGNBQWM7QWpDd21JbEI7O0FrQ2p0SUE7RUFDRSxr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O0FrQ3gzSUE7RUFnQ1ksa0JBQWtCO0FsQzQxSTlCOztBa0M1M0lBO0VBb0NZLHFCOUJ5aEI2QjtFOEJ4aEI3QixvQjlCd2hCNkI7QUpvMEh6Qzs7QWtDajRJQTs7RUEyQ1UsaUJBQWlCO0FsQzIxSTNCOztBa0N0NElBO0VBMERVLGlCQUFpQjtBbENnMUkzQjs7QWtDMTRJQTtFQThEVSx3QkFBd0I7RUFHeEIsZ0JBQWdCO0FsQzgwSTFCOztBa0MvNElBO0VBcUVVLGFBQWE7QWxDODBJdkI7O0FrQ2owSUE7RUFFSSx5QjlCdk5XO0FKMGhKZjs7QU0zaEpFO0U0QjJOSSx5QjlCMU5TO0FKOGhKZjs7QWtDejBJQTtFQVdNLHlCOUJoT1M7QUpraUpmOztBTW5pSkU7RTRCb09NLHlCOUJuT087QUpzaUpmOztBa0NqMUlBO0VBa0JRLHlCOUJ2T087QUowaUpmOztBa0NyMUlBOzs7O0VBMEJNLHlCOUIvT1M7QUppakpmOztBa0M1MUlBO0VBK0JJLHlCOUJwUFc7RThCcVBYLGdDOUJyUFc7QUpzakpmOztBa0NqMklBO0VBb0NJLHlRZjdNOEU7QW5COGdKbEY7O0FrQ3IySUE7RUF3Q0kseUI5QjdQVztBSjhqSmY7O0FrQ3oySUE7RUEwQ00seUI5Qi9QUztBSmtrSmY7O0FNbmtKRTtFNEJtUU0seUI5QmxRTztBSnNrSmY7O0FrQzd6SUE7RUFFSSxXOUJyUlc7QUpvbEpmOztBTTNrSkU7RTRCK1FJLFc5QnhSUztBSndsSmY7O0FrQ3IwSUE7RUFXTSwrQjlCOVJTO0FKNGxKZjs7QU1ubEpFO0U0QndSTSxnQzlCalNPO0FKZ21KZjs7QWtDNzBJQTtFQWtCUSxnQzlCclNPO0FKb21KZjs7QWtDajFJQTs7OztFQTBCTSxXOUI3U1M7QUoybUpmOztBa0N4MUlBO0VBK0JJLCtCOUJsVFc7RThCbVRYLHNDOUJuVFc7QUpnbkpmOztBa0M3MUlBO0VBb0NJLCtRZmpROEU7QW5COGpKbEY7O0FrQ2oySUE7RUF3Q0ksK0I5QjNUVztBSnduSmY7O0FrQ3IySUE7RUEwQ00sVzlCN1RTO0FKNG5KZjs7QU1ubkpFO0U0QnVUTSxXOUJoVU87QUpnb0pmOztBbUNub0pBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsWUFBWTtFQUVaLHFCQUFxQjtFQUNyQixzQi9CSmE7RStCS2IsMkJBQTJCO0VBQzNCLHNDL0JJYTtFT0NYLHNCUDZOZ0M7QUpvNklwQzs7QW1DL29KQTtFQWFJLGVBQWU7RUFDZixjQUFjO0FuQ3NvSmxCOztBbUNwcEpBO0VBa0JJLG1CQUFtQjtFQUNuQixzQkFBc0I7QW5Dc29KMUI7O0FtQ3pwSkE7RUFzQk0sbUJBQW1CO0V4QkNyQiwyQ1F1SDREO0VSdEg1RCw0Q1FzSDREO0FuQmloSmhFOztBbUMvcEpBO0VBMkJNLHNCQUFzQjtFeEJVeEIsK0NReUc0RDtFUnhHNUQsOENRd0c0RDtBbkJ1aEpoRTs7QW1DcnFKQTs7RUFvQ0ksYUFBYTtBbkNzb0pqQjs7QW1DbG9KQTtFQUdFLGNBQWM7RUFHZCxlQUFlO0VBQ2YsZ0IvQmd4QnlDO0FKaTNIM0M7O0FtQzduSkE7RUFDRSxzQi9CMHdCd0M7QUpzM0gxQzs7QW1DN25KQTtFQUNFLHFCQUFnQztFQUNoQyxnQkFBZ0I7QW5DZ29KbEI7O0FtQzduSkE7RUFDRSxnQkFBZ0I7QW5DZ29KbEI7O0FNcnJKRTtFNkIwREUscUJBQXFCO0FuQytuSnpCOztBbUNqb0pBO0VBTUksb0IvQnl2QnVDO0FKczRIM0M7O0FtQ3ZuSkE7RUFDRSx3Qi9CZ3ZCeUM7RStCL3VCekMsZ0JBQWdCO0VBRWhCLHFDL0JyRWE7RStCc0ViLDZDL0J0RWE7QUorckpmOztBbUM5bkpBO0V4QmhFSSwwRHdCd0U4RTtBbkMwbkpsRjs7QW1DdG5KQTtFQUNFLHdCL0JvdUJ5QztFK0JsdUJ6QyxxQy9CaEZhO0UrQmlGYiwwQy9CakZhO0FKeXNKZjs7QW1DNW5KQTtFeEI1RUksMERRZ0k0RDtBbkI0a0poRTs7QW1DaG5KQTtFQUNFLHVCQUFrQztFQUNsQyx1Qi9Ca3RCd0M7RStCanRCeEMsc0JBQWlDO0VBQ2pDLGdCQUFnQjtBbkNtbkpsQjs7QW1DaG5KQTtFQUNFLHVCQUFrQztFQUNsQyxzQkFBaUM7QW5DbW5KbkM7O0FtQy9tSkE7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGdCL0I2c0J5QztFTzV6QnZDLGtDUWdJNEQ7QW5Ca21KaEU7O0FtQy9tSkE7OztFQUdFLGNBQWM7RUFDZCxXQUFXO0FuQ2tuSmI7O0FtQy9tSkE7O0V4QmpISSwyQ1F1SDREO0VSdEg1RCw0Q1FzSDREO0FuQittSmhFOztBbUNobkpBOztFeEJ4R0ksK0NReUc0RDtFUnhHNUQsOENRd0c0RDtBbkJxbkpoRTs7QW1DOW1KQTtFQUVJLG1CL0JxckJ1RDtBSjI3SDNEOztBZS9zSkk7RW9CNkZKO0lBTUksYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixtQi9CK3FCdUQ7SStCOXFCdkQsa0IvQjhxQnVEO0VKbThIekQ7RW1DMW5KRjtJQWFNLFlBQVk7SUFDWixrQi9CeXFCcUQ7SStCeHFCckQsZ0JBQWdCO0lBQ2hCLGlCL0J1cUJxRDtFSnk4SHpEO0FBQ0Y7O0FtQ3ZtSkE7RUFJSSxtQi9CeXBCdUQ7QUo4OEgzRDs7QWVsdUpJO0VvQnVISjtJQVFJLGFBQWE7SUFDYixtQkFBbUI7RW5Dd21KckI7RW1Dam5KRjtJQWNNLFlBQVk7SUFDWixnQkFBZ0I7RW5Dc21KcEI7RW1Dcm5KRjtJQWtCUSxjQUFjO0lBQ2QsY0FBYztFbkNzbUpwQjtFbUN6bkpGO0l4QmpKSSwwQndCMEtvQztJeEJ6S3BDLDZCd0J5S29DO0VuQ29tSnRDO0VtQzduSkY7O0lBOEJZLDBCQUEwQjtFbkNtbUpwQztFbUNqb0pGOztJQW1DWSw2QkFBNkI7RW5Da21KdkM7RW1Dcm9KRjtJeEJuSUkseUJ3QjJLbUM7SXhCMUtuQyw0QndCMEttQztFbkNpbUpyQztFbUN6b0pGOztJQTZDWSx5QkFBeUI7RW5DZ21KbkM7RW1DN29KRjs7SUFrRFksNEJBQTRCO0VuQytsSnRDO0FBQ0Y7O0FtQ25sSkE7RUFFSSxzQi9COGtCc0M7QUp1Z0kxQzs7QWU3d0pJO0VvQnNMSjtJQU1JLGUvQjJsQmlDO0krQjFsQmpDLG1CL0IybEJ1QztJK0IxbEJ2QyxVQUFVO0lBQ1YsU0FBUztFbkNzbEpYO0VtQy9sSkY7SUFZTSxxQkFBcUI7SUFDckIsV0FBVztFbkNzbEpmO0FBQ0Y7O0FtQzdrSkE7RUFDRSxxQkFBcUI7QW5DZ2xKdkI7O0FtQ2psSkE7RUFJSSxnQkFBZ0I7QW5DaWxKcEI7O0FtQ3JsSkE7RUFPTSxnQkFBZ0I7RXhCdk9sQiw2QndCd09pQztFeEJ2T2pDLDRCd0J1T2lDO0FuQ21sSnJDOztBbUMzbEpBO0V4QjlPSSx5QndCMFA4QjtFeEJ6UDlCLDBCd0J5UDhCO0FuQ29sSmxDOztBbUNobUpBO0V4QnZQSSxnQndCdVEwQjtFQUN4QixtQi9COUMyQjtBSmtvSmpDOztBb0M5MkpBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixxQmhDbWlDc0M7RWdDbGlDdEMsbUJoQ3FpQ3NDO0VnQ25pQ3RDLGdCQUFnQjtFQUNoQix5QmhDRWdCO0VPU2Qsc0JQNk5nQztBSnlvSnBDOztBb0M3MkpBO0VBR0ksb0JoQ3loQ3FDO0FKcTFIekM7O0FvQ2ozSkE7RUFNTSxXQUFXO0VBQ1gscUJoQ3FoQ21DO0VnQ3BoQ25DLGNoQ05ZO0VnQ09aLFloQzBoQ3VDO0FKcTFIN0M7O0FvQ3gzSkE7RUFvQkksMEJBQTBCO0FwQ3cySjlCOztBb0M1M0pBO0VBd0JJLHFCQUFxQjtBcEN3Mkp6Qjs7QW9DaDRKQTtFQTRCSSxjaEMxQmM7QUprNEpsQjs7QXFDLzRKQTtFQUNFLGFBQWE7RTdCR2IsZUFBZTtFQUNmLGdCQUFnQjtFR2FkLHNCUDZOZ0M7QUp1cUpwQzs7QXFDaDVKQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsdUJqQ2l4QndDO0VpQ2h4QnhDLGlCakNrTytCO0VpQ2pPL0IsaUJqQ294QnNDO0VpQ254QnRDLGNqQ3VCZTtFaUNyQmYsc0JqQ1BhO0VpQ1FiLHlCakNMZ0I7QUp1NUpsQjs7QXFDMzVKQTtFQVlJLFVBQVU7RUFDVixjakM4SjhEO0VpQzdKOUQscUJBQXFCO0VBQ3JCLHlCakNaYztFaUNhZCxxQmpDWmM7QUorNUpsQjs7QXFDbjZKQTtFQW9CSSxVQUFVO0VBQ1YsVWpDNHdCaUM7RWlDM3dCakMsZ0RqQ09hO0FKNDRKakI7O0FxQy80SkE7RUFHTSxjQUFjO0UxQmFoQiwrQlArTGdDO0VPOUxoQyxrQ1A4TGdDO0FKc3NKcEM7O0FxQ3I1SkE7RTFCRUksZ0NQNk1nQztFTzVNaEMsbUNQNE1nQztBSjJzSnBDOztBcUMxNUpBO0VBY0ksVUFBVTtFQUNWLFdqQ3hDVztFaUN5Q1gseUJqQ2JhO0VpQ2NiLHFCakNkYTtBSjg1SmpCOztBcUNqNkpBO0VBcUJJLGNqQ3hDYztFaUN5Q2Qsb0JBQW9CO0VBRXBCLFlBQVk7RUFDWixzQmpDbERXO0VpQ21EWCxxQmpDaERjO0FKKzdKbEI7O0FzQ3Q4SkU7RUFDRSx1QmxDMHhCc0M7RUMxbUJwQyxrQkFBVztFaUM5S2IsZ0JsQ21PNkI7QUpzdUpqQzs7QXNDcDhKTTtFM0JxQ0YsOEJQZ00rQjtFTy9ML0IsaUNQK0wrQjtBSm91Sm5DOztBc0NwOEpNO0UzQmtCRiwrQlA4TStCO0VPN00vQixrQ1A2TStCO0FKeXVKbkM7O0FzQ3Q5SkU7RUFDRSx1QmxDd3hCcUM7RUN4bUJuQyxtQkFBVztFaUM5S2IsZ0JsQ29PNkI7QUpxdkpqQzs7QXNDcDlKTTtFM0JxQ0YsOEJQaU0rQjtFT2hNL0IsaUNQZ00rQjtBSm12Sm5DOztBc0NwOUpNO0UzQmtCRiwrQlArTStCO0VPOU0vQixrQ1A4TStCO0FKd3ZKbkM7O0F1Q3ArSkE7RUFDRSxxQkFBcUI7RUFDckIscUJuQzQ1QnNDO0VDL3ZCcEMsY0FBVztFa0MzSmIsZ0JuQ3dSK0I7RW1DdlIvQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix3QkFBd0I7RTVCS3RCLHNCUDZOZ0M7RWlCL045QixxSWpCaWI2STtBSnFqSm5KOztBcUJsK0pNO0VrQmZOO0lsQmdCUSxnQkFBZ0I7RXJCcytKdEI7QUFDRjs7QU01K0pFO0VpQ0dJLHFCQUFxQjtBdkM2K0ozQjs7QXVDMy9KQTtFQW9CSSxhQUFhO0F2QzIrSmpCOztBdUN0K0pBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7QXZDeStKWDs7QXVDbCtKQTtFQUNFLG9CbkNpNEJzQztFbUNoNEJ0QyxtQm5DZzRCc0M7RU92NUJwQyxvQlAwNUJxQztBSm1tSXpDOztBdUM3OUpFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcENpQ2U7QUppL0pqQjs7QU1wZ0tFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBeENraEt4Qzs7QXdDcmhLVTtFQVFKLFVBQVU7RUFDViwrQ3BDc0JXO0FKMi9KakI7O0F1QzUrSkU7RUNqREEsV3BDTWE7RW9DTGIseUJwQ1dnQjtBSnNoS2xCOztBTW5oS0U7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0F4Q2lpS3hDOztBd0NwaUtVO0VBUUosVUFBVTtFQUNWLGlEcENBWTtBSmdpS2xCOztBdUMzL0pFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcEN3Q2U7QUp3Z0tqQjs7QU1saUtFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBeENnakt4Qzs7QXdDbmpLVTtFQVFKLFVBQVU7RUFDViwrQ3BDNkJXO0FKa2hLakI7O0F1QzFnS0U7RUNqREEsV3BDTWE7RW9DTGIseUJwQzBDZTtBSnFoS2pCOztBTWpqS0U7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0F4QytqS3hDOztBd0Nsa0tVO0VBUUosVUFBVTtFQUNWLGdEcEMrQlc7QUoraEtqQjs7QXVDemhLRTtFQ2pEQSxjcENlZ0I7RW9DZGhCLHlCcEN1Q2U7QUp1aUtqQjs7QU1oa0tFO0VrQ1ZJLGNwQ1VZO0VvQ1RaLHlCQUFrQztBeEM4a0t4Qzs7QXdDamxLVTtFQVFKLFVBQVU7RUFDViwrQ3BDNEJXO0FKaWpLakI7O0F1Q3hpS0U7RUNqREEsV3BDTWE7RW9DTGIseUJwQ3FDZTtBSndqS2pCOztBTS9rS0U7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0F4QzZsS3hDOztBd0NobUtVO0VBUUosVUFBVTtFQUNWLCtDcEMwQlc7QUpra0tqQjs7QXVDdmpLRTtFQ2pEQSxjcENlZ0I7RW9DZGhCLHlCcENNZ0I7QUpzbUtsQjs7QU05bEtFO0VrQ1ZJLGNwQ1VZO0VvQ1RaLHlCQUFrQztBeEM0bUt4Qzs7QXdDL21LVTtFQVFKLFVBQVU7RUFDVixpRHBDTFk7QUpnbktsQjs7QXVDdGtLRTtFQ2pEQSxXcENNYTtFb0NMYix5QnBDYWdCO0FKOG1LbEI7O0FNN21LRTtFa0NWSSxXcENDUztFb0NBVCx5QkFBa0M7QXhDMm5LeEM7O0F3QzluS1U7RUFRSixVQUFVO0VBQ1YsOENwQ0VZO0FKd25LbEI7O0F5Q3ZvS0E7RUFDRSxrQkFBcUQ7RUFDckQsbUJyQ3l6QnNDO0VxQ3Z6QnRDLHlCckNLZ0I7RU9TZCxxQlA4TitCO0FKODVKbkM7O0FlbGxLSTtFMEI1REo7SUFRSSxrQnJDbXpCb0M7RUp3MUl0QztBQUNGOztBeUN4b0tBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGVBQWU7RTlCSWIsZ0I4QkhzQjtBekMyb0sxQjs7QTBDdHBLQTtFQUNFLGtCQUFrQjtFQUNsQix3QnRDeTlCeUM7RXNDeDlCekMsbUJ0Q3k5QnNDO0VzQ3g5QnRDLDZCQUE2QztFL0JVM0Msc0JQNk5nQztBSm03SnBDOztBMENycEtBO0VBRUUsY0FBYztBMUN1cEtoQjs7QTBDbnBLQTtFQUNFLGdCdEM2UStCO0FKeTRKakM7O0EwQzlvS0E7RUFDRSxtQkFBc0Q7QTFDaXBLeEQ7O0EwQ2xwS0E7RUFLSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixVQUFVO0VBQ1Ysd0J0QzA3QnVDO0VzQ3o3QnZDLGNBQWM7QTFDaXBLbEI7O0EwQ3ZvS0U7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQm9sS2xFOztBMkN4cktFO0VBQ0UseUJBQXFDO0EzQzJyS3pDOztBMkN4cktFO0VBQ0UsY0FBMEI7QTNDMnJLOUI7O0EwQ3JwS0U7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQmttS2xFOztBMkN0c0tFO0VBQ0UseUJBQXFDO0EzQ3lzS3pDOztBMkN0c0tFO0VBQ0UsY0FBMEI7QTNDeXNLOUI7O0EwQ25xS0U7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQmduS2xFOztBMkNwdEtFO0VBQ0UseUJBQXFDO0EzQ3V0S3pDOztBMkNwdEtFO0VBQ0UsY0FBMEI7QTNDdXRLOUI7O0EwQ2pyS0U7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQjhuS2xFOztBMkNsdUtFO0VBQ0UseUJBQXFDO0EzQ3F1S3pDOztBMkNsdUtFO0VBQ0UsY0FBMEI7QTNDcXVLOUI7O0EwQy9yS0U7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQjRvS2xFOztBMkNodktFO0VBQ0UseUJBQXFDO0EzQ212S3pDOztBMkNodktFO0VBQ0UsY0FBMEI7QTNDbXZLOUI7O0EwQzdzS0U7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQjBwS2xFOztBMkM5dktFO0VBQ0UseUJBQXFDO0EzQ2l3S3pDOztBMkM5dktFO0VBQ0UsY0FBMEI7QTNDaXdLOUI7O0EwQzN0S0U7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQndxS2xFOztBMkM1d0tFO0VBQ0UseUJBQXFDO0EzQyt3S3pDOztBMkM1d0tFO0VBQ0UsY0FBMEI7QTNDK3dLOUI7O0EwQ3p1S0U7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQnNyS2xFOztBMkMxeEtFO0VBQ0UseUJBQXFDO0EzQzZ4S3pDOztBMkMxeEtFO0VBQ0UsY0FBMEI7QTNDNnhLOUI7O0E0Q3J5S0U7RUFDRTtJQUFPLDJCQUF1QztFNUN5eUtoRDtFNEN4eUtFO0lBQUssd0JBQXdCO0U1QzJ5Sy9CO0FBQ0Y7O0E0Q3h5S0E7RUFDRSxhQUFhO0VBQ2IsWXhDaytCc0M7RXdDaitCdEMsZ0JBQWdCO0VBQ2hCLGNBQWM7RXZDd0tWLGtCQUFXO0V1Q3RLZix5QnhDTGdCO0VPU2Qsc0JQNk5nQztBSjJrS3BDOztBNEN2eUtBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsZ0JBQWdCO0VBQ2hCLFd4Q2pCYTtFd0NrQmIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix5QnhDUWU7RWlCbkJYLDJCakJvK0I0QztBSmsxSWxEOztBcUJsektNO0V1QkROO0l2QkVRLGdCQUFnQjtFckJzekt0QjtBQUNGOztBNEM3eUtBO0VyQllFLHFNQUE2STtFcUJWN0ksMEJ4QzI4QnNDO0FKcTJJeEM7O0E0QzV5S0U7RUFDRSxrREFBOEQ7QTVDK3lLbEU7O0E0QzV5S007RUFKSjtJQUtNLGVBQWU7RTVDZ3pLckI7QUFDRjs7QTZDMzFLQTtFQUNFLGFBQWE7RUFDYix1QkFBdUI7QTdDODFLekI7O0E2QzMxS0E7RUFDRSxPQUFPO0E3QzgxS1Q7O0E4Q2gyS0E7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBR3RCLGVBQWU7RUFDZixnQkFBZ0I7RW5DUWQsc0JQNk5nQztBSjZuS3BDOztBOEN4MUtBO0VBQ0UsV0FBVztFQUNYLGMxQ1JnQjtFMENTaEIsbUJBQW1CO0E5QzIxS3JCOztBTWwyS0U7RXdDV0UsVUFBVTtFQUNWLGMxQ2RjO0UwQ2VkLHFCQUFxQjtFQUNyQix5QjFDdEJjO0FKaTNLbEI7O0E4Q3IyS0E7RUFjSSxjMUNsQmM7RTBDbUJkLHlCMUMxQmM7QUpxM0tsQjs7QThDbDFLQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsd0IxQ2k5QnlDO0UwQzk4QnpDLHNCMUMzQ2E7RTBDNENiLHNDMUNsQ2E7QUpxM0tmOztBOEMxMUtBO0VuQ2pCSSwrQm1DMkJrQztFbkMxQmxDLGdDbUMwQmtDO0E5Q3ExS3RDOztBOEMvMUtBO0VuQ0hJLG1DbUNpQnFDO0VuQ2hCckMsa0NtQ2dCcUM7QTlDczFLekM7O0E4Q3AyS0E7RUFtQkksYzFDbERjO0UwQ21EZCxvQkFBb0I7RUFDcEIsc0IxQzFEVztBSis0S2Y7O0E4QzEyS0E7RUEwQkksVUFBVTtFQUNWLFcxQ2hFVztFMENpRVgseUIxQ3JDYTtFMENzQ2IscUIxQ3RDYTtBSjAzS2pCOztBOENqM0tBO0VBaUNJLG1CQUFtQjtBOUNvMUt2Qjs7QThDcjNLQTtFQW9DTSxnQjFDNEoyQjtFMEMzSjNCLHFCMUMySjJCO0FKMHJLakM7O0E4Q3YwS0k7RUFDRSxtQkFBbUI7QTlDMDBLekI7O0E4QzMwS0k7RW5DdEJBLGtDUHNLZ0M7RU9sTGhDLDBCbUN3Q3dDO0E5QzAwSzVDOztBOENoMUtJO0VuQ2xDQSxnQ1BrTGdDO0VPdEtoQyw0Qm1DaUMwQztBOUMwMEs5Qzs7QThDcjFLSTtFQWVNLGFBQWE7QTlDMDBLdkI7O0E4Q3oxS0k7RUFtQk0scUIxQzBIdUI7RTBDekh2QixvQkFBb0I7QTlDMDBLOUI7O0E4QzkxS0k7RUF1QlEsaUIxQ3NIcUI7RTBDckhyQixzQjFDcUhxQjtBSnN0S2pDOztBZXQ0S0k7RStCbUNBO0lBQ0UsbUJBQW1CO0U5Q3UyS3ZCO0U4Q3gyS0U7SW5DdEJBLGtDUHNLZ0M7SU9sTGhDLDBCbUN3Q3dDO0U5Q3MySzFDO0U4QzUyS0U7SW5DbENBLGdDUGtMZ0M7SU90S2hDLDRCbUNpQzBDO0U5Q3EySzVDO0U4Q2gzS0U7SUFlTSxhQUFhO0U5Q28yS3JCO0U4Q24zS0U7SUFtQk0scUIxQzBIdUI7STBDekh2QixvQkFBb0I7RTlDbTJLNUI7RThDdjNLRTtJQXVCUSxpQjFDc0hxQjtJMENySHJCLHNCMUNxSHFCO0VKOHVLL0I7QUFDRjs7QWUvNUtJO0UrQm1DQTtJQUNFLG1CQUFtQjtFOUNnNEt2QjtFOENqNEtFO0luQ3RCQSxrQ1BzS2dDO0lPbExoQywwQm1Dd0N3QztFOUMrM0sxQztFOENyNEtFO0luQ2xDQSxnQ1BrTGdDO0lPdEtoQyw0Qm1DaUMwQztFOUM4M0s1QztFOEN6NEtFO0lBZU0sYUFBYTtFOUM2M0tyQjtFOEM1NEtFO0lBbUJNLHFCMUMwSHVCO0kwQ3pIdkIsb0JBQW9CO0U5QzQzSzVCO0U4Q2g1S0U7SUF1QlEsaUIxQ3NIcUI7STBDckhyQixzQjFDcUhxQjtFSnV3Sy9CO0FBQ0Y7O0FleDdLSTtFK0JtQ0E7SUFDRSxtQkFBbUI7RTlDeTVLdkI7RThDMTVLRTtJbkN0QkEsa0NQc0tnQztJT2xMaEMsMEJtQ3dDd0M7RTlDdzVLMUM7RThDOTVLRTtJbkNsQ0EsZ0NQa0xnQztJT3RLaEMsNEJtQ2lDMEM7RTlDdTVLNUM7RThDbDZLRTtJQWVNLGFBQWE7RTlDczVLckI7RThDcjZLRTtJQW1CTSxxQjFDMEh1QjtJMEN6SHZCLG9CQUFvQjtFOUNxNUs1QjtFOEN6NktFO0lBdUJRLGlCMUNzSHFCO0kwQ3JIckIsc0IxQ3FIcUI7RUpneUsvQjtBQUNGOztBZWo5S0k7RStCbUNBO0lBQ0UsbUJBQW1CO0U5Q2s3S3ZCO0U4Q243S0U7SW5DdEJBLGtDUHNLZ0M7SU9sTGhDLDBCbUN3Q3dDO0U5Q2k3SzFDO0U4Q3Y3S0U7SW5DbENBLGdDUGtMZ0M7SU90S2hDLDRCbUNpQzBDO0U5Q2c3SzVDO0U4QzM3S0U7SUFlTSxhQUFhO0U5Qys2S3JCO0U4Qzk3S0U7SUFtQk0scUIxQzBIdUI7STBDekh2QixvQkFBb0I7RTlDODZLNUI7RThDbDhLRTtJQXVCUSxpQjFDc0hxQjtJMENySHJCLHNCMUNxSHFCO0VKeXpLL0I7QUFDRjs7QWUxK0tJO0UrQm1DQTtJQUNFLG1CQUFtQjtFOUMyOEt2QjtFOEM1OEtFO0luQ3RCQSxrQ1BzS2dDO0lPbExoQywwQm1Dd0N3QztFOUMwOEsxQztFOENoOUtFO0luQ2xDQSxnQ1BrTGdDO0lPdEtoQyw0Qm1DaUMwQztFOUN5OEs1QztFOENwOUtFO0lBZU0sYUFBYTtFOUN3OEtyQjtFOEN2OUtFO0lBbUJNLHFCMUMwSHVCO0kwQ3pIdkIsb0JBQW9CO0U5Q3U4SzVCO0U4QzM5S0U7SUF1QlEsaUIxQ3NIcUI7STBDckhyQixzQjFDcUhxQjtFSmsxSy9CO0FBQ0Y7O0E4QzE3S0E7RW5DbkhJLGdCbUNvSHNCO0E5QzY3SzFCOztBOEM5N0tBO0VBSUkscUIxQ21HNkI7QUoyMUtqQzs7QThDbDhLQTtFQU9NLHNCQUFzQjtBOUMrN0s1Qjs7QStDeGtMRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBbkJ1K0tsRTs7QU1oa0xFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QS9DMmtMakQ7O0ErQ2xsTEU7RUFXTSxjaERvRU87RWdEbkVQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QW5Cay9LbEU7O0ErQ3hsTEU7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QW5CdS9LbEU7O0FNaGxMRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0EvQzJsTGpEOztBK0NsbUxFO0VBV00sY2hEb0VPO0VnRG5FUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0FuQmtnTGxFOztBK0N4bUxFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FuQnVnTGxFOztBTWhtTEU7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBL0MybUxqRDs7QStDbG5MRTtFQVdNLGNoRG9FTztFZ0RuRVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbkJraExsRTs7QStDeG5MRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBbkJ1aExsRTs7QU1obkxFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QS9DMm5MakQ7O0ErQ2xvTEU7RUFXTSxjaERvRU87RWdEbkVQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QW5Ca2lMbEU7O0ErQ3hvTEU7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QW5CdWlMbEU7O0FNaG9MRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0EvQzJvTGpEOztBK0NscExFO0VBV00sY2hEb0VPO0VnRG5FUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0FuQmtqTGxFOztBK0N4cExFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FuQnVqTGxFOztBTWhwTEU7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBL0MycExqRDs7QStDbHFMRTtFQVdNLGNoRG9FTztFZ0RuRVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbkJra0xsRTs7QStDeHFMRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBbkJ1a0xsRTs7QU1ocUxFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QS9DMnFMakQ7O0ErQ2xyTEU7RUFXTSxjaERvRU87RWdEbkVQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QW5Ca2xMbEU7O0ErQ3hyTEU7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QW5CdWxMbEU7O0FNaHJMRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0EvQzJyTGpEOztBK0Nsc0xFO0VBV00sY2hEb0VPO0VnRG5FUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0FuQmttTGxFOztBZ0Qzc0xBO0VBQ0UsWUFBWTtFM0NtTFIsaUJBQVc7RTJDakxmLGdCNUM4UitCO0U0QzdSL0IsY0FBYztFQUNkLFc1Q1lhO0U0Q1hiLHlCNUNDYTtFNENBYixXQUFXO0FoRDhzTGI7O0FNenNMRTtFMENERSxXNUNNVztFNENMWCxxQkFBcUI7QWhEOHNMekI7O0FNMXNMRTtFMENDSSxZQUFZO0FoRDZzTGxCOztBZ0Rsc0xBO0VBQ0UsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixTQUFTO0FoRHFzTFg7O0FnRC9yTEE7RUFDRSxvQkFBb0I7QWhEa3NMdEI7O0FpRHh1TEE7RUFHRSxpQjdDMjRCdUM7RTZDMTRCdkMsZ0I3QzA0QnVDO0VDMXRCbkMsbUJBQVc7RTRDN0tmLDJDN0NBYTtFNkNDYiw0QkFBNEI7RUFDNUIsb0M3QzQ0Qm1EO0U2QzM0Qm5ELGdEN0NPYTtFNkNOYixVQUFVO0V0Q09SLHNCUG80QnNDO0FKODFKMUM7O0FpRHB2TEE7RUFlSSxzQjdDZzRCc0M7QUp5MkoxQzs7QWlEeHZMQTtFQW1CSSxVQUFVO0FqRHl1TGQ7O0FpRDV2TEE7RUF1QkksY0FBYztFQUNkLFVBQVU7QWpEeXVMZDs7QWlEandMQTtFQTRCSSxhQUFhO0FqRHl1TGpCOztBaURydUxBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix3QjdDNDJCd0M7RTZDMzJCeEMsYzdDdkJnQjtFNkN3QmhCLDJDN0M5QmE7RTZD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LGNBQWM7RUFDZCxXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLG1CQUFtQjtBckRrbU16Qjs7QXFEN2xNQTtFQUNFLHFCakRnMkJ1QztBSmd3S3pDOztBcURqbU1BO0VBSUksMkJsQ3lHNEQ7QW5Cdy9MaEU7O0FxRHJtTUE7RUFPTSxTQUFTO0VBQ1QsNkJBQWlFO0VBQ2pFLHFDakQyMUJpRTtBSnV3S3ZFOztBcUQzbU1BO0VBYU0sV2pEMEwyQjtFaUR6TDNCLDZCQUFpRTtFQUNqRSxzQmpEN0NTO0FKK29NZjs7QXFEN2xNQTtFQUNFLG1CakQ0MEJ1QztBSm94S3pDOztBcURqbU1BO0VBSUkseUJsQ3FGNEQ7RWtDcEY1RCxhakR3MEJxQztFaUR2MEJyQyxZakRzMEJvQztFaURyMEJwQyxnQkFBZ0M7QXJEaW1NcEM7O0FxRHhtTUE7RUFVTSxPQUFPO0VBQ1Asb0NBQTZGO0VBQzdGLHVDakRvMEJpRTtBSjh4S3ZFOztBcUQ5bU1BO0VBZ0JNLFNqRG1LMkI7RWlEbEszQixvQ0FBNkY7RUFDN0Ysd0JqRHBFUztBSnNxTWY7O0FxRDdsTUE7RUFDRSxrQmpEcXpCdUM7QUoyeUt6Qzs7QXFEam1NQTtFQUlJLHdCbEM4RDREO0FuQm1pTWhFOztBcURybU1BO0VBT00sTUFBTTtFQUNOLG9DQUE2RjtFQUM3Rix3Q2pEZ3pCaUU7QUprekt2RTs7QXFEM21NQTtFQWFNLFFqRCtJMkI7RWlEOUkzQixvQ0FBNkY7RUFDN0YseUJqRHhGUztBSjByTWY7O0FxRGpuTUE7RUFxQkksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsY0FBYztFQUNkLFdqRDR4Qm9DO0VpRDN4QnBDLG9CQUF1QztFQUN2QyxXQUFXO0VBQ1gsZ0NqRGd4QnVEO0FKZzFLM0Q7O0FxRDVsTUE7RUFDRSxvQmpEcXhCdUM7QUowMEt6Qzs7QXFEaG1NQTtFQUlJLDBCbEM4QjREO0VrQzdCNUQsYWpEaXhCcUM7RWlEaHhCckMsWWpEK3dCb0M7RWlEOXdCcEMsZ0JBQWdDO0FyRGdtTXBDOztBcUR2bU1BO0VBVU0sUUFBUTtFQUNSLG9DakQyd0JtQztFaUQxd0JuQyxzQ2pENndCaUU7QUpvMUt2RTs7QXFEN21NQTtFQWdCTSxVakQ0RzJCO0VpRDNHM0Isb0NqRHF3Qm1DO0VpRHB3Qm5DLHVCakQzSFM7QUo0dE1mOztBcUQza01BO0VBQ0UsdUJqRHN1QndDO0VpRHJ1QnhDLGdCQUFnQjtFaEQwQlosZUFBVztFZ0R2QmYseUJqRCt0QnlEO0VpRDl0QnpELGdDQUF5RTtFMUNuSXZFLDBDUXVINEQ7RVJ0SDVELDJDUXNINEQ7QW5CMmxNaEU7O0FxRHJsTUE7RUFVSSxhQUFhO0FyRCtrTWpCOztBcUQza01BO0VBQ0UsdUJqRHd0QndDO0VpRHZ0QnhDLGNqRHhKZ0I7QUpzdU1sQjs7QXNEenVNQTtFQUNFLGtCQUFrQjtBdEQ0dU1wQjs7QXNEenVNQTtFQUNFLG1CQUFtQjtBdEQ0dU1yQjs7QXNEenVNQTtFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsZ0JBQWdCO0F0RDR1TWxCOztBdURud01FO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0F2RHN3TWY7O0FzRDl1TUE7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLFdBQVc7RUFDWCxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLDJCQUEyQjtFakNsQnZCLHNDakIyakNrRjtBSnlzS3hGOztBcUJod01NO0VpQ1FOO0lqQ1BRLGdCQUFnQjtFckJvd010QjtBQUNGOztBc0Rwdk1BOzs7RUFHRSxjQUFjO0F0RHV2TWhCOztBc0Rwdk1BOztFQUVFLDJCQUEyQjtBdER1dk03Qjs7QXNEcHZNQTs7RUFFRSw0QkFBNEI7QXREdXZNOUI7O0FzRC91TUE7RUFFSSxVQUFVO0VBQ1YsNEJBQTRCO0VBQzVCLGVBQWU7QXREaXZNbkI7O0FzRHJ2TUE7OztFQVVJLFVBQVU7RUFDVixVQUFVO0F0RGl2TWQ7O0FzRDV2TUE7O0VBZ0JJLFVBQVU7RUFDVixVQUFVO0VqQzVEUiwyQmpCMGpDa0M7QUpvdkt4Qzs7QXFCMXlNTTtFaUN1Q047O0lqQ3RDUSxnQkFBZ0I7RXJCK3lNdEI7QUFDRjs7QXNEL3VNQTs7RUFFRSxrQkFB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OC9NeEQ7O0EwRGhnTkU7RUFDRSxvQ0FBbUM7QTFEbWdOdkM7O0FNei9NRTs7O0VvRExJLG9DQUFnRDtBMURvZ050RDs7QTBEMWdORTtFQUNFLG9DQUFtQztBMUQ2Z052Qzs7QU1uZ05FOzs7RW9ETEksb0NBQWdEO0ExRDhnTnREOztBMERwaE5FO0VBQ0Usb0NBQW1DO0ExRHVoTnZDOztBTTdnTkU7OztFb0RMSSxvQ0FBZ0Q7QTFEd2hOdEQ7O0EwRDloTkU7RUFDRSxvQ0FBbUM7QTFEaWlOdkM7O0FNdmhORTs7O0VvRExJLG9DQUFnRDtBMURraU50RDs7QTBEeGlORTtFQUNFLG9DQUFtQztBMUQyaU52Qzs7QU1qaU5FOzs7RW9ETEksb0NBQWdEO0ExRDRpTnREOztBMERsak5FO0VBQ0Usb0NBQW1DO0ExRHFqTnZDOztBTTNpTkU7OztFb0RMSSxvQ0FBZ0Q7QTFEc2pOdEQ7O0EwRDVqTkU7RUFDRSxvQ0FBbUM7QTFEK2pOdkM7O0FNcmpORTs7O0VvRExJLG9DQUFnRDtBMURna050RDs7QTBEdGtORTtFQUNFLG9DQUFtQztBMUR5a052Qzs7QU0vak5FOzs7RW9ETEksb0NBQWdEO0ExRDBrTnREOztBMkR6a05BO0VBQ0Usb0NBQW1DO0EzRDRrTnJDOztBMkR6a05BO0VBQ0Usd0NBQXdDO0EzRDRrTjFDOztBNER2bE5BO0VBQWtCLG9DQUFvRDtBNUQybE50RTs7QTREMWxOQTtFQUFrQix3Q0FBd0Q7QTVEOGxOMUU7O0E0RDdsTkE7RUFBa0IsMENBQTBEO0E1RGltTjVFOztBNERobU5BO0VBQWtCLDJDQUEyRDtBNURvbU43RTs7QTREbm1OQTtFQUFrQix5Q0FBeUQ7QTVEdW1OM0U7O0E0RHJtTkE7RUFBbUIsb0JBQW9CO0E1RHltTnZDOztBNER4bU5BO0VBQW1CLHdCQUF3QjtBNUQ0bU4zQzs7QTREM21OQTtFQUFtQiwwQkFBMEI7QTVEK21ON0M7O0E0RDltTkE7RUFBbUIsMkJBQTJCO0E1RGtuTjlDOztBNERqbk5BO0VBQW1CLHlCQUF5QjtBNURxbk41Qzs7QTREbG5ORTtFQUNFLGdDQUErQjtBNURxbk5uQzs7QTREdG5ORTtFQUNFLGdDQUErQjtBNUR5bk5uQzs7QTREMW5ORTtFQUNFLGdDQUErQjtBNUQ2bk5uQzs7QTREOW5ORTtFQUNFLGdDQUErQjtBNURpb05uQzs7QTREbG9ORTtFQUNFLGdDQUErQjtBNURxb05uQzs7QTREdG9ORTtFQUNFLGdDQUErQjtBNUR5b05uQzs7QTREMW9ORTtFQUNFLGdDQUErQjtBNUQ2b05uQzs7QTREOW9ORTtFQUNFLGdDQUErQjtBNURpcE5uQzs7QTREN29OQTtFQUNFLGdDQUErQjtBNURncE5qQzs7QTREem9OQTtFQUNFLGdDQUEyQztBNUQ0b043Qzs7QTREem9OQTtFQUNFLGlDQUF3QztBNUQ0b04xQzs7QTREem9OQTtFQUNFLDBDQUFpRDtFQUNqRCwyQ0FBa0Q7QTVENG9OcEQ7O0E0RHpvTkE7RUFDRSwyQ0FBa0Q7RUFDbEQsOENBQXFEO0E1RDRvTnZEOztBNER6b05BO0VBQ0UsOENBQXFEO0VBQ3JELDZDQUFvRDtBNUQ0b050RDs7QTREem9OQTtFQUNFLDBDQUFpRDtFQUNqRCw2Q0FBb0Q7QTVENG9OdEQ7O0E0RHpvTkE7RUFDRSxnQ0FBMkM7QTVENG9ON0M7O0E0RHpvTkE7RUFDRSw2QkFBNkI7QTVENG9OL0I7O0E0RHpvTkE7RUFDRSwrQkFBdUM7QTVENG9OekM7O0E0RHpvTkE7RUFDRSwyQkFBMkI7QTVENG9ON0I7O0F1RHB0TkU7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLFdBQVc7QXZEdXROZjs7QTZEaHROTTtFQUF3Qix3QkFBMEI7QTdEb3ROeEQ7O0E2RHB0Tk07RUFBd0IsMEJBQTBCO0E3RHd0TnhEOztBNkR4dE5NO0VBQXdCLGdDQUEwQjtBN0Q0dE54RDs7QTZENXROTTtFQUF3Qix5QkFBMEI7QTdEZ3VOeEQ7O0E2RGh1Tk07RUFBd0IseUJBQTBCO0E3RG91TnhEOztBNkRwdU5NO0VBQXdCLDZCQUEwQjtBN0R3dU54RDs7QTZEeHVOTTtFQUF3Qiw4QkFBMEI7QTdENHVOeEQ7O0E2RDV1Tk07RUFBd0Isd0JBQTBCO0E3RGd2TnhEOztBNkRodk5NO0VBQXdCLCtCQUEwQjtBN0Rvdk54RDs7QWVuc05JO0U4Q2pERTtJQUF3Qix3QkFBMEI7RTdEeXZOdEQ7RTZEenZOSTtJQUF3QiwwQkFBMEI7RTdENHZOdEQ7RTZENXZOSTtJQUF3QixnQ0FBMEI7RTdEK3ZOdEQ7RTZEL3ZOSTtJQUF3Qix5QkFBMEI7RTdEa3dOdEQ7RTZEbHdOSTtJQUF3Qix5QkFBMEI7RTdEcXdOdEQ7RTZEcndOSTtJQUF3Qiw2QkFBMEI7RTdEd3dOdEQ7RTZEeHdOSTtJQUF3Qiw4QkFBMEI7RTdEMndOdEQ7RTZEM3dOSTtJQUF3Qix3QkFBMEI7RTdEOHdOdEQ7RTZEOXdOSTtJQUF3QiwrQkFBMEI7RTdEaXhOdEQ7QUFDRjs7QWVqdU5JO0U4Q2pERTtJQUF3Qix3QkFBMEI7RTdEdXhOdEQ7RTZEdnhOSTtJQUF3QiwwQkFBMEI7RTdEMHhOdEQ7RTZEMXhOSTtJQUF3QixnQ0FBMEI7RTdENnhOdEQ7RTZEN3hOSTtJQUF3Qix5QkFBMEI7RTdEZ3lOdEQ7RTZEaHlOSTtJQUF3Qix5QkFBMEI7RTdEbXlOdEQ7RTZEbnlOSTtJQUF3Qiw2QkFBMEI7RTdEc3lOdEQ7RTZEdHlOSTtJQUF3Qiw4QkFBMEI7RTdEeXlOdEQ7RTZEenlOSTtJQUF3Qix3QkFBMEI7RTdENHlOdEQ7RTZENXlOSTtJQUF3QiwrQkFBMEI7RTdEK3lOdEQ7QUFDRjs7QWUvdk5JO0U4Q2pERTtJQUF3Qix3QkFBMEI7RTdEcXpOdEQ7RTZEcnpOSTtJQUF3QiwwQkFBMEI7RTdEd3pOdEQ7RTZEeHpOSTtJQUF3QixnQ0FBMEI7RTdEMnpOdEQ7RTZEM3pOSTtJQUF3Qix5QkFBMEI7RTdEOHpOdEQ7RTZEOXpOSTtJQUF3Qix5QkFBMEI7RTdEaTBOdEQ7RTZEajBOSTtJQUF3Qiw2QkFBMEI7RTdEbzBOdEQ7RTZEcDBOSTtJQUF3Qiw4QkFBMEI7RTdEdTBOdEQ7RTZEdjBOSTtJQUF3Qix3QkFBMEI7RTdEMDBOdEQ7RTZEMTBOSTtJQUF3QiwrQkFBMEI7RTdENjBOdEQ7QUFDRjs7QWU3eE5JO0U4Q2pERTtJQUF3Qix3QkFBMEI7RTdEbTFOdEQ7RTZEbjFOSTtJQUF3QiwwQkFBMEI7RTdEczFOdEQ7RTZEdDFOSTtJQUF3QixnQ0FBMEI7RTdEeTFOdEQ7RTZEejFOSTtJQUF3Qix5QkFBMEI7RTdENDFOdEQ7RTZENTFOSTtJQUF3Qix5QkFBMEI7RTdEKzFOdEQ7RTZELzFOSTtJQUF3Qiw2QkFBMEI7RTdEazJOdEQ7RTZEbDJOSTtJQUF3Qiw4QkFBMEI7RTdEcTJOdEQ7RTZEcjJOSTtJQUF3Qix3QkFBMEI7RTdEdzJOdEQ7RTZEeDJOSTtJQUF3QiwrQkFBMEI7RTdEMjJOdEQ7QUFDRjs7QWUzek5JO0U4Q2pERTtJQUF3Qix3QkFBMEI7RTdEaTNOdEQ7RTZEajNOSTtJQUF3QiwwQkFBMEI7RTdEbzNOdEQ7RTZEcDNOSTtJQUF3QixnQ0FBMEI7RTdEdTNOdEQ7RTZEdjNOSTtJQUF3Qix5QkFBMEI7RTdEMDNOdEQ7RTZEMTNOSTtJQUF3Qix5QkFBMEI7RTdENjNOdEQ7RTZENzNOSTtJQUF3Qiw2QkFBMEI7RTdEZzROdEQ7RTZEaDROSTtJQUF3Qiw4QkFBMEI7RTdEbTROdEQ7RTZEbjROSTtJQUF3Qix3QkFBMEI7RTdEczROdEQ7RTZEdDROSTtJQUF3QiwrQkFBMEI7RTdEeTROdEQ7QUFDRjs7QTZEaDROQTtFQUVJO0lBQXFCLHdCQUEwQjtFN0RtNE5qRDtFNkRuNE5FO0lBQXFCLDBCQUEwQjtFN0RzNE5qRDtFNkR0NE5FO0lBQXFCLGdDQUEwQjtFN0R5NE5qRDtFNkR6NE5FO0lBQXFCLHlCQUEwQjtFN0Q0NE5qRDtFNkQ1NE5FO0lBQXFCLHlCQUEwQjtFN0QrNE5qRDtFNkQvNE5FO0lBQXFCLDZCQUEwQjtFN0RrNU5qRDtFNkRsNU5FO0lBQXFCLDhCQUEwQjtFN0RxNU5qRDtFNkRyNU5FO0lBQXFCLHdCQUEwQjtFN0R3NU5qRDtFNkR4NU5FO0lBQXFCLCtCQUEwQjtFN0QyNU5qRDtBQUNGOztBOERqN05BO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxXQUFXO0VBQ1gsVUFBVTtFQUNWLGdCQUFnQjtBOURvN05sQjs7QThEejdOQTtFQVFJLGNBQWM7RUFDZCxXQUFXO0E5RHE3TmY7O0E4RDk3TkE7Ozs7O0VBaUJJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULE9BQU87RUFDUCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFNBQVM7QTlEcTdOYjs7QThENzZORTtFQUVJLHNCQUFtRztBOUQrNk56Rzs7QThEajdORTtFQUVJLG1CQUFtRztBOURtN056Rzs7QThEcjdORTtFQUVJLGdCQUFtRztBOUR1N056Rzs7QThEejdORTtFQUVJLGlCQUFtRztBOUQyN056Rzs7QThENzdORTtFQUVJLHNCQUFtRztBOUQrN056Rzs7QThEajhORTtFQUVJLG1CQUFtRztBOURtOE56Rzs7QThEcjhORTtFQUVJLGdCQUFtRztBOUR1OE56Rzs7QThEejhORTtFQUVJLGlCQUFtRztBOUQyOE56Rzs7QThENzhORTtFQUVJLHNCQUFtRztBOUQrOE56Rzs7QThEajlORTtFQUVJLG1CQUFtRztBOURtOU56Rzs7QThEcjlORTtFQUVJLGdCQUFtRztBOUR1OU56Rzs7QThEejlORTtFQUVJLGlCQUFtRztBOUQyOU56Rzs7QStEcC9OSTtFQUFnQyw4QkFBOEI7QS9Edy9ObEU7O0ErRHYvTkk7RUFBZ0MsaUNBQWlDO0EvRDIvTnJFOztBK0QxL05JO0VBQWdDLHNDQUFzQztBL0Q4L04xRTs7QStENy9OSTtFQUFnQyx5Q0FBeUM7QS9EaWdPN0U7O0ErRC8vTkk7RUFBOEIsMEJBQTBCO0EvRG1nTzVEOztBK0RsZ09JO0VBQThCLDRCQUE0QjtBL0RzZ085RDs7QStEcmdPSTtFQUE4QixrQ0FBa0M7QS9EeWdPcEU7O0ErRHhnT0k7RUFBOEIseUJBQXlCO0EvRDRnTzNEOztBK0QzZ09JO0VBQThCLHVCQUF1QjtBL0QrZ096RDs7QStEOWdPSTtFQUE4Qix1QkFBdUI7QS9Ea2hPekQ7O0ErRGpoT0k7RUFBOEIseUJBQXlCO0EvRHFoTzNEOztBK0RwaE9JO0VBQThCLHlCQUF5QjtBL0R3aE8zRDs7QStEdGhPSTtFQUFvQyxzQ0FBc0M7QS9EMGhPOUU7O0ErRHpoT0k7RUFBb0Msb0NBQW9DO0EvRDZoTzVFOztBK0Q1aE9JO0VBQW9DLGtDQUFrQztBL0RnaU8xRTs7QStEL2hPSTtFQUFvQyx5Q0FBeUM7QS9EbWlPakY7O0ErRGxpT0k7RUFBb0Msd0NBQXdDO0EvRHNpT2hGOztBK0RwaU9JO0VBQWlDLGtDQUFrQztBL0R3aU92RTs7QStEdmlPSTtFQUFpQyxnQ0FBZ0M7QS9EMmlPckU7O0ErRDFpT0k7RUFBaUMsOEJBQThCO0EvRDhpT25FOztBK0Q3aU9JO0VBQWlDLGdDQUFnQztBL0Rpak9yRTs7QStEaGpPSTtFQUFpQywrQkFBK0I7QS9Eb2pPcEU7O0ErRGxqT0k7RUFBa0Msb0NBQW9DO0EvRHNqTzFFOztBK0Ryak9JO0VBQWtDLGtDQUFrQztBL0R5ak94RTs7QStEeGpPSTtFQUFrQyxnQ0FBZ0M7QS9ENGpPdEU7O0ErRDNqT0k7RUFBa0MsdUNBQXVDO0EvRCtqTzdFOztBK0Q5ak9JO0VBQWtDLHNDQUFzQztBL0Rra081RTs7QStEamtPSTtFQUFrQyxpQ0FBaUM7QS9EcWtPdkU7O0ErRG5rT0k7RUFBZ0MsMkJBQTJCO0EvRHVrTy9EOztBK0R0a09JO0VBQWdDLGlDQUFpQztBL0Qwa09yRTs7QStEemtPSTtFQUFnQywrQkFBK0I7QS9ENmtPbkU7O0ErRDVrT0k7RUFBZ0MsNkJBQTZCO0EvRGdsT2pFOztBK0Qva09JO0VBQWdDLCtCQUErQjtBL0RtbE9uRTs7QStEbGxPSTtFQUFnQyw4QkFBOEI7QS9Ec2xPbEU7O0FlMWtPSTtFZ0RsREE7SUFBZ0MsOEJBQThCO0UvRGlvT2hFO0UrRGhvT0U7SUFBZ0MsaUNBQWlDO0UvRG1vT25FO0UrRGxvT0U7SUFBZ0Msc0NBQXNDO0UvRHFvT3hFO0UrRHBvT0U7SUFBZ0MseUNBQXlDO0UvRHVvTzNFO0UrRHJvT0U7SUFBOEIsMEJBQTBCO0UvRHdvTzFEO0UrRHZvT0U7SUFBOEIsNEJBQTRCO0UvRDBvTzVEO0UrRHpvT0U7SUFBOEIsa0NBQWtDO0UvRDRvT2xFO0UrRDNvT0U7SUFBOEIseUJBQXlCO0UvRDhvT3pEO0UrRDdvT0U7SUFBOEIsdUJBQXVCO0UvRGdwT3ZEO0UrRC9vT0U7SUFBOEIsdUJBQXVCO0UvRGtwT3ZEO0UrRGpwT0U7SUFBOEIseUJBQXlCO0UvRG9wT3pEO0UrRG5wT0U7SUFBOEIseUJBQXlCO0UvRHNwT3pEO0UrRHBwT0U7SUFBb0Msc0NBQXNDO0UvRHVwTzVFO0UrRHRwT0U7SUFBb0Msb0NBQW9DO0UvRHlwTzFFO0UrRHhwT0U7SUFBb0Msa0NBQWtDO0UvRDJwT3hFO0UrRDFwT0U7SUFBb0MseUNBQXlDO0UvRDZwTy9FO0UrRDVwT0U7SUFBb0Msd0NBQXdDO0UvRCtwTzlFO0UrRDdwT0U7SUFBaUMsa0NBQWtDO0UvRGdxT3JFO0UrRC9wT0U7SUFBaUMsZ0NBQWdDO0UvRGtxT25FO0UrRGpxT0U7SUFBaUMsOEJBQThCO0UvRG9xT2pFO0UrRG5xT0U7SUFBaUMsZ0NBQWdDO0UvRHNxT25FO0UrRHJxT0U7SUFBaUMsK0JBQStCO0UvRHdxT2xFO0UrRHRxT0U7SUFBa0Msb0NBQW9DO0UvRHlxT3hFO0UrRHhxT0U7SUFBa0Msa0NBQWtDO0UvRDJxT3RFO0UrRDFxT0U7SUFBa0MsZ0NBQWdDO0UvRDZxT3BFO0UrRDVxT0U7SUFBa0MsdUNBQXVDO0UvRCtxTzNFO0UrRDlxT0U7SUFBa0Msc0NBQXNDO0UvRGlyTzFFO0UrRGhyT0U7SUFBa0MsaUNBQWlDO0UvRG1yT3JFO0UrRGpyT0U7SUFBZ0MsMkJBQTJCO0UvRG9yTzdEO0UrRG5yT0U7SUFBZ0MsaUNBQWlDO0UvRHNyT25FO0UrRHJyT0U7SUFBZ0MsK0JBQStCO0UvRHdyT2pFO0UrRHZyT0U7SUFBZ0MsNkJBQTZCO0UvRDByTy9EO0UrRHpyT0U7SUFBZ0MsK0JBQStCO0UvRDRyT2pFO0UrRDNyT0U7SUFBZ0MsOEJBQThCO0UvRDhyT2hFO0FBQ0Y7O0FlbnJPSTtFZ0RsREE7SUFBZ0MsOEJBQThCO0UvRDB1T2hFO0UrRHp1T0U7SUFBZ0MsaUNBQWlDO0UvRDR1T25FO0UrRDN1T0U7SUFBZ0Msc0NBQXNDO0UvRDh1T3hFO0UrRDd1T0U7SUFBZ0MseUNBQXlDO0UvRGd2TzNFO0UrRDl1T0U7SUFBOEIsMEJBQTBCO0UvRGl2TzFEO0UrRGh2T0U7SUFBOEIsNEJBQTRCO0UvRG12TzVEO0UrRGx2T0U7SUFBOEIsa0NBQWtDO0UvRHF2T2xFO0UrRHB2T0U7SUFBOEIseUJBQXlCO0UvRHV2T3pEO0UrRHR2T0U7SUFBOEIsdUJBQXVCO0UvRHl2T3ZEO0UrRHh2T0U7SUFBOEIsdUJBQXVCO0UvRDJ2T3ZEO0UrRDF2T0U7SUFBOEIseUJBQXlCO0UvRDZ2T3pEO0UrRDV2T0U7SUFBOEIseUJBQXlCO0UvRCt2T3pEO0UrRDd2T0U7SUFBb0Msc0NBQXNDO0UvRGd3TzVFO0UrRC92T0U7SUFBb0Msb0NBQW9DO0UvRGt3TzFFO0UrRGp3T0U7SUFBb0Msa0NBQWtDO0UvRG93T3hFO0UrRG53T0U7SUFBb0MseUNBQXlDO0UvRHN3Ty9FO0UrRHJ3T0U7SUFBb0Msd0NBQXdDO0UvRHd3TzlFO0UrRHR3T0U7SUFBaUMsa0NBQWtDO0UvRHl3T3JFO0UrRHh3T0U7SUFBaUMsZ0NBQWdDO0UvRDJ3T25FO0UrRDF3T0U7SUFBaUMsOEJBQThCO0UvRDZ3T2pFO0UrRDV3T0U7SUFBaUMsZ0NBQWdDO0UvRCt3T25FO0UrRDl3T0U7SUFBaUMsK0JBQStCO0UvRGl4T2xFO0UrRC93T0U7SUFBa0Msb0NBQW9DO0UvRGt4T3hFO0UrRGp4T0U7SUFBa0Msa0NBQWtDO0UvRG94T3RFO0UrRG54T0U7SUFBa0MsZ0NBQWdDO0UvRHN4T3BFO0UrRHJ4T0U7SUFBa0MsdUNBQXVDO0UvRHd4TzNFO0UrRHZ4T0U7SUFBa0Msc0NBQXNDO0UvRDB4TzFFO0UrRHp4T0U7SUFBa0MsaUNBQWlDO0UvRDR4T3JFO0UrRDF4T0U7SUFBZ0MsMkJBQTJCO0UvRDZ4TzdEO0UrRDV4T0U7SUFBZ0MsaUNBQWlDO0UvRCt4T25FO0UrRDl4T0U7SUFBZ0MsK0JBQStCO0UvRGl5T2pFO0UrRGh5T0U7SUFBZ0MsNkJBQTZCO0UvRG15Ty9EO0UrRGx5T0U7SUFBZ0MsK0JBQStCO0UvRHF5T2pFO0UrRHB5T0U7SUFBZ0MsOEJBQThCO0UvRHV5T2hFO0FBQ0Y7O0FlNXhPSTtFZ0RsREE7SUFBZ0MsOEJBQThCO0UvRG0xT2hFO0UrRGwxT0U7SUFBZ0MsaUNBQWlDO0UvRHExT25FO0UrRHAxT0U7SUFBZ0Msc0NBQXNDO0UvRHUxT3hFO0UrRHQxT0U7SUFBZ0MseUNBQXlDO0UvRHkxTzNFO0UrRHYxT0U7SUFBOEIsMEJBQTBCO0UvRDAxTzFEO0UrRHoxT0U7SUFBOEIsNEJBQTRCO0UvRDQxTzVEO0UrRDMxT0U7SUFBOEIsa0NBQWtDO0UvRDgxT2xFO0UrRDcxT0U7SUFBOEIseUJBQXlCO0UvRGcyT3pEO0UrRC8xT0U7SUFBOEIsdUJBQXVCO0UvRGsyT3ZEO0UrRGoyT0U7SUFBOEIsdUJBQXVCO0UvRG8yT3ZEO0UrRG4yT0U7SUFBOEIseUJBQXlCO0UvRHMyT3pEO0UrRHIyT0U7SUFBOEIseUJBQXlCO0UvRHcyT3pEO0UrRHQyT0U7SUFBb0Msc0NBQXNDO0UvRHkyTzVFO0UrRHgyT0U7SUFBb0Msb0NBQW9DO0UvRDIyTzFFO0UrRDEyT0U7SUFBb0Msa0NBQWtDO0UvRDYyT3hFO0UrRDUyT0U7SUFBb0MseUNBQXlDO0UvRCsyTy9FO0UrRDkyT0U7SUFBb0Msd0NBQXdDO0UvRGkzTzlFO0UrRC8yT0U7SUFBaUMsa0NBQWtDO0UvRGszT3JFO0UrRGozT0U7SUFBaUMsZ0NBQWdDO0UvRG8zT25FO0UrRG4zT0U7SUFBaUMsOEJBQThCO0UvRHMzT2pFO0UrRHIzT0U7SUFBaUMsZ0NBQWdDO0UvRHczT25FO0UrRHYzT0U7SUFBaUMsK0JBQStCO0UvRDAzT2xFO0UrRHgzT0U7SUFBa0Msb0NBQW9DO0UvRDIzT3hFO0UrRDEzT0U7SUFBa0Msa0NBQWtDO0UvRDYzT3RFO0UrRDUzT0U7SUFBa0MsZ0NBQWdDO0UvRCszT3BFO0UrRDkzT0U7SUFBa0MsdUNBQXVDO0UvRGk0TzNFO0UrRGg0T0U7SUFBa0Msc0NBQXNDO0UvRG00TzFFO0UrRGw0T0U7SUFBa0MsaUNBQWlDO0UvRHE0T3JFO0UrRG40T0U7SUFBZ0MsMkJBQTJCO0UvRHM0TzdEO0UrRHI0T0U7SUFBZ0MsaUNBQWlDO0UvRHc0T25FO0UrRHY0T0U7SUFBZ0MsK0JBQStCO0UvRDA0T2pFO0UrRHo0T0U7SUFBZ0MsNkJBQTZCO0UvRDQ0Ty9EO0UrRDM0T0U7SUFBZ0MsK0JBQStCO0UvRDg0T2pFO0UrRDc0T0U7SUFBZ0MsOEJBQThCO0UvRGc1T2hFO0FBQ0Y7O0FlcjRPSTtFZ0RsREE7SUFBZ0MsOEJBQThCO0UvRDQ3T2hFO0UrRDM3T0U7SUFBZ0MsaUNBQWlDO0UvRDg3T25FO0UrRDc3T0U7SUFBZ0Msc0NBQXNDO0UvRGc4T3hFO0UrRC83T0U7SUFBZ0MseUNBQXlDO0UvRGs4TzNFO0UrRGg4T0U7SUFBOEIsMEJBQTBCO0UvRG04TzFEO0UrRGw4T0U7SUFBOEIsNEJBQTRCO0UvRHE4TzVEO0UrRHA4T0U7SUFBOEIsa0NBQWtDO0UvRHU4T2xFO0UrRHQ4T0U7SUFBOEIseUJBQXlCO0UvRHk4T3pEO0UrRHg4T0U7SUFBOEIsdUJBQXVCO0UvRDI4T3ZEO0UrRDE4T0U7SUFBOEIsdUJBQXVCO0UvRDY4T3ZEO0UrRDU4T0U7SUFBOEIseUJBQXlCO0UvRCs4T3pEO0UrRDk4T0U7SUFBOEIseUJBQXlCO0UvRGk5T3pEO0UrRC84T0U7SUFBb0Msc0NBQXNDO0UvRGs5TzVFO0UrRGo5T0U7SUFBb0Msb0NBQW9DO0UvRG85TzFFO0UrRG45T0U7SUFBb0Msa0NBQWtDO0UvRHM5T3hFO0UrRHI5T0U7SUFBb0MseUNBQXlDO0UvRHc5Ty9FO0UrRHY5T0U7SUFBb0Msd0NBQXdDO0UvRDA5TzlFO0UrRHg5T0U7SUFBaUMsa0NBQWtDO0UvRDI5T3JFO0UrRDE5T0U7SUFBaUMsZ0NBQWdDO0UvRDY5T25FO0UrRDU5T0U7SUFBaUMsOEJBQThCO0UvRCs5T2pFO0UrRDk5T0U7SUFBaUMsZ0NBQWdDO0UvRGkrT25FO0UrRGgrT0U7SUFBaUMsK0JBQStCO0UvRG0rT2xFO0UrRGorT0U7SUFBa0Msb0NBQW9DO0UvRG8rT3hFO0UrRG4rT0U7SUFBa0Msa0NBQWtDO0UvRHMrT3RFO0UrRHIrT0U7SUFBa0MsZ0NBQWdDO0UvRHcrT3BFO0UrRHYrT0U7SUFBa0MsdUNBQXVDO0UvRDArTzNFO0UrRHorT0U7SUFBa0Msc0NBQXNDO0UvRDQrTzFFO0UrRDMrT0U7SUFBa0MsaUNBQWlDO0UvRDgrT3JFO0UrRDUrT0U7SUFBZ0MsMkJBQTJCO0UvRCsrTzdEO0UrRDkrT0U7SUFBZ0MsaUNBQWlDO0UvRGkvT25FO0UrRGgvT0U7SUFBZ0MsK0JBQStCO0UvRG0vT2pFO0UrRGwvT0U7SUFBZ0MsNkJBQTZCO0UvRHEvTy9EO0UrRHAvT0U7SUFBZ0MsK0JBQStCO0UvRHUvT2pFO0UrRHQvT0U7SUFBZ0MsOEJBQThCO0UvRHkvT2hFO0FBQ0Y7O0FlOStPSTtFZ0RsREE7SUFBZ0MsOEJBQThCO0UvRHFpUGhFO0UrRHBpUEU7SUFBZ0MsaUNBQWlDO0UvRHVpUG5FO0UrRHRpUEU7SUFBZ0Msc0NBQXNDO0UvRHlpUHhFO0UrRHhpUEU7SUFBZ0MseUNBQXlDO0UvRDJpUDNFO0UrRHppUEU7SUFBOEIsMEJBQTBCO0UvRDRpUDFEO0UrRDNpUEU7SUFBOEIsNEJBQTRCO0UvRDhpUDVEO0UrRDdpUEU7SUFBOEIsa0NBQWtDO0UvRGdqUGxFO0UrRC9pUEU7SUFBOEIseUJBQXlCO0UvRGtqUHpEO0UrRGpqUEU7SUFBOEIsdUJBQXVCO0UvRG9qUHZEO0UrRG5qUEU7SUFBOEIsdUJBQXVCO0UvRHNqUHZEO0UrRHJqUEU7SUFBOEIseUJBQXlCO0UvRHdqUHpEO0UrRHZqUEU7SUFBOEIseUJBQXlCO0UvRDBqUHpEO0UrRHhqUEU7SUFBb0Msc0NBQXNDO0UvRDJqUDVFO0UrRDFqUEU7SUFBb0Msb0NBQW9DO0UvRDZqUDFFO0UrRDVqUEU7SUFBb0Msa0NBQWtDO0UvRCtqUHhFO0UrRDlqUEU7SUFBb0MseUNBQXlDO0UvRGlrUC9FO0UrRGhrUEU7SUFBb0Msd0NBQXdDO0UvRG1rUDlFO0UrRGprUEU7SUFBaUMsa0NBQWtDO0UvRG9rUHJFO0UrRG5rUEU7SUFBaUMsZ0NBQWdDO0UvRHNrUG5FO0UrRHJrUEU7SUFBaUMsOEJBQThCO0UvRHdrUGpFO0UrRHZrUEU7SUFBaUMsZ0NBQWdDO0UvRDBrUG5FO0UrRHprUEU7SUFBaUMsK0JBQStCO0UvRDRrUGxFO0UrRDFrUEU7SUFBa0Msb0NBQW9DO0UvRDZrUHhFO0UrRDVrUEU7SUFBa0Msa0NBQWtDO0UvRCtrUHRFO0UrRDlrUEU7SUFBa0MsZ0NBQWdDO0UvRGlsUHBFO0UrRGhsUEU7SUFBa0MsdUNBQXVDO0UvRG1sUDNFO0UrRGxsUEU7SUFBa0Msc0NBQXNDO0UvRHFsUDFFO0UrRHBsUEU7SUFBa0MsaUNBQWlDO0UvRHVsUHJFO0UrRHJsUEU7SUFBZ0MsMkJBQTJCO0UvRHdsUDdEO0UrRHZsUEU7SUFBZ0MsaUNBQWlDO0UvRDBsUG5FO0UrRHpsUEU7SUFBZ0MsK0JBQStCO0UvRDRsUGpFO0UrRDNsUEU7SUFBZ0MsNkJBQTZCO0UvRDhsUC9EO0UrRDdsUEU7SUFBZ0MsK0JBQStCO0UvRGdtUGpFO0UrRC9sUEU7SUFBZ0MsOEJBQThCO0UvRGttUGhFO0FBQ0Y7O0FnRTdvUEk7RUFBd0Isc0JBQXNCO0FoRWlwUGxEOztBZ0VocFBJO0VBQXdCLHVCQUF1QjtBaEVvcFBuRDs7QWdFbnBQSTtFQUF3QixzQkFBc0I7QWhFdXBQbEQ7O0Flbm1QSTtFaUR0REE7SUFBd0Isc0JBQXNCO0VoRThwUGhEO0VnRTdwUEU7SUFBd0IsdUJBQXVCO0VoRWdxUGpEO0VnRS9wUEU7SUFBd0Isc0JBQXNCO0VoRWtxUGhEO0FBQ0Y7O0FlL21QSTtFaUR0REE7SUFBd0Isc0JBQXNCO0VoRTBxUGhEO0VnRXpxUEU7SUFBd0IsdUJBQXVCO0VoRTRxUGpEO0VnRTNxUEU7SUFBd0Isc0JBQXNCO0VoRThxUGhEO0FBQ0Y7O0FlM25QSTtFaUR0REE7SUFBd0Isc0JBQXNCO0VoRXNyUGhEO0VnRXJyUEU7SUFBd0IsdUJBQXVCO0VoRXdyUGpEO0VnRXZyUEU7SUFBd0Isc0JBQXNCO0VoRTByUGhEO0FBQ0Y7O0Fldm9QSTtFaUR0REE7SUFBd0Isc0JBQXNCO0VoRWtzUGhEO0VnRWpzUEU7SUFBd0IsdUJBQXVCO0VoRW9zUGpEO0VnRW5zUEU7SUFBd0Isc0JBQXNCO0VoRXNzUGhEO0FBQ0Y7O0FlbnBQSTtFaUR0REE7SUFBd0Isc0JBQXNCO0VoRThzUGhEO0VnRTdzUEU7SUFBd0IsdUJBQXVCO0VoRWd0UGpEO0VnRS9zUEU7SUFBd0Isc0JBQXNCO0VoRWt0UGhEO0FBQ0Y7O0FpRXh0UEU7RUFBeUIsMkJBQThCO0FqRTR0UHpEOztBaUU1dFBFO0VBQXlCLDRCQUE4QjtBakVndVB6RDs7QWlFaHVQRTtFQUF5Qiw0QkFBOEI7QWpFb3VQekQ7O0FrRXB1UEU7RUFBc0IseUJBQTJCO0FsRXd1UG5EOztBa0V4dVBFO0VBQXNCLDJCQUEyQjtBbEU0dVBuRDs7QW1FM3VQRTtFQUF5QiwyQkFBOEI7QW5FK3VQekQ7O0FtRS91UEU7RUFBeUIsNkJBQThCO0FuRW12UHpEOztBbUVudlBFO0VBQXlCLDZCQUE4QjtBbkV1dlB6RDs7QW1FdnZQRTtFQUF5QiwwQkFBOEI7QW5FMnZQekQ7O0FtRTN2UEU7RUFBeUIsMkJBQThCO0FuRSt2UHpEOztBbUUxdlBBO0VBQ0UsZUFBZTtFQUNmLE1BQU07RUFDTixRQUFRO0VBQ1IsT0FBTztFQUNQLGEvRGlxQnNDO0FKNGxPeEM7O0FtRTF2UEE7RUFDRSxlQUFlO0VBQ2YsUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsYS9EeXBCc0M7QUpvbU94Qzs7QW1FenZQOEI7RUFEOUI7SUFFSSxnQkFBZ0I7SUFDaEIsTUFBTTtJQUNOLGEvRGlwQm9DO0VKNG1PdEM7QUFDRjs7QW9FdnhQQTtFQ0VFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFVBQVU7RUFDVixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixtQkFBbUI7RUFDbkIsU0FBUztBckV5eFBYOztBcUUvd1BFO0VBRUUsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLFVBQVU7RUFDVixtQkFBbUI7QXJFaXhQdkI7O0FzRTl5UEE7RUFBYSw4REFBcUM7QXRFa3pQbEQ7O0FzRWp6UEE7RUFBVSx3REFBa0M7QXRFcXpQNUM7O0FzRXB6UEE7RUFBYSx1REFBcUM7QXRFd3pQbEQ7O0FzRXZ6UEE7RUFBZSwyQkFBMkI7QXRFMnpQMUM7O0F1RTF6UEk7RUFBdUIscUJBQTRCO0F2RTh6UHZEOztBdUU5elBJO0VBQXVCLHFCQUE0QjtBdkVrMFB2RDs7QXVFbDBQSTtFQUF1QixxQkFBNEI7QXZFczBQdkQ7O0F1RXQwUEk7RUFBdUIsc0JBQTRCO0F2RTAwUHZEOztBdUUxMFBJO0VBQXVCLHNCQUE0QjtBdkU4MFB2RDs7QXVFOTBQSTtFQUF1QixzQkFBNEI7QXZFazFQdkQ7O0F1RWwxUEk7RUFBdUIsc0JBQTRCO0F2RXMxUHZEOztBdUV0MVBJO0VBQXVCLHNCQUE0QjtBdkUwMVB2RDs7QXVFMTFQSTtFQUF1Qix1QkFBNEI7QXZFODFQdkQ7O0F1RTkxUEk7RUFBdUIsdUJBQTRCO0F2RWsyUHZEOztBdUU5MVBBO0VBQVUsMEJBQTBCO0F2RWsyUHBDOztBdUVqMlBBO0VBQVUsMkJBQTJCO0F2RXEyUHJDOztBdUVqMlBBO0VBQWMsMkJBQTJCO0F2RXEyUHpDOztBdUVwMlBBO0VBQWMsNEJBQTRCO0F2RXcyUDFDOztBdUV0MlBBO0VBQVUsdUJBQXVCO0F2RTAyUGpDOztBdUV6MlBBO0VBQVUsd0JBQXdCO0F2RTYyUGxDOztBd0V0M1BRO0VBQWdDLG9CQUE0QjtBeEUwM1BwRTs7QXdFejNQUTs7RUFFRSx3QkFBb0M7QXhFNDNQOUM7O0F3RTEzUFE7O0VBRUUsMEJBQXdDO0F4RTYzUGxEOztBd0UzM1BROztFQUVFLDJCQUEwQztBeEU4M1BwRDs7QXdFNTNQUTs7RUFFRSx5QkFBc0M7QXhFKzNQaEQ7O0F3RTk0UFE7RUFBZ0MsMEJBQTRCO0F4RWs1UHBFOztBd0VqNVBROztFQUVFLDhCQUFvQztBeEVvNVA5Qzs7QXdFbDVQUTs7RUFFRSxnQ0FBd0M7QXhFcTVQbEQ7O0F3RW41UFE7O0VBRUUsaUNBQTBDO0F4RXM1UHBEOztBd0VwNVBROztFQUVFLCtCQUFzQztBeEV1NVBoRDs7QXdFdDZQUTtFQUFnQyx5QkFBNEI7QXhFMDZQcEU7O0F3RXo2UFE7O0VBRUUsNkJBQW9DO0F4RTQ2UDlDOztBd0UxNlBROztFQUVFLCtCQUF3QztBeEU2NlBsRDs7QXdFMzZQUTs7RUFFRSxnQ0FBMEM7QXhFODZQcEQ7O0F3RTU2UFE7O0VBRUUsOEJBQXNDO0F4RSs2UGhEOztBd0U5N1BRO0VBQWdDLHVCQUE0QjtBeEVrOFBwRTs7QXdFajhQUTs7RUFFRSwyQkFBb0M7QXhFbzhQOUM7O0F3RWw4UFE7O0VBRUUsNkJBQXdDO0F4RXE4UGxEOztBd0VuOFBROztFQUVFLDhCQUEwQztBeEVzOFBwRDs7QXdFcDhQUTs7RUFFRSw0QkFBc0M7QXhFdThQaEQ7O0F3RXQ5UFE7RUFBZ0MseUJBQTRCO0F4RTA5UHBFOztBd0V6OVBROztFQUVFLDZCQUFvQztBeEU0OVA5Qzs7QXdFMTlQUTs7RUFFRSwrQkFBd0M7QXhFNjlQbEQ7O0F3RTM5UFE7O0VBRUUsZ0NBQTBDO0F4RTg5UHBEOztBd0U1OVBROztFQUVFLDhCQUFzQztBeEUrOVBoRDs7QXdFOStQUTtFQUFnQyx1QkFBNEI7QXhFay9QcEU7O0F3RWovUFE7O0VBRUUsMkJBQW9DO0F4RW8vUDlDOztBd0VsL1BROztFQUVFLDZCQUF3QztBeEVxL1BsRDs7QXdFbi9QUTs7RUFFRSw4QkFBMEM7QXhFcy9QcEQ7O0F3RXAvUFE7O0VBRUUsNEJBQXNDO0F4RXUvUGhEOztBd0V0Z1FRO0VBQWdDLHFCQUE0QjtBeEUwZ1FwRTs7QXdFemdRUTs7RUFFRSx5QkFBb0M7QXhFNGdROUM7O0F3RTFnUVE7O0VBRUUsMkJBQXdDO0F4RTZnUWxEOztBd0UzZ1FROztFQUVFLDRCQUEwQztBeEU4Z1FwRDs7QXdFNWdRUTs7RUFFRSwwQkFBc0M7QXhFK2dRaEQ7O0F3RTloUVE7RUFBZ0MsMkJBQTRCO0F4RWtpUXBFOztBd0VqaVFROztFQUVFLCtCQUFvQztBeEVvaVE5Qzs7QXdFbGlRUTs7RUFFRSxpQ0FBd0M7QXhFcWlRbEQ7O0F3RW5pUVE7O0VBRUUsa0NBQTBDO0F4RXNpUXBEOztBd0VwaVFROztFQUVFLGdDQUFzQztBeEV1aVFoRDs7QXdFdGpRUTtFQUFnQywwQkFBNEI7QXhFMGpRcEU7O0F3RXpqUVE7O0VBRUUsOEJBQW9DO0F4RTRqUTlDOztBd0UxalFROztFQUVFLGdDQUF3QztBeEU2alFsRDs7QXdFM2pRUTs7RUFFRSxpQ0FBMEM7QXhFOGpRcEQ7O0F3RTVqUVE7O0VBRUUsK0JBQXNDO0F4RStqUWhEOztBd0U5a1FRO0VBQWdDLHdCQUE0QjtBeEVrbFFwRTs7QXdFamxRUTs7RUFFRSw0QkFBb0M7QXhFb2xROUM7O0F3RWxsUVE7O0VBRUUsOEJBQXdDO0F4RXFsUWxEOztBd0VubFFROztFQUVFLCtCQUEwQztBeEVzbFFwRDs7QXdFcGxRUTs7RUFFRSw2QkFBc0M7QXhFdWxRaEQ7O0F3RXRtUVE7RUFBZ0MsMEJBQTRCO0F4RTBtUXBFOztBd0V6bVFROztFQUVFLDhCQUFvQztBeEU0bVE5Qzs7QXdFMW1RUTs7RUFFRSxnQ0FBd0M7QXhFNm1RbEQ7O0F3RTNtUVE7O0VBRUUsaUNBQTBDO0F4RThtUXBEOztBd0U1bVFROztFQUVFLCtCQUFzQztBeEUrbVFoRDs7QXdFOW5RUTtFQUFnQyx3QkFBNEI7QXhFa29RcEU7O0F3RWpvUVE7O0VBRUUsNEJBQW9DO0F4RW9vUTlDOztBd0Vsb1FROztFQUVFLDhCQUF3QztBeEVxb1FsRDs7QXdFbm9RUTs7RUFFRSwrQkFBMEM7QXhFc29RcEQ7O0F3RXBvUVE7O0VBRUUsNkJBQXNDO0F4RXVvUWhEOztBd0UvblFRO0VBQXdCLDJCQUEyQjtBeEVtb1EzRDs7QXdFbG9RUTs7RUFFRSwrQkFBK0I7QXhFcW9RekM7O0F3RW5vUVE7O0VBRUUsaUNBQWlDO0F4RXNvUTNDOztBd0Vwb1FROztFQUVFLGtDQUFrQztBeEV1b1E1Qzs7QXdFcm9RUTs7RUFFRSxnQ0FBZ0M7QXhFd29RMUM7O0F3RXZwUVE7RUFBd0IsMEJBQTJCO0F4RTJwUTNEOztBd0UxcFFROztFQUVFLDhCQUErQjtBeEU2cFF6Qzs7QXdFM3BRUTs7RUFFRSxnQ0FBaUM7QXhFOHBRM0M7O0F3RTVwUVE7O0VBRUUsaUNBQWtDO0F4RStwUTVDOztBd0U3cFFROztFQUVFLCtCQUFnQztBeEVncVExQzs7QXdFL3FRUTtFQUF3Qix3QkFBMkI7QXhFbXJRM0Q7O0F3RWxyUVE7O0VBRUUsNEJBQStCO0F4RXFyUXpDOztBd0VuclFROztFQUVFLDhCQUFpQztBeEVzclEzQzs7QXdFcHJRUTs7RUFFRSwrQkFBa0M7QXhFdXJRNUM7O0F3RXJyUVE7O0VBRUUsNkJBQWdDO0F4RXdyUTFDOztBd0V2c1FRO0VBQXdCLDBCQUEyQjtBeEUyc1EzRDs7QXdFMXNRUTs7RUFFRSw4QkFBK0I7QXhFNnNRekM7O0F3RTNzUVE7O0VBRUUsZ0NBQWlDO0F4RThzUTNDOztBd0U1c1FROztFQUVFLGlDQUFrQztBeEUrc1E1Qzs7QXdFN3NRUTs7RUFFRSwrQkFBZ0M7QXhFZ3RRMUM7O0F3RS90UVE7RUFBd0Isd0JBQTJCO0F4RW11UTNEOztBd0VsdVFROztFQUVFLDRCQUErQjtBeEVxdVF6Qzs7QXdFbnVRUTs7RUFFRSw4QkFBaUM7QXhFc3VRM0M7O0F3RXB1UVE7O0VBRUUsK0JBQWtDO0F4RXV1UTVDOztBd0VydVFROztFQUVFLDZCQUFnQztBeEV3dVExQzs7QXdFbHVRSTtFQUFtQix1QkFBdUI7QXhFc3VROUM7O0F3RXJ1UUk7O0VBRUUsMkJBQTJCO0F4RXd1UWpDOztBd0V0dVFJOztFQUVFLDZCQUE2QjtBeEV5dVFuQzs7QXdFdnVRSTs7RUFFRSw4QkFBOEI7QXhFMHVRcEM7O0F3RXh1UUk7O0VBRUUsNEJBQTRCO0F4RTJ1UWxDOztBZXB2UUk7RXlEbERJO0lBQWdDLG9CQUE0QjtFeEUyeVFsRTtFd0UxeVFNOztJQUVFLHdCQUFvQztFeEU0eVE1QztFd0UxeVFNOztJQUVFLDBCQUF3QztFeEU0eVFoRDtFd0UxeVFNOztJQUVFLDJCQUEwQztFeEU0eVFsRDtFd0UxeVFNOztJQUVFLHlCQUFzQztFeEU0eVE5QztFd0UzelFNO0lBQWdDLDBCQUE0QjtFeEU4elFsRTtFd0U3elFNOztJQUVFLDhCQUFvQztFeEUrelE1QztFd0U3elFNOztJQUVFLGdDQUF3QztFeEUrelFoRDtFd0U3elFNOztJQUVFLGlDQUEwQztFeEUrelFsRDtFd0U3elFNOztJQUVFLCtCQUFzQztFeEUrelE5QztFd0U5MFFNO0lBQWdDLHlCQUE0QjtFeEVpMVFsRTtFd0VoMVFNOztJQUVFLDZCQUFvQztFeEVrMVE1QztFd0VoMVFNOztJQUVFLCtCQUF3QztFeEVrMVFoRDtFd0VoMVFNOztJQUVFLGdDQUEwQztFeEVrMVFsRDtFd0VoMVFNOztJQUVFLDhCQUFzQztFeEVrMVE5QztFd0VqMlFNO0lBQWdDLHVCQUE0QjtFeEVvMlFsRTtFd0VuMlFNOztJQUVFLDJCQUFvQztFeEVxMlE1QztFd0VuMlFNOztJQUVFLDZCQUF3QztFeEVxMlFoRDtFd0VuMlFNOztJQUVFLDhCQUEwQztFeEVxMlFsRDtFd0VuMlFNOztJQUVFLDRCQUFzQztFeEVxMlE5QztFd0VwM1FNO0lBQWdDLHlCQUE0QjtFeEV1M1FsRTtFd0V0M1FNOztJQUVFLDZCQUFvQztFeEV3M1E1QztFd0V0M1FNOztJQUVFLCtCQUF3QztFeEV3M1FoRDtFd0V0M1FNOztJQUVFLGdDQUEwQztFeEV3M1FsRDtFd0V0M1FNOztJQUVFLDhCQUFzQztFeEV3M1E5QztFd0V2NFFNO0lBQWdDLHVCQUE0QjtFeEUwNFFsRTtFd0V6NFFNOztJQUVFLDJCQUFvQztFeEUyNFE1QztFd0V6NFFNOztJQUVFLDZCQUF3QztFeEUyNFFoRDtFd0V6NFFNOztJQUVFLDhCQUEwQztFeEUyNFFsRDtFd0V6NFFNOztJQUVFLDRCQUFzQztFeEUyNFE5QztFd0UxNVFNO0lBQWdDLHFCQUE0QjtFeEU2NVFsRTtFd0U1NVFNOztJQUVFLHlCQUFvQztFeEU4NVE1QztFd0U1NVFNOztJQUVFLDJCQUF3QztFeEU4NVFoRDtFd0U1NVFNOztJQUVFLDRCQUEwQztFeEU4NVFsRDtFd0U1NVFNOztJQUVFLDBCQUFzQztFeEU4NVE5QztFd0U3NlFNO0lBQWdDLDJCQUE0QjtFeEVnN1FsRTtFd0UvNlFNOztJQUVFLCtCQUFvQztFeEVpN1E1QztFd0UvNlFNOztJQUVFLGlDQUF3QztFeEVpN1FoRDtFd0UvNlFNOztJQUVFLGtDQUEwQztFeEVpN1FsRDtFd0UvNlFNOztJQUVFLGdDQUFzQztFeEVpN1E5QztFd0VoOFFNO0lBQWdDLDBCQUE0QjtFeEVtOFFsRTtFd0VsOFFNOztJQUVFLDhCQUFvQztFeEVvOFE1QztFd0VsOFFNOztJQUVFLGdDQUF3QztFeEVvOFFoRDtFd0VsOFFNOztJQUVFLGlDQUEwQztFeEVvOFFsRDtFd0VsOFFNOztJQUVFLCtCQUFzQztFeEVvOFE5QztFd0VuOVFNO0lBQWdDLHdCQUE0QjtFeEVzOVFsRTtFd0VyOVFNOztJQUVFLDRCQUFvQztFeEV1OVE1QztFd0VyOVFNOztJQUVFLDhCQUF3QztFeEV1OVFoRDtFd0VyOVFNOztJQUVFLCtCQUEwQztFeEV1OVFsRDtFd0VyOVFNOztJQUVFLDZCQUFzQztFeEV1OVE5QztFd0V0K1FNO0lBQWdDLDBCQUE0QjtFeEV5K1FsRTtFd0V4K1FNOztJQUVFLDhCQUFvQztFeEUwK1E1QztFd0V4K1FNOztJQUVFLGdDQUF3QztFeEUwK1FoRDtFd0V4K1FNOztJQUVFLGlDQUEwQztFeEUwK1FsRDtFd0V4K1FNOztJQUVFLCtCQUFzQztFeEUwK1E5QztFd0V6L1FNO0lBQWdDLHdCQUE0QjtFeEU0L1FsRTtFd0UzL1FNOztJQUVFLDRCQUFvQztFeEU2L1E1QztFd0UzL1FNOztJQUVFLDhCQUF3QztFeEU2L1FoRDtFd0UzL1FNOztJQUVFLCtCQUEwQztFeEU2L1FsRDtFd0UzL1FNOztJQUVFLDZCQUFzQztFeEU2L1E5QztFd0VyL1FNO0lBQXdCLDJCQUEyQjtFeEV3L1F6RDtFd0V2L1FNOztJQUVFLCtCQUErQjtFeEV5L1F2QztFd0V2L1FNOztJQUVFLGlDQUFpQztFeEV5L1F6QztFd0V2L1FNOztJQUVFLGtDQUFrQztFeEV5L1ExQztFd0V2L1FNOztJQUVFLGdDQUFnQztFeEV5L1F4QztFd0V4Z1JNO0lBQXdCLDBCQUEyQjtFeEUyZ1J6RDtFd0UxZ1JNOztJQUVFLDhCQUErQjtFeEU0Z1J2QztFd0UxZ1JNOztJQUVFLGdDQUFpQztFeEU0Z1J6QztFd0UxZ1JNOztJQUVFLGlDQUFrQztFeEU0Z1IxQztFd0UxZ1JNOztJQUVFLCtCQUFnQztFeEU0Z1J4QztFd0UzaFJNO0lBQXdCLHdCQUEyQjtFeEU4aFJ6RDtFd0U3aFJNOztJQUVFLDRCQUErQjtFeEUraFJ2QztFd0U3aFJNOztJQUVFLDhCQUFpQztFeEUraFJ6QztFd0U3aFJNOztJQUVFLCtCQUFrQztFeEUraFIxQztFd0U3aFJNOztJQUVFLDZCQUFnQztFeEUraFJ4QztFd0U5aVJNO0lBQXdCLDBCQUEyQjtFeEVpalJ6RDtFd0VoalJNOztJQUVFLDhCQUErQjtFeEVralJ2QztFd0VoalJNOztJQUVFLGdDQUFpQztFeEVralJ6QztFd0VoalJNOztJQUVFLGlDQUFrQztFeEVralIxQztFd0VoalJNOztJQUVFLCtCQUFnQztFeEVralJ4QztFd0Vqa1JNO0lBQXdCLHdCQUEyQjtFeEVva1J6RDtFd0Vua1JNOztJQUVFLDRCQUErQjtFeEVxa1J2QztFd0Vua1JNOztJQUVFLDhCQUFpQztFeEVxa1J6QztFd0Vua1JNOztJQUVFLCtCQUFrQztFeEVxa1IxQztFd0Vua1JNOztJQUVFLDZCQUFnQztFeEVxa1J4QztFd0UvalJFO0lBQW1CLHVCQUF1QjtFeEVra1I1QztFd0Vqa1JFOztJQUVFLDJCQUEyQjtFeEVta1IvQjtFd0Vqa1JFOztJQUVFLDZCQUE2QjtFeEVta1JqQztFd0Vqa1JFOztJQUVFLDhCQUE4QjtFeEVta1JsQztFd0Vqa1JFOztJQUVFLDRCQUE0QjtFeEVta1JoQztBQUNGOztBZTdrUkk7RXlEbERJO0lBQWdDLG9CQUE0QjtFeEVvb1JsRTtFd0Vub1JNOztJQUVFLHdCQUFvQztFeEVxb1I1QztFd0Vub1JNOztJQUVFLDBCQUF3QztFeEVxb1JoRDtFd0Vub1JNOztJQUVFLDJCQUEwQztFeEVxb1JsRDtFd0Vub1JNOztJQUVFLHlCQUFzQztFeEVxb1I5QztFd0VwcFJNO0lBQWdDLDBCQUE0QjtFeEV1cFJsRTtFd0V0cFJNOztJQUVFLDhCQUFvQztFeEV3cFI1QztFd0V0cFJNOztJQUVFLGdDQUF3QztFeEV3cFJoRDtFd0V0cFJNOztJQUVFLGlDQUEwQztFeEV3cFJsRDtFd0V0cFJNOztJQUVFLCtCQUFzQztFeEV3cFI5QztFd0V2cVJNO0lBQWdDLHlCQUE0QjtFeEUwcVJsRTtFd0V6cVJNOztJQUVFLDZCQUFvQztFeEUycVI1QztFd0V6cVJNOztJQUVFLCtCQUF3QztFeEUycVJoRDtFd0V6cVJNOztJQUVFLGdDQUEwQztFeEUycVJsRDtFd0V6cVJNOztJQUVFLDhCQUFzQztFeEUycVI5QztFd0UxclJNO0lBQWdDLHVCQUE0QjtFeEU2clJsRTtFd0U1clJNOztJQUVFLDJCQUFvQztFeEU4clI1QztFd0U1clJNOztJQUVFLDZCQUF3QztFeEU4clJoRDtFd0U1clJNOztJQUVFLDhCQUEwQztFeEU4clJsRDtFd0U1clJNOztJQUVFLDRCQUFzQztFeEU4clI5QztFd0U3c1JNO0lBQWdDLHlCQUE0QjtFeEVndFJsRTtFd0Uvc1JNOztJQUVFLDZCQUFvQztFeEVpdFI1QztFd0Uvc1JNOztJQUVFLCtCQUF3QztFeEVpdFJoRDtFd0Uvc1JNOztJQUVFLGdDQUEwQztFeEVpdFJsRDtFd0Uvc1JNOztJQUVFLDhCQUFzQztFeEVpdFI5QztFd0VodVJNO0lBQWdDLHVCQUE0QjtFeEVtdVJsRTtFd0VsdVJNOztJQUVFLDJCQUFvQztFeEVvdVI1QztFd0VsdVJNOztJQUVFLDZCQUF3QztFeEVvdVJoRDtFd0VsdVJNOztJQUVFLDhCQUEwQztFeEVvdVJsRDtFd0VsdVJNOztJQUVFLDRCQUFzQztFeEVvdVI5QztFd0VudlJNO0lBQWdDLHFCQUE0QjtFeEVzdlJsRTtFd0VydlJNOztJQUVFLHlCQUFvQztFeEV1dlI1QztFd0VydlJNOztJQUVFLDJCQUF3QztFeEV1dlJoRDtFd0VydlJNOztJQUVFLDRCQUEwQztFeEV1dlJsRDtFd0VydlJNOztJQUVFLDBCQUFzQztFeEV1dlI5QztFd0V0d1JNO0lBQWdDLDJCQUE0QjtFeEV5d1JsRTtFd0V4d1JNOztJQUVFLCtCQUFvQztFeEUwd1I1QztFd0V4d1JNOztJQUVFLGlDQUF3QztFeEUwd1JoRDtFd0V4d1JNOztJQUVFLGtDQUEwQztFeEUwd1JsRDtFd0V4d1JNOztJQUVFLGdDQUFzQztFeEUwd1I5QztFd0V6eFJNO0lBQWdDLDBCQUE0QjtFeEU0eFJsRTtFd0UzeFJNOztJQUVFLDhCQUFvQztFeEU2eFI1QztFd0UzeFJNOztJQUVFLGdDQUF3QztFeEU2eFJoRDtFd0UzeFJNOztJQUVFLGlDQUEwQztFeEU2eFJsRDtFd0UzeFJNOztJQUVFLCtCQUFzQztFeEU2eFI5QztFd0U1eVJNO0lBQWdDLHdCQUE0QjtFeEUreVJsRTtFd0U5eVJNOztJQUVFLDRCQUFvQztFeEVnelI1QztFd0U5eVJNOztJQUVFLDhCQUF3QztFeEVnelJoRDtFd0U5eVJNOztJQUVFLCtCQUEwQztFeEVnelJsRDtFd0U5eVJNOztJQUVFLDZCQUFzQztFeEVnelI5QztFd0UvelJNO0lBQWdDLDBCQUE0QjtFeEVrMFJsRTtFd0VqMFJNOztJQUVFLDhCQUFvQztFeEVtMFI1QztFd0VqMFJNOztJQUVFLGdDQUF3QztFeEVtMFJoRDtFd0VqMFJNOztJQUVFLGlDQUEwQztFeEVtMFJsRDtFd0VqMFJNOztJQUVFLCtCQUFzQztFeEVtMFI5QztFd0VsMVJNO0lBQWdDLHdCQUE0QjtFeEVxMVJsRTtFd0VwMVJNOztJQUVFLDRCQUFvQztFeEVzMVI1QztFd0VwMVJNOztJQUVFLDhCQUF3QztFeEVzMVJoRDtFd0VwMVJNOztJQUVFLCtCQUEwQztFeEVzMVJsRDtFd0VwMVJNOztJQUVFLDZCQUFzQztFeEVzMVI5QztFd0U5MFJNO0lBQXdCLDJCQUEyQjtFeEVpMVJ6RDtFd0VoMVJNOztJQUVFLCtCQUErQjtFeEVrMVJ2QztFd0VoMVJNOztJQUVFLGlDQUFpQztFeEVrMVJ6QztFd0VoMVJNOztJQUVFLGtDQUFrQztFeEVrMVIxQztFd0VoMVJNOztJQUVFLGdDQUFnQztFeEVrMVJ4QztFd0VqMlJNO0lBQXdCLDBCQUEyQjtFeEVvMlJ6RDtFd0VuMlJNOztJQUVFLDhCQUErQjtFeEVxMlJ2QztFd0VuMlJNOztJQUVFLGdDQUFpQztFeEVxMlJ6QztFd0VuMlJNOztJQUVFLGlDQUFrQztFeEVxMlIxQztFd0VuMlJNOztJQUVFLCtCQUFnQztFeEVxMlJ4QztFd0VwM1JNO0lBQXdCLHdCQUEyQjtFeEV1M1J6RDtFd0V0M1JNOztJQUVFLDRCQUErQjtFeEV3M1J2QztFd0V0M1JNOztJQUVFLDhCQUFpQztFeEV3M1J6QztFd0V0M1JNOztJQUVFLCtCQUFrQztFeEV3M1IxQztFd0V0M1JNOztJQUVFLDZCQUFnQztFeEV3M1J4QztFd0V2NFJNO0lBQXdCLDBCQUEyQjtFeEUwNFJ6RDtFd0V6NFJNOztJQUVFLDhCQUErQjtFeEUyNFJ2QztFd0V6NFJNOztJQUVFLGdDQUFpQztFeEUyNFJ6QztFd0V6NFJNOztJQUVFLGlDQUFrQztFeEUyNFIxQztFd0V6NFJNOztJQUVFLCtCQUFnQztFeEUyNFJ4QztFd0UxNVJNO0lBQXdCLHdCQUEyQjtFeEU2NVJ6RDtFd0U1NVJNOztJQUVFLDRCQUErQjtFeEU4NVJ2QztFd0U1NVJNOztJQUVFLDhCQUFpQztFeEU4NVJ6QztFd0U1NVJNOztJQUVFLCtCQUFrQztFeEU4NVIxQztFd0U1NVJNOztJQUVFLDZCQUFnQztFeEU4NVJ4QztFd0V4NVJFO0lBQW1CLHVCQUF1QjtFeEUyNVI1QztFd0UxNVJFOztJQUVFLDJCQUEyQjtFeEU0NVIvQjtFd0UxNVJFOztJQUVFLDZCQUE2QjtFeEU0NVJqQztFd0UxNVJFOztJQUVFLDhCQUE4QjtFeEU0NVJsQztFd0UxNVJFOztJQUVFLDRCQUE0QjtFeEU0NVJoQztBQUNGOztBZXQ2Ukk7RXlEbERJO0lBQWdDLG9CQUE0QjtFeEU2OVJsRTtFd0U1OVJNOztJQUVFLHdCQUFvQztFeEU4OVI1QztFd0U1OVJNOztJQUVFLDBCQUF3QztFeEU4OVJoRDtFd0U1OVJNOztJQUVFLDJCQUEwQztFeEU4OVJsRDtFd0U1OVJNOztJQUVFLHlCQUFzQztFeEU4OVI5QztFd0U3K1JNO0lBQWdDLDBCQUE0QjtFeEVnL1JsRTtFd0UvK1JNOztJQUVFLDhCQUFvQztFeEVpL1I1QztFd0UvK1JNOztJQUVFLGdDQUF3QztFeEVpL1JoRDtFd0UvK1JNOztJQUVFLGlDQUEwQztFeEVpL1JsRDtFd0UvK1JNOztJQUVFLCtCQUFzQztFeEVpL1I5QztFd0VoZ1NNO0lBQWdDLHlCQUE0QjtFeEVtZ1NsRTtFd0VsZ1NNOztJQUVFLDZCQUFvQztFeEVvZ1M1QztFd0VsZ1NNOztJQUVFLCtCQUF3QztFeEVvZ1NoRDtFd0VsZ1NNOztJQUVFLGdDQUEwQztFeEVvZ1NsRDtFd0VsZ1NNOztJQUVFLDhCQUFzQztFeEVvZ1M5QztFd0VuaFNNO0lBQWdDLHVCQUE0QjtFeEVzaFNsRTtFd0VyaFNNOztJQUVFLDJCQUFvQztFeEV1aFM1QztFd0VyaFNNOztJQUVFLDZCQUF3QztFeEV1aFNoRDtFd0VyaFNNOztJQUVFLDhCQUEwQztFeEV1aFNsRDtFd0VyaFNNOztJQUVFLDRCQUFzQztFeEV1aFM5QztFd0V0aVNNO0lBQWdDLHlCQUE0QjtFeEV5aVNsRTtFd0V4aVNNOztJQUVFLDZCQUFvQztFeEUwaVM1QztFd0V4aVNNOztJQUVFLCtCQUF3QztFeEUwaVNoRDtFd0V4aVNNOztJQUVFLGdDQUEwQztFeEUwaVNsRDtFd0V4aVNNOztJQUVFLDhCQUFzQztFeEUwaVM5QztFd0V6alNNO0lBQWdDLHVCQUE0QjtFeEU0alNsRTtFd0UzalNNOztJQUVFLDJCQUFvQztFeEU2alM1QztFd0UzalNNOztJQUVFLDZCQUF3QztFeEU2alNoRDtFd0UzalNNOztJQUVFLDhCQUEwQztFeEU2alNsRDtFd0UzalNNOztJQUVFLDRCQUFzQztFeEU2alM5QztFd0U1a1NNO0lBQWdDLHFCQUE0QjtFeEUra1NsRTtFd0U5a1NNOztJQUVFLHlCQUFvQztFeEVnbFM1QztFd0U5a1NNOztJQUVFLDJCQUF3QztFeEVnbFNoRDtFd0U5a1NNOztJQUVFLDRCQUEwQztFeEVnbFNsRDtFd0U5a1NNOztJQUVFLDBCQUFzQztFeEVnbFM5QztFd0UvbFNNO0lBQWdDLDJCQUE0QjtFeEVrbVNsRTtFd0VqbVNNOztJQUVFLCtCQUFvQztFeEVtbVM1QztFd0VqbVNNOztJQUVFLGlDQUF3QztFeEVtbVNoRDtFd0VqbVNNOztJQUVFLGtDQUEwQztFeEVtbVNsRDtFd0VqbVNNOztJQUVFLGdDQUFzQztFeEVtbVM5QztFd0VsblNNO0lBQWdDLDBCQUE0QjtFeEVxblNsRTtFd0VwblNNOztJQUVFLDhCQUFvQztFeEVzblM1QztFd0VwblNNOztJQUVFLGdDQUF3QztFeEVzblNoRDtFd0VwblNNOztJQUVFLGlDQUEwQztFeEVzblNsRDtFd0VwblNNOztJQUVFLCtCQUFzQztFeEVzblM5QztFd0Vyb1NNO0lBQWdDLHdCQUE0QjtFeEV3b1NsRTtFd0V2b1NNOztJQUVFLDRCQUFvQztFeEV5b1M1QztFd0V2b1NNOztJQUVFLDhCQUF3QztFeEV5b1NoRDtFd0V2b1NNOztJQUVFLCtCQUEwQztFeEV5b1NsRDtFd0V2b1NNOztJQUVFLDZCQUFzQztFeEV5b1M5QztFd0V4cFNNO0lBQWdDLDBCQUE0QjtFeEUycFNsRTtFd0UxcFNNOztJQUVFLDhCQUFvQztFeEU0cFM1QztFd0UxcFNNOztJQUVFLGdDQUF3QztFeEU0cFNoRDtFd0UxcFNNOztJQUVFLGlDQUEwQztFeEU0cFNsRDtFd0UxcFNNOztJQUVFLCtCQUFzQztFeEU0cFM5QztFd0UzcVNNO0lBQWdDLHdCQUE0QjtFeEU4cVNsRTtFd0U3cVNNOztJQUVFLDRCQUFvQztFeEUrcVM1QztFd0U3cVNNOztJQUVFLDhCQUF3QztFeEUrcVNoRDtFd0U3cVNNOztJQUVFLCtCQUEwQztFeEUrcVNsRDtFd0U3cVNNOztJQUVFLDZCQUFzQztFeEUrcVM5QztFd0V2cVNNO0lBQXdCLDJCQUEyQjtFeEUwcVN6RDtFd0V6cVNNOztJQUVFLCtCQUErQjtFeEUycVN2QztFd0V6cVNNOztJQUVFLGlDQUFpQztFeEUycVN6QztFd0V6cVNNOztJQUVFLGtDQUFrQztFeEUycVMxQztFd0V6cVNNOztJQUVFLGdDQUFnQztFeEUycVN4QztFd0UxclNNO0lBQXdCLDBCQUEyQjtFeEU2clN6RDtFd0U1clNNOztJQUVFLDhCQUErQjtFeEU4clN2QztFd0U1clNNOztJQUVFLGdDQUFpQztFeEU4clN6QztFd0U1clNNOztJQUVFLGlDQUFrQztFeEU4clMxQztFd0U1clNNOztJQUVFLCtCQUFnQztFeEU4clN4QztFd0U3c1NNO0lBQXdCLHdCQUEyQjtFeEVndFN6RDtFd0Uvc1NNOztJQUVFLDRCQUErQjtFeEVpdFN2QztFd0Uvc1NNOztJQUVFLDhCQUFpQztFeEVpdFN6QztFd0Uvc1NNOztJQUVFLCtCQUFrQztFeEVpdFMxQztFd0Uvc1NNOztJQUVFLDZCQUFnQztFeEVpdFN4QztFd0VodVNNO0lBQXdCLDBCQUEyQjtFeEVtdVN6RDtFd0VsdVNNOztJQUVFLDhCQUErQjtFeEVvdVN2QztFd0VsdVNNOztJQUVFLGdDQUFpQztFeEVvdVN6QztFd0VsdVNNOztJQUVFLGlDQUFrQztFeEVvdVMxQztFd0VsdVNNOztJQUVFLCtCQUFnQztFeEVvdVN4QztFd0VudlNNO0lBQXdCLHdCQUEyQjtFeEVzdlN6RDtFd0VydlNNOztJQUVFLDRCQUErQjtFeEV1dlN2QztFd0VydlNNOztJQUVFLDhCQUFpQztFeEV1dlN6QztFd0VydlNNOztJQUVFLCtCQUFrQztFeEV1dlMxQztFd0VydlNNOztJQUVFLDZCQUFnQztFeEV1dlN4QztFd0VqdlNFO0lBQW1CLHVCQUF1QjtFeEVvdlM1QztFd0VudlNFOztJQUVFLDJCQUEyQjtFeEVxdlMvQjtFd0VudlNFOztJQUVFLDZCQUE2QjtFeEVxdlNqQztFd0VudlNFOztJQUVFLDhCQUE4QjtFeEVxdlNsQztFd0VudlNFOztJQUVFLDRCQUE0QjtFeEVxdlNoQztBQUNGOztBZS92U0k7RXlEbERJO0lBQWdDLG9CQUE0QjtFeEVzelNsRTtFd0VyelNNOztJQUVFLHdCQUFvQztFeEV1elM1QztFd0VyelNNOztJQUVFLDBCQUF3QztFeEV1elNoRDtFd0VyelNNOztJQUVFLDJCQUEwQztFeEV1elNsRDtFd0VyelNNOztJQUVFLHlCQUFzQztFeEV1elM5QztFd0V0MFNNO0lBQWdDLDBCQUE0QjtFeEV5MFNsRTtFd0V4MFNNOztJQUVFLDhCQUFvQztFeEUwMFM1QztFd0V4MFNNOztJQUVFLGdDQUF3QztFeEUwMFNoRDtFd0V4MFNNOztJQUVFLGlDQUEwQztFeEUwMFNsRDtFd0V4MFNNOztJQUVFLCtCQUFzQztFeEUwMFM5QztFd0V6MVNNO0lBQWdDLHlCQUE0QjtFeEU0MVNsRTtFd0UzMVNNOztJQUVFLDZCQUFvQztFeEU2MVM1QztFd0UzMVNNOztJQUVFLCtCQUF3QztFeEU2MVNoRDtFd0UzMVNNOztJQUVFLGdDQUEwQztFeEU2MVNsRDtFd0UzMVNNOztJQUVFLDhCQUFzQztFeEU2MVM5QztFd0U1MlNNO0lBQWdDLHVCQUE0QjtFeEUrMlNsRTtFd0U5MlNNOztJQUVFLDJCQUFvQztFeEVnM1M1QztFd0U5MlNNOztJQUVFLDZCQUF3QztFeEVnM1NoRDtFd0U5MlNNOztJQUVFLDhCQUEwQztFeEVnM1NsRDtFd0U5MlNNOztJQUVFLDRCQUFzQztFeEVnM1M5QztFd0UvM1NNO0lBQWdDLHlCQUE0QjtFeEVrNFNsRTtFd0VqNFNNOztJQUVFLDZCQUFvQztFeEVtNFM1QztFd0VqNFNNOztJQUVFLCtCQUF3QztFeEVtNFNoRDtFd0VqNFNNOztJQUVFLGdDQUEwQztFeEVtNFNsRDtFd0VqNFNNOztJQUVFLDhCQUFzQztFeEVtNFM5QztFd0VsNVNNO0lBQWdDLHVCQUE0QjtFeEVxNVNsRTtFd0VwNVNNOztJQUVFLDJCQUFvQztFeEVzNVM1QztFd0VwNVNNOztJQUVFLDZCQUF3QztFeEVzNVNoRDtFd0VwNVNNOztJQUVFLDhCQUEwQztFeEVzNVNsRDtFd0VwNVNNOztJQUVFLDRCQUFzQztFeEVzNVM5QztFd0VyNlNNO0lBQWdDLHFCQUE0QjtFeEV3NlNsRTtFd0V2NlNNOztJQUVFLHlCQUFvQztFeEV5NlM1QztFd0V2NlNNOztJQUVFLDJCQUF3QztFeEV5NlNoRDtFd0V2NlNNOztJQUVFLDRCQUEwQztFeEV5NlNsRDtFd0V2NlNNOztJQUVFLDBCQUFzQztFeEV5NlM5QztFd0V4N1NNO0lBQWdDLDJCQUE0QjtFeEUyN1NsRTtFd0UxN1NNOztJQUVFLCtCQUFvQztFeEU0N1M1QztFd0UxN1NNOztJQUVFLGlDQUF3QztFeEU0N1NoRDtFd0UxN1NNOztJQUVFLGtDQUEwQztFeEU0N1NsRDtFd0UxN1NNOztJQUVFLGdDQUFzQztFeEU0N1M5QztFd0UzOFNNO0lBQWdDLDBCQUE0QjtFeEU4OFNsRTtFd0U3OFNNOztJQUVFLDhCQUFvQztFeEUrOFM1QztFd0U3OFNNOztJQUVFLGdDQUF3QztFeEUrOFNoRDtFd0U3OFNNOztJQUVFLGlDQUEwQztFeEUrOFNsRDtFd0U3OFNNOztJQUVFLCtCQUFzQztFeEUrOFM5QztFd0U5OVNNO0lBQWdDLHdCQUE0QjtFeEVpK1NsRTtFd0VoK1NNOztJQUVFLDRCQUFvQztFeEVrK1M1QztFd0VoK1NNOztJQUVFLDhCQUF3QztFeEVrK1NoRDtFd0VoK1NNOztJQUVFLCtCQUEwQztFeEVrK1NsRDtFd0VoK1NNOztJQUVFLDZCQUFzQztFeEVrK1M5QztFd0VqL1NNO0lBQWdDLDBCQUE0QjtFeEVvL1NsRTtFd0VuL1NNOztJQUVFLDhCQUFvQztFeEVxL1M1QztFd0VuL1NNOztJQUVFLGdDQUF3QztFeEVxL1NoRDtFd0VuL1NNOztJQUVFLGlDQUEwQztFeEVxL1NsRDtFd0VuL1NNOztJQUVFLCtCQUFzQztFeEVxL1M5QztFd0VwZ1RNO0lBQWdDLHdCQUE0QjtFeEV1Z1RsRTtFd0V0Z1RNOztJQUVFLDRCQUFvQztFeEV3Z1Q1QztFd0V0Z1RNOztJQUVFLDhCQUF3QztFeEV3Z1RoRDtFd0V0Z1RNOztJQUVFLCtCQUEwQztFeEV3Z1RsRDtFd0V0Z1RNOztJQUVFLDZCQUFzQztFeEV3Z1Q5QztFd0VoZ1RNO0lBQXdCLDJCQUEyQjtFeEVtZ1R6RDtFd0VsZ1RNOztJQUVFLCtCQUErQjtFeEVvZ1R2QztFd0VsZ1RNOztJQUVFLGlDQUFpQztFeEVvZ1R6QztFd0VsZ1RNOztJQUVFLGtDQUFrQztFeEVvZ1QxQztFd0VsZ1RNOztJQUVFLGdDQUFnQztFeEVvZ1R4QztFd0VuaFRNO0lBQXdCLDBCQUEyQjtFeEVzaFR6RDtFd0VyaFRNOztJQUVFLDhCQUErQjtFeEV1aFR2QztFd0VyaFRNOztJQUVFLGdDQUFpQztFeEV1aFR6QztFd0VyaFRNOztJQUVFLGlDQUFrQztFeEV1aFQxQztFd0VyaFRNOztJQUVFLCtCQUFnQztFeEV1aFR4QztFd0V0aVRNO0lBQXdCLHdCQUEyQjtFeEV5aVR6RDtFd0V4aVRNOztJQUVFLDRCQUErQjtFeEUwaVR2QztFd0V4aVRNOztJQUVFLDhCQUFpQztFeEUwaVR6QztFd0V4aVRNOztJQUVFLCtCQUFrQztFeEUwaVQxQztFd0V4aVRNOztJQUVFLDZCQUFnQztFeEUwaVR4QztFd0V6alRNO0lBQXdCLDBCQUEyQjtFeEU0alR6RDtFd0UzalRNOztJQUVFLDhCQUErQjtFeEU2alR2QztFd0UzalRNOztJQUVFLGdDQUFpQztFeEU2alR6QztFd0UzalRNOztJQUVFLGlDQUFrQztFeEU2alQxQztFd0UzalRNOztJQUVFLCtCQUFnQztFeEU2alR4QztFd0U1a1RNO0lBQXdCLHdCQUEyQjtFeEUra1R6RDtFd0U5a1RNOztJQUVFLDRCQUErQjtFeEVnbFR2QztFd0U5a1RNOztJQUVFLDhCQUFpQztFeEVnbFR6QztFd0U5a1RNOztJQUVFLCtCQUFrQztFeEVnbFQxQztFd0U5a1RNOztJQUVFLDZCQUFnQztFeEVnbFR4QztFd0Uxa1RFO0lBQW1CLHVCQUF1QjtFeEU2a1Q1QztFd0U1a1RFOztJQUVFLDJCQUEyQjtFeEU4a1QvQjtFd0U1a1RFOztJQUVFLDZCQUE2QjtFeEU4a1RqQztFd0U1a1RFOztJQUVFLDhCQUE4QjtFeEU4a1RsQztFd0U1a1RFOztJQUVFLDRCQUE0QjtFeEU4a1RoQztBQUNGOztBZXhsVEk7RXlEbERJO0lBQWdDLG9CQUE0QjtFeEUrb1RsRTtFd0U5b1RNOztJQUVFLHdCQUFvQztFeEVncFQ1QztFd0U5b1RNOztJQUVFLDBCQUF3QztFeEVncFRoRDtFd0U5b1RNOztJQUVFLDJCQUEwQztFeEVncFRsRDtFd0U5b1RNOztJQUVFLHlCQUFzQztFeEVncFQ5QztFd0UvcFRNO0lBQWdDLDBCQUE0QjtFeEVrcVRsRTtFd0VqcVRNOztJQUVFLDhCQUFvQztFeEVtcVQ1QztFd0VqcVRNOztJQUVFLGdDQUF3QztFeEVtcVRoRDtFd0VqcVRNOztJQUVFLGlDQUEwQztFeEVtcVRsRDtFd0VqcVRNOztJQUVFLCtCQUFzQztFeEVtcVQ5QztFd0VsclRNO0lBQWdDLHlCQUE0QjtFeEVxclRsRTtFd0VwclRNOztJQUVFLDZCQUFvQztFeEVzclQ1QztFd0VwclRNOztJQUVFLCtCQUF3QztFeEVzclRoRDtFd0VwclRNOztJQUVFLGdDQUEwQztFeEVzclRsRDtFd0VwclRNOztJQUVFLDhCQUFzQztFeEVzclQ5QztFd0Vyc1RNO0lBQWdDLHVCQUE0QjtFeEV3c1RsRTtFd0V2c1RNOztJQUVFLDJCQUFvQztFeEV5c1Q1QztFd0V2c1RNOztJQUVFLDZCQUF3QztFeEV5c1RoRDtFd0V2c1RNOztJQUVFLDhCQUEwQztFeEV5c1RsRDtFd0V2c1RNOztJQUVFLDRCQUFzQztFeEV5c1Q5QztFd0V4dFRNO0lBQWdDLHlCQUE0QjtFeEUydFRsRTtFd0UxdFRNOztJQUVFLDZCQUFvQztFeEU0dFQ1QztFd0UxdFRNOztJQUVFLCtCQUF3QztFeEU0dFRoRDtFd0UxdFRNOztJQUVFLGdDQUEwQztFeEU0dFRsRDtFd0UxdFRNOztJQUVFLDhCQUFzQztFeEU0dFQ5QztFd0UzdVRNO0lBQWdDLHVCQUE0QjtFeEU4dVRsRTtFd0U3dVRNOztJQUVFLDJCQUFvQztFeEUrdVQ1QztFd0U3dVRNOztJQUVFLDZCQUF3QztFeEUrdVRoRDtFd0U3dVRNOztJQUVFLDhCQUEwQztFeEUrdVRsRDtFd0U3dVRNOztJQUVFLDRCQUFzQztFeEUrdVQ5QztFd0U5dlRNO0lBQWdDLHFCQUE0QjtFeEVpd1RsRTtFd0Vod1RNOztJQUVFLHlCQUFvQztFeEVrd1Q1QztFd0Vod1RNOztJQUVFLDJCQUF3QztFeEVrd1RoRDtFd0Vod1RNOztJQUVFLDRCQUEwQztFeEVrd1RsRDtFd0Vod1RNOztJQUVFLDBCQUFzQztFeEVrd1Q5QztFd0VqeFRNO0lBQWdDLDJCQUE0QjtFeEVveFRsRTtFd0VueFRNOztJQUVFLCtCQUFvQztFeEVxeFQ1QztFd0VueFRNOztJQUVFLGlDQUF3QztFeEVxeFRoRDtFd0VueFRNOztJQUVFLGtDQUEwQztFeEVxeFRsRDtFd0VueFRNOztJQUVFLGdDQUFzQztFeEVxeFQ5QztFd0VweVRNO0lBQWdDLDBCQUE0QjtFeEV1eVRsRTtFd0V0eVRNOztJQUVFLDhCQUFvQztFeEV3eVQ1QztFd0V0eVRNOztJQUVFLGdDQUF3QztFeEV3eVRoRDtFd0V0eVRNOztJQUVFLGlDQUEwQztFeEV3eVRsRDtFd0V0eVRNOztJQUVFLCtCQUFzQztFeEV3eVQ5QztFd0V2elRNO0lBQWdDLHdCQUE0QjtFeEUwelRsRTtFd0V6elRNOztJQUVFLDRCQUFvQztFeEUyelQ1QztFd0V6elRNOztJQUVFLDhCQUF3QztFeEUyelRoRDtFd0V6elRNOztJQUVFLCtCQUEwQztFeEUyelRsRDtFd0V6elRNOztJQUVFLDZCQUFzQztFeEUyelQ5QztFd0UxMFRNO0lBQWdDLDBCQUE0QjtFeEU2MFRsRTtFd0U1MFRNOztJQUVFLDhCQUFvQztFeEU4MFQ1QztFd0U1MFRNOztJQUVFLGdDQUF3QztFeEU4MFRoRDtFd0U1MFRNOztJQUVFLGlDQUEwQztFeEU4MFRsRDtFd0U1MFRNOztJQUVFLCtCQUFzQztFeEU4MFQ5QztFd0U3MVRNO0lBQWdDLHdCQUE0QjtFeEVnMlRsRTtFd0UvMVRNOztJQUVFLDRCQUFvQztFeEVpMlQ1QztFd0UvMVRNOztJQUVFLDhCQUF3QztFeEVpMlRoRDtFd0UvMVRNOztJQUVFLCtCQUEwQztFeEVpMlRsRDtFd0UvMVRNOztJQUVFLDZCQUFzQztFeEVpMlQ5QztFd0V6MVRNO0lBQXdCLDJCQUEyQjtFeEU0MVR6RDtFd0UzMVRNOztJQUVFLCtCQUErQjtFeEU2MVR2QztFd0UzMVRNOztJQUVFLGlDQUFpQztFeEU2MVR6QztFd0UzMVRNOztJQUVFLGtDQUFrQztFeEU2MVQxQztFd0UzMVRNOztJQUVFLGdDQUFnQztFeEU2MVR4QztFd0U1MlRNO0lBQXdCLDBCQUEyQjtFeEUrMlR6RDtFd0U5MlRNOztJQUVFLDhCQUErQjtFeEVnM1R2QztFd0U5MlRNOztJQUVFLGdDQUFp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O0VBQXVCLDhCQUEyQztBMUVnbFVsRTs7QTBFL2tVQTtFQUF1Qiw2QkFBNkI7QTFFbWxVcEQ7O0EwRS9rVUE7RUFBYyx5QkFBd0I7QTFFbWxVdEM7O0E0RTFuVUU7RUFDRSx5QkFBd0I7QTVFNm5VNUI7O0FNbm5VRTtFc0VMTSx5QkFBMEU7QTVFNG5VbEY7O0E0RWxvVUU7RUFDRSx5QkFBd0I7QTVFcW9VNUI7O0FNM25VRTtFc0VMTSx5QkFBMEU7QTVFb29VbEY7O0E0RTFvVUU7RUFDRSx5QkFBd0I7QTVFNm9VNUI7O0FNbm9VRTtFc0VMTSx5QkFBMEU7QTVFNG9VbEY7O0E0RWxwVUU7RUFDRSx5QkFBd0I7QTVFcXBVNUI7O0FNM29VRTtFc0VMTSx5QkFBMEU7QTVFb3BVbEY7O0E0RTFwVUU7RUFDRSx5QkFBd0I7QTVFNnBVNUI7O0FNbnBVRTtFc0VMTSx5QkFBMEU7QTVFNHBVbEY7O0E0RWxxVUU7RUFDRSx5QkFBd0I7QTVFcXFVNUI7O0FNM3BVRTtFc0VMTSx5QkFBMEU7QTVFb3FVbEY7O0E0RTFxVUU7RUFDRSx5QkFBd0I7QTVFNnFVNUI7O0FNbnFVRTtFc0VMTSx5QkFBMEU7QTVFNHFVbEY7O0E0RWxyVUU7RUFDRSx5QkFBd0I7QTVFcXJVNUI7O0FNM3FVRTtFc0VMTSx5QkFBMEU7QTVFb3JVbEY7O0EwRTdvVUE7RUFBYSx5QkFBNkI7QTFFaXBVMUM7O0EwRWhwVUE7RUFBYyx5QkFBNkI7QTFFb3BVM0M7O0EwRWxwVUE7RUFBaUIsb0NBQWtDO0ExRXNwVW5EOztBMEVycFVBO0VBQWlCLDBDQUFrQztBMUV5cFVuRDs7QTBFcnBVQTtFR3ZERSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsU0FBUztBN0VndFVYOztBMEV6cFVBO0VBQXdCLGdDQUFnQztBMUU2cFV4RDs7QTBFM3BVQTtFQUNFLGlDQUFpQztFQUNqQyxnQ0FBZ0M7QTFFOHBVbEM7O0EwRXpwVUE7RUFBYyx5QkFBeUI7QTFFNnBVdkM7O0E4RTl0VUE7RUFDRSw4QkFBOEI7QTlFaXVVaEM7O0E4RTl0VUE7RUFDRSw2QkFBNkI7QTlFaXVVL0I7O0ErRWp1VUU7RTVFT0Y7OztJNEVETSw0QkFBNEI7SUFFNUIsMkJBQTJCO0UvRWl1VS9CO0UrRTl0VUU7SUFFSSwwQkFBMEI7RS9FK3RVaEM7RStFdHRVRTtJQUNFLDZCQUE2QjtFL0V3dFVqQztFRzFoVUY7STRFL0tNLGdDQUFnQztFL0U0c1VwQztFK0Uxc1VFOztJQUVFLHlCM0V6Q1k7STJFMENaLHdCQUF3QjtFL0U0c1U1QjtFK0V6c1VFOztJQUVFLHdCQUF3QjtFL0Uyc1U1QjtFK0V4c1VFOzs7SUFHRSxVQUFVO0lBQ1YsU0FBUztFL0Uwc1ViO0UrRXZzVUU7O0lBRUUsdUJBQXVCO0UvRXlzVTNCO0UrRWpzVUU7SUFDRSxRM0UyaUNnQztFSndwU3BDO0VHdHVVRjtJNEVzQ00sMkJBQTJDO0UvRW1zVS9DO0UrRWpzVUU7SUFDRSwyQkFBMkM7RS9FbXNVL0M7RWtDeHdVRjtJNkMwRU0sYUFBYTtFL0Vpc1VqQjtFdUN2eFVGO0l3Q3lGTSxzQjNFN0VTO0VKOHdVYjtFaUIzeFVGO0k4RDhGTSxvQ0FBb0M7RS9FZ3NVeEM7RStFanNVRTs7SUFLSSxvQ0FBbUM7RS9FZ3NVekM7RWlCMXZVRjs7SThEaUVRLG9DQUFzQztFL0U2clU1QztFaUJ6cVVGO0k4RGZNLGNBQWM7RS9FMnJVbEI7RWtCeHlVQTs7OztJNkRtSE0scUIzRTlHVTtFSnl5VWhCO0VpQnBzVUY7SThEY00sY0FBYztJQUNkLHFCM0VwSFk7RUo2eVVoQjtBQUNGOztBZ0Z4elVBOzt1Q2hGNHpVdUM7QWdGeHpVdkM7RUFHUSxjQUFjO0VBQ2QsZUFBZTtFQUNmLHFCQUFxQjtBaEZ3elU3Qjs7QWdGN3pVQTtFQVNRLGFBQWE7QWhGd3pVckI7O0FnRmowVUE7RUFhUSxhQUFhO0FoRnd6VXJCOztBZ0ZyMFVBO0VBaUJRLGFBQWE7QWhGd3pVckI7O0FlanhVSTtFaUVsQ0E7SUFDSSxhQUFhO0VoRnV6VW5CO0VnRjkwVUY7SUEwQlksYUFBYTtFaEZ1elV2QjtFZ0ZqMVVGO0lBOEJZLGFBQWE7SUFDYixx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MjdXaEI7O0FvRi83V0E7RUFRSSxlQUFlO0FwRjI3V25COztBb0Z2N1dBO0VBR0kseUJyRjFKMEI7RXFGMkoxQixZQUFZO0FwRnc3V2hCOztBb0Y1N1dBO0VBUUksZUFBZTtBcEZ3N1duQjs7QW9GcDdXQTtFQUdJLHlCckZ0SzBCO0VxRnVLMUIsWUFBWTtBcEZxN1doQjs7QW9GejdXQTtFQU9JLGVBQWU7QXBGczdXbkI7O0FvRmw3V0E7RUFFSSx5QnJGaEwwQjtFcUZpTDFCLFlBQVk7QXBGbzdXaEI7O0FvRnY3V0E7RUFPSSxlQUFlO0FwRm83V25COztBb0ZoN1dBO0VBRUkseUJyRjNMMEI7RXFGNEwxQixZQUFZO0FwRms3V2hCOztBb0ZyN1dBO0VBT0ksZUFBZTtBcEZrN1duQjs7QW9GOTZXQTtFQUVJLHlCckZ0TTBCO0VxRnVNMUIsWUFBWTtFQUNaLFdBQVc7QXBGZzdXZjs7QW9GcDdXQTtFQU9JLGVBQWU7QXBGaTdXbkI7O0FvRjU2V0E7RUFFSSwyQkFBMkI7RUFDM0IsY0FBYztFQUNkLGFBQWE7RUFDYixXQUFXO0FwRjg2V2Y7O0FvRm43V0E7RUFVSSx5QnJGMU4wQjtFcUYyTjFCLGNBQWM7QXBGNjZXbEI7O0FvRng3V0E7RUFlSSx5QnJGNU4wQjtFcUY2TjFCLGNBQWM7QXBGNjZXbEI7O0FvRno2V0E7RUFDRTs7Ozs7S3BGZzdXRztFb0ZsNVdIOzs7Ozs7O0dwRjA1V0M7QUFDSDs7QW9GMTdXQTtFQVVJLHlCckYxTzBCO0VxRjJPMUIsY0FBYztFQUNkLGFBQWE7RUFDYixXQUFXO0FwRm83V2Y7O0FvRmo4V0E7RUFpQkkseUJyRmhQMkI7RXFGaVAzQixjQUFjO0FwRm83V2xCOztBb0Z0OFdBO0VBc0JJLHlCckYxUDBCO0VxRjJQMUIsY0FBYztBcEZvN1dsQjs7QW9GMzhXQTtFQTJCSSx5QnJGNVAwQjtFcUY2UDFCLGNBQWM7QXBGbzdXbEI7O0FvRnQ2V0E7RUFDRSxjckYzUTRCO0FDb3JYOUI7O0FvRnQ2V0E7RUFDRSxpQkFBaUI7QXBGeTZXbkI7O0FvRnQ2V0E7RUFDRSxjQUF5QjtBcEZ5Nlcz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O0FzRnQ4WEE7RUFDRSw2QkFBNkI7RUFDN0IsZ0JBQWdCO0F0Rnk4WGxCOztBc0YzOFhBO0VBS0ksY0FBYztBdEYwOFhsQjs7QXNGLzhYQTtFQVFJLGNBQWE7QXRGMjhYakI7O0FzRng4WEE7RUFDRSxjQUFjO0VBQ2QsaUJBQWlCO0F0RjI4WG5COztBc0Z6OFhBO0VBQ0Usa0JBQWtCO0F0RjQ4WHBCOztBc0YxOFhBO0VBQ0UsNkJBQTZCO0F0RjY4WC9COztBc0YxOFhBO0VBQ0UsZUFBZTtBdEY2OFhqQjs7QXNGMThYQTtFQUNFLFlBQVk7QXRGNjhYZDs7QXNGMThYQTtFQUNFLGlCQUFpQjtFQUNqQixnQkFBZ0I7QXRGNjhYbEI7O0FzRjE4WEE7RUFDRSx5QkFBeUI7QXRGNjhYM0I7O0FzRjE4WEE7RUFDRSxpQkFBaUI7QXRGNjhYbkI7O0FzRjE4WEE7RUFDRSxjQUFjO0F0RjY4WGhCOztBc0YxOFhBO0VBQ0UsYUFBYTtBdEY2OFhmOztBc0YxOFhBO0VBQ0UseUJ2Ri9INEI7RXVGZ0k1QixZQUNGO0F0RjQ4WEE7O0FzRjE4WEE7RUFDRSxlQUFlO0F0RjY4WGpCOztBdUZocFlBOzt1Q3ZGb3BZdUM7QXVGanBZdkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0V2Rm9zWUU7QUcvcVlGO0VvRitCRSxZQUFZO0F2Rm1wWWQ7O0FHN3BZQTtFb0ZjRSxxQkFBNEM7RUFDNUMsa0JBQWtCO0VBQ2xCLGdCQUFnQjtBdkZtcFlsQjs7QWVwcFlJO0VaZko7SW9GcUJJLHFCQUFtRDtFdkZtcFlyRDtBQUNGOztBZTFwWUk7RVpmSjtJb0YyQkkscUJBQW9EO0V2Rm1wWXREO0FBQ0Y7O0F1RmhwWUE7RUFDRSxheEZxQ21CO0V3RnBDbkIseUJ4RmtDaUI7RXdGakNqQixleEZ5QzRCO0V3RnhDNUIsV3hGaUNpQjtFd0ZoQ2pCLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsUUFBUTtFQUNSLFNBQVM7RUFDVCwrQkFBK0I7QXZGbXBZakM7O0F1RjVwWUE7RUFZSSxXQUFVO0VBQ1YscUJB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RTtFQUN0RSxrREFBdUU7QWpHdzlidkY7O0FpRzFqY0E7RUFzR2dCLGlDQW5IaUM7QWpHMmtjakQ7O0FpRzlqY0E7RUE2R1Esa0JBNUkrQjtBakdpbWN2Qzs7QWlHbGtjQTtFQWlIZ0Isb0NBQXlDO0VBQ3pDLHVCQTlIaUM7RUErSGpDLDRCQS9IaUM7RUFnSWpDLG9EQUF5RDtBakdxOWJ6RTs7QWlHemtjQTtFQXdIZ0IsZ0NBQXFDO0FqR3E5YnJEOztBaUc3a2NBO0VBNEhnQiw0Q0FBc0U7RUFDdEUsNkNBQXVFO0FqR3E5YnZGOztBaUdsbGNBO0VBaUlnQiw0QkE3SWlDO0FqR2ttY2pEOztBaUd0bGNBO0VBdUlRLGlCQUFpQjtBakdtOWJ6QiIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2hlbHBlcnMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL2FwcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY3VzdG9tLWZvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2p1bWJvdHJvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tZWRpYS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hbGlnbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19pbnRlcmFjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fb3ZlcmZsb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcmludC5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9fbmF2aWdhdGlvbi5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbGF5b3V0L19jb250ZW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbGF5b3V0L193aWRnZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9sYXlvdXQvX29yZGVycy5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9fYWRkcmVzc2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbGF5b3V0L19zdXBwbGllci5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbGF5b3V0L19zaWdudXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9sYXlvdXQvX2N1c3RvbWVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbGF5b3V0L19jb250YWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbGF5b3V0L19idWZmZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9sYXlvdXQvX2xlZnRfbWVudS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3dpcGVyL3N3aXBlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3dpcGVyL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zd2lwZXIvY29tcG9uZW50cy9uYXZpZ2F0aW9uL25hdmlnYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9jb21wb25lbnRzL19zb2NpYWwtbWVkaWFzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vY29tcG9uZW50cy9fc3dpdGNoLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL21peGluc1wiO1xuXG4vL1RPRE8gbWVyZ2VyIGNldHRlIHBhcnRpZSBldCBsYSBwYXJ0aWUgZm9udC1mYWNlIGRlIHZ1ZS9Db21tb24vc2Nzc1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byBUaGluJztcbiAgc3JjOiB1cmwoJy4uLy4uL2ZvbnRzL0xhdG8tVGhpbi50dGYnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG8gTGlnaHQnO1xuICBzcmM6IHVybCgnLi4vLi4vZm9udHMvTGF0by1MaWdodC50dGYnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG8nO1xuICBzcmM6IHVybCgnLi4vLi4vZm9udHMvTGF0by1SZWd1bGFyLnR0ZicpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byBCbGFjayc7XG4gIHNyYzogdXJsKCcuLi8uLi9mb250cy9MYXRvLUJsYWNrLnR0ZicpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byBCb2xkJztcbiAgc3JjOiB1cmwoJy4uLy4uL2ZvbnRzL0xhdG8tQm9sZC50dGYnKTtcbn1cblxuLy8gWW91IGNhbiBvdmVycmlkZSBhbGwgZGVmYXVsdHMgYm9vdHN0cmFwIHZhcmlhYmxlcyBpbiB0aGlzIGZpbGVcbi8vIENoZWNrIG5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MgZmlsZSBmb3IgcmVmZXJlbmNlXG5cbiRib2R5LWJnOiAjRkZGRkZGO1xuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gICAgICAgIHhzOiAwLFxuICAgICAgICBzbTogNTc2cHgsXG4gICAgICAgIG1kOiA3NjhweCxcbiAgICAgICAgbGc6IDk5MnB4LFxuICAgICAgICB4bDogMTIwMHB4LFxuICAgICAgICB4eGw6IDE0MDBweFxuKTtcblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gICAgICAgIHNtOiA1NDBweCxcbiAgICAgICAgbWQ6IDcyMHB4LFxuICAgICAgICBsZzogOTYwcHgsXG4gICAgICAgIHhsOiAxMTQwcHgsXG4gICAgICAgIHh4bDogMTM4MHB4XG4pO1xuXG4vLyBDT0xPUlxuLy9cbi8vIEFNaTIgQ29sb3JzXG5cbiRhbWkyLXBpbms6ICAgICAgICAgICAgI0REM0E5ODtcbiRhbWkyLXBpbmstbGlnaHQ6ICAgICAgI0M0MzE3RDtcbiRhbWkyLXBpbmstc2Vjb25kYXJ5OiAgI0Q2NTg5QTtcbiRhbWkyLWRhcms6ICAgICAgICAgICAgIzliMjc2MztcbiRhbWkyLW9yYW5nZTogICAgICAgICAgI0ZGODAwQTsgLy8gQ8O0dMOpIE1lbnVcbiRhbWkyLW9yYW5nZS1zZWNvbmRhcnk6ICNFMTYyMTE7XG4kYW1pMi1ncmVlbjogICAgICAgICAgICMzRkE0MzU7IC8vIETDqXZlbG9wcGVtZW50IGR1cmFibGVcbiRhbWkyLWdyZWVuLXNlY29uZGFyeTogI0FFQ0U1MjsgLy8gRMOpdmVsb3BwZW1lbnQgZHVyYWJsZSBzZWNvbmRhaXJlXG5cbiRwaW5rOiAjZGQzYTk4O1xuJHJlZDogI2Y5NjA2MDtcbiRvcmFuZ2U6ICNmZjgwMGE7XG4kbGlnaHQtb3JhbmdlOiAjZmZhOTQ1O1xuJGdyZWVuOiAjMzViZjYzO1xuJHllbGxvdzogI2ZmZDgxNztcbiRibGFjay0xOiAjMjcyNzI3O1xuJGJsYWNrLTI6ICM3MDcwNzA7XG4kZGFyay1ncmV5OiAjNzY3Njc2O1xuJGdyZXk6ICNmMmYyZjI7XG4kbGlnaHQtZ3JleS0xOiAjZDVkNWQ1O1xuJGxpZ2h0LWdyZXktMjogI2U4ZThlODtcbiR3aGl0ZTogI2ZmZmZmZjtcbiR3aGl0ZS1vLTE1OiByZ2JhKDAsIDAsIDAsIDAuMTYxKTtcbiRvcmFuZ2UtbGlnaHQ6ICNGRkU1Qzc7XG4kb3JhbmdlLWxpZ2h0ZXI6IHJnYmEoMjU1LCAyMjksIDE5OSwgLjQzKTtcblxuLy8gTEFZT1VUXG4vL1xuLy8gSGVhZGVyXG5cbiRoZWFkZXItYmc6ICNGRkY7XG4kaGVhZGVyLWNvbG9yOiAjMjcyNzI3O1xuJGhlYWRlci1oZWlnaHQ6IDIwMHB4O1xuXG4kYW1pMi1sb2dvLXdpZHRoLXdpdGhvdXQtdW5pdDogMjQ1OyAvLyB1c2VkIHRvIGdldCBwYXRoXG4kYW1pMi1sb2dvLXdpZHRoOiAjeyRhbWkyLWxvZ28td2lkdGgtd2l0aG91dC11bml0fXB4O1xuJGFtaTItbG9nby1oZWlnaHQtd2l0aG91dC11bml0OiAxMjI7IC8vIHVzZWQgdG8gZ2V0IHBhdGhcbiRhbWkyLWxvZ28taGVpZ2h0OiAjeyRhbWkyLWxvZ28taGVpZ2h0LXdpdGhvdXQtdW5pdH1weDtcblxuLy8gQ29udGVudFxuXG4vLyBDT01QT05FTlRTXG4vL1xuLy8gU2lkZWJhclxuXG4kc2lkZWJhci13aWR0aDogMzQwcHg7XG4kc2lkZWJhci10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuJHNpZGViYXItY29udGVudC1wYWRkaW5nOiAxMHB4O1xuXG4vLyBGb290ZXJcblxuJGZvb3Rlci1iZzogIzI3MjcyNztcbiRmb290ZXItY29sb3I6ICNGRkY7XG4kZm9vdGVyLWhlaWdodDogMzUwcHg7XG4kZm9vdGVyLWhlaWdodC10YWJsZXQ6IDM3NXB4O1xuJGZvb3Rlci1oZWlnaHQtc21hbGwtZGVza3RvcDogMzAwcHg7XG4kZm9vdGVyLWhlaWdodC1kZXNrdG9wOiAyMDBweDtcbiRmb290ZXItZm9udC1zaXplOiAxNnB4O1xuJGZvb3Rlci1mb250LXNpemUtdGFibGV0OiAxNXB4O1xuJGZvb3Rlci1mb250LXNpemUtbW9iaWxlOiAxM3B4O1xuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7c3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoI3skbmF2YmFyLWRhcmstY29sb3J9LCBcIihcIiwgXCIlMjhcIiksIFwiKVwiLCBcIiUyOVwiKX0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7c3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoI3skbmF2YmFyLWxpZ2h0LWNvbG9yfSwgXCIoXCIsIFwiJTI4XCIpLCBcIilcIiwgXCIlMjlcIil9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKTtcblxuLy8gRmlsZSBJbnB1dFxuXG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICAgICAgICBlbjogXCJCcm93c2VcIixcbiAgICAgICAgZnI6IFwiUGFyY291cmlyXCJcbik7XG4iLCIvLyBGb2xsb3cgU2FzcyBndWlkZWxpbmVzIGh0dHBzOi8vc2Fzcy1ndWlkZWxpbi5lcy8jdGhlLTctMS1wYXR0ZXJuXG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9taXhpbnNcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvbWl4aW5zXCI7XG5AaW1wb3J0IFwiaGVscGVycy9wbGFjZWhvbGRlcnNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwXCI7XG5cbi8vIHZlbmRvcnMgKG5vZGVfbW9kdWxlcy8pXG5AaW1wb3J0IFwifmZvbnQtYXdlc29tZS9jc3MvZm9udC1hd2Vzb21lLmNzc1wiO1xuQGltcG9ydCBcIn5ub3R5L2xpYi9ub3R5LmNzc1wiO1xuQGltcG9ydCBcIn5ub3R5L2xpYi90aGVtZXMvYm9vdHN0cmFwLXY0LmNzc1wiO1xuQGltcG9ydCBcIn5qcXVlcnktdWkvdGhlbWVzL2Jhc2UvYWxsLmNzc1wiO1xuQGltcG9ydCBcIn5AdnVlZm9ybS9tdWx0aXNlbGVjdC90aGVtZXMvZGVmYXVsdC5jc3NcIjtcblxuLy8gQmFzZVxuQGltcG9ydCBcIn5ub3JtYWxpemUuY3NzL25vcm1hbGl6ZS5jc3NcIjtcbkBpbXBvcnQgXCJiYXNlL3R5cG9ncmFwaHlcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibGF5b3V0L25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJsYXlvdXQvaGVhZGVyXCI7XG5AaW1wb3J0IFwibGF5b3V0L2NvbnRlbnRcIjtcbkBpbXBvcnQgXCJsYXlvdXQvd2lkZ2V0XCI7XG5AaW1wb3J0IFwibGF5b3V0L29yZGVyc1wiO1xuQGltcG9ydCBcImxheW91dC9hZGRyZXNzZXNcIjtcbkBpbXBvcnQgXCJsYXlvdXQvc3VwcGxpZXJcIjtcbkBpbXBvcnQgXCJsYXlvdXQvZm9vdGVyXCI7XG5AaW1wb3J0IFwibGF5b3V0L3NpZ251cFwiO1xuQGltcG9ydCBcImxheW91dC9jdXN0b21lclwiO1xuQGltcG9ydCBcImxheW91dC9jb250YWN0XCI7XG5AaW1wb3J0IFwibGF5b3V0L2J1ZmZlclwiO1xuQGltcG9ydCBcImxheW91dC9sZWZ0X21lbnVcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcImNvbXBvbmVudHMvc29jaWFsLW1lZGlhc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvc3dpdGNoXCI7XG4iLCIvKiFcbiAqIEJvb3RzdHJhcCB2NC42LjIgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIyIFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAyMiBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImN1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwianVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcIm1lZGlhXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwic3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxufVxuXG4vLyBGdXR1cmUtcHJvb2YgcnVsZTogaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IDpmb2N1cy12aXNpYmxlLCBzdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZVxuLy8gb24gZWxlbWVudHMgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IHJlY2VpdmUgZm9jdXMgYnV0IHdvdWxkbid0IG5vcm1hbGx5IHNob3cgYSB2aXNpYmxlXG4vLyBmb2N1cyBvdXRsaW5lLiBJbiBnZW5lcmFsLCB0aGlzIHdvdWxkIG1lYW4gdGhhdCB0aGUgb3V0bGluZSBpcyBvbmx5IGFwcGxpZWQgaWYgdGhlXG4vLyBpbnRlcmFjdGlvbiB0aGF0IGxlZCB0byB0aGUgZWxlbWVudCByZWNlaXZpbmcgcHJvZ3JhbW1hdGljIGZvY3VzIHdhcyBhIGtleWJvYXJkIGludGVyYWN0aW9uLFxuLy8gb3IgdGhlIGJyb3dzZXIgaGFzIHNvbWVob3cgZGV0ZXJtaW5lZCB0aGF0IHRoZSB1c2VyIGlzIHByaW1hcmlseSBhIGtleWJvYXJkIHVzZXIgYW5kL29yXG4vLyB3YW50cyBmb2N1cyBvdXRsaW5lcyB0byBhbHdheXMgYmUgcHJlc2VudGVkLlxuLy9cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvOmZvY3VzLXZpc2libGVcbi8vIGFuZCBodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTgvMDMvZm9jdXMtdmlzaWJsZS1hbmQtYmFja3dhcmRzLWNvbXBhdGliaWxpdHkvXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gNS4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDFcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICBib3JkZXItYm90dG9tOiAwOyAvLyA0XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gNVxufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG59XG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDgwJSk7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDc1JSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy9cbi8vIExpbmtzXG4vL1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy9cbi8vIENvZGVcbi8vXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbnByZSB7XG4gIC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuICBtYXJnaW4tdG9wOiAwO1xuICAvLyBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8vIERpc2FibGUgYXV0by1oaWRpbmcgc2Nyb2xsYmFyIGluIElFICYgbGVnYWN5IEVkZ2UgdG8gYXZvaWQgb3ZlcmxhcCxcbiAgLy8gbWFraW5nIGl0IGltcG9zc2libGUgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgY29udGVudFxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2ZyB7XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBTVkcgb3ZlcmZsb3cgYnVnIGluIElFMTAvMTEgaXMgc3RpbGwgcmVxdWlyZWQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI2ODc4XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cbi8vIDMuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuXG50aCB7XG4gIGZvbnQtd2VpZ2h0OiAkdGFibGUtdGgtZm9udC13ZWlnaHQ7IC8vIDFcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gMlxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xufVxuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206ICRsYWJlbC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2Vcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxufVxuXG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cbkBpZiAkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zIHtcbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtXG4gIHBhZGRpbmc6IDA7IC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC1cbn1cblxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBmb250LXNpemUoMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiBqb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0Jz48cGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogLjUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBzdWJ0cmFjdCgkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNCkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgIGVzY2FwZS1zdmcoJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yKSByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSBuby1yZXBlYXQgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogYWRkKDFlbSAqIC43NSwgKDIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKiAuNzUpICsgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PScwIDAgMTIgMTInPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ6ICAgICAgNzV2aCAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4vLyBNYXJnaW4gYmV0d2VlbiBlbGVtZW50cyBpbiBmb290ZXIsIG11c3QgYmUgbG93ZXIgdGhhbiBvciBlcXVhbCB0byAyICogJG1vZGFsLWlubmVyLXBhZGRpbmdcbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjVMMy43NSA0bC0yLjUgMi41TDIuNzUgOGw0LTQtNC00eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcbiR1c2VyLXNlbGVjdHM6IGFsbCwgYXV0bywgbm9uZSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSBmb250IHNpemVzXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi92OC54L0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ICE9IHJlbSBhbmQgJHJmcy1mb250LXNpemUtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIGZvbnQgc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6IGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplLCAkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSwgZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsIGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtZGlzYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICYsXG4gICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLWVuYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5KCRtcS12YWx1ZSkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQgc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgZGl2aWRlKCRmcyAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQgc2l6ZVxuICAgICRyZnMtc3RhdGljOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3tkaXZpZGUoJGZzLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmc31weCk7XG5cbiAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIGZvbnQgc2l6ZSBpcyBiaWdnZXIgdGhhbiB0aGUgbWluaW11bSBmb250IHNpemVcbiAgICBAaWYgJGZzIDw9ICRyZnMtYmFzZS1mb250LXNpemUgb3Igbm90ICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgIGZvbnQtc2l6ZTogI3skcmZzLXN0YXRpY30jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZSBmb3IgJGZzXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgZGl2aWRlKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkZnMgYW5kIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkZnMtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkZnMtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZVxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcblxuICAgICAgLy8gQnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICAkbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuXG4gICAgICBAaW5jbHVkZSBfcmZzLWRpc2FibGUtY2xhc3Mge1xuICAgICAgICBmb250LXNpemU6ICN7JHJmcy1zdGF0aWN9I3skcmZzLXN1ZmZpeH07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gICAgICAgIEBpbmNsdWRlIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbnMgdXNlIFJGUyB0byByZXNjYWxlIHRoZSBmb250IHNpemVcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyICogLjU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCgpIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tL2Nzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gICAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHsgLy8gU3RhbmRhcmRpemVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbWctcmV0aW5hKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbiIsIi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGtiZC1ib3gtc2hhZG93KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDEwMCUpO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgKiAuNTtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyICogLjU7XG59XG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2AgbWl4aW5cIiwgXCJ2NC41LjJcIiwgXCJ2NVwiKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgICBtYXgtd2lkdGg6IGRpdmlkZSgxMDAlLCAkY291bnQpO1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgQGlmIGxlbmd0aCgkbWFwKSA+IDAge1xuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gICAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIFNlZSBodHRwczovL2NvZGVwZW4uaW8va2V2aW53ZWJlci9wZW4vZFhXb1J3XG4vL1xuLy8gUmVxdWlyZXMgdGhlIHVzZSBvZiBxdW90ZXMgYXJvdW5kIGRhdGEgVVJJcy5cblxuQGZ1bmN0aW9uIGVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAvLyBEbyBub3QgZXNjYXBlIHRoZSB1cmwgYnJhY2tldHNcbiAgICAgIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJ1cmwoXCIpID09IDEge1xuICAgICAgICAkc3RyaW5nOiB1cmwoXCIje3N0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCA2LCAtMyksICRjaGFyLCAkZW5jb2RlZCl9XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAqIC4wMDE7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTIpICE9IG51bWJlciB7XG4gICAgJHZhbHVlMjogdW5xdW90ZShcIihcIikgKyAkdmFsdWUyICsgdW5xdW90ZShcIilcIik7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gLSAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgLSBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAvLyBSZW1vdmUgc2VsZWN0IG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGlucHV0LWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICZbc2l6ZV0sXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG59XG5cblxuLy8gRm9ybSBncmlkXG4vL1xuLy8gU3BlY2lhbCByZXBsYWNlbWVudCBmb3Igb3VyIGdyaWQgc3lzdGVtJ3MgYC5yb3dgIGZvciB0aWdodGVyIGZvcm0gbGF5b3V0cy5cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCBmb3Igd29ya2Fyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBiYXNlIC5mb3JtLWNoZWNrXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxuXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgbWFwLWdldCgkZGF0YSwgY29sb3IpLCBtYXAtZ2V0KCRkYXRhLCBpY29uKSk7XG59XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLFxuICAgIC5jdXN0b20tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmb3JtLWNvbnRyb2wtZm9jdXMoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG4vLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzE1NTdcbiAgICAvLyBBbGlnbiB0b29sdGlwIHRvIGZvcm0gZWxlbWVudHNcbiAgICAuZm9ybS1yb3cgPiAuY29sID4gJixcbiAgICAuZm9ybS1yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSA+ICYge1xuICAgICAgbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lciAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtcGFkZGluZy14ICogNCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtcGFkZGluZy14ICogMiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgJGN1c3RvbS1zZWxlY3QtYmcgZXNjYXBlLXN2ZygkaWNvbikgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZSBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDEwJSk7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRidG4tZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcblxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tbGluZS1oZWlnaHQtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yLCAkY29sb3ItaG92ZXI6IGNvbG9yLXlpcSgkY29sb3IpLCAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvciwgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi53aWR0aCB7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGgpO1xuICB9XG59XG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24tcGFkZGluZy14O1xuICBtYXJnaW46ICRkcm9wZG93bi1zcGFjZXIgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZHJvcGRvd24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRkcm9wZG93bi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LWxlZnQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wcmlnaHQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHJpZ2h0KTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BsZWZ0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQobGVmdCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBXaGVuIFBvcHBlciBpcyBlbmFibGVkLCByZXNldCB0aGUgYmFzaWMgZHJvcGRvd24gcG9zaXRpb25cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uZHJvcGRvd24tbWVudSB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gIH1cbn1cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcsICRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15LCB0cnVlKTtcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gIC8vIFByZXZlbnQgZHJvcGRvd24gb3ZlcmZsb3cgaWYgdGhlcmUncyBubyBwYWRkaW5nXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG59XG4iLCJAbWl4aW4gY2FyZXQtZG93bigpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwKCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtcmlnaHQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICRuYXYtZGl2aWRlci1jb2xvciwgJG1hcmdpbi15OiAkbmF2LWRpdmlkZXItbWFyZ2luLXksICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICRtYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG5hdi1kaXZpZGVyKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3ByaWdodCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmN1c3RvbS1zZWxlY3Q6Zm9jdXMsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBjdXN0b20gZmlsZSBpbnB1dCBhYm92ZSB0aGUgbGFiZWxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIHtcbiAgICB6LWluZGV4OiA0O1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5jdXN0b20tc2VsZWN0IHtcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAmOm5vdCguaGFzLXZhbGlkYXRpb24pIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bm90KDpsYXN0LWNoaWxkKSxcbiAgICA+IC5jdXN0b20tc2VsZWN0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtdmFsaWRhdGlvbiB7XG4gICAgPiAuZm9ybS1jb250cm9sOm50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbiAgICA+IC5jdXN0b20tc2VsZWN0Om50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbiAgICA+IC5jdXN0b20tZmlsZTpudGgtbGFzdC1jaGlsZChuICsgMykgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kXG4vL1xuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxuLy8gYXBwZW5kIGVsZW1lbnRzIGFsbG93IHVzIHRvIDEpIGJlIGxlc3MgY2xldmVyLCAyKSBzaW1wbGlmeSBvdXIgc2VsZWN0b3JzLCBhbmRcbi8vIDMpIHN1cHBvcnQgSFRNTDUgZm9ybSB2YWxpZGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG5cbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQgeyBtYXJnaW4tcmlnaHQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHsgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gQWxsb3cgdXNlIG9mIDxsYWJlbD4gZWxlbWVudHMgYnkgb3ZlcnJpZGluZyBvdXIgZGVmYXVsdCBtYXJnaW4tYm90dG9tXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmQgcm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuIiwiLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tY29udHJvbC1zcGFjZXIteDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIGhlaWdodDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41O1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgdG8gd29yayBhcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ3VzdG9tIGNvbnRyb2wgaW5kaWNhdG9yc1xuLy9cbi8vIEJ1aWxkIHRoZSBjdXN0b20gY29udHJvbHMgb3V0IG9mIHBzZXVkby1lbGVtZW50cy5cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBjdXJzb3I6ICRjdXN0b20tY29udHJvbC1jdXJzb3I7XG5cbiAgLy8gQmFja2dyb3VuZC1jb2xvciBhbmQgKHdoZW4gZW5hYmxlZCkgZ3JhZGllbnRcbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpICogLjU7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpICogLjU7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9IG5vLXJlcGVhdDtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXNcbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgY2hlY2tib3hlcy5cblxuLmN1c3RvbS1jaGVja2JveCB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gICAgJjppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIHN3aXRjaGVzXG4vL1xuLy8gVHdlYWsgYSBmZXcgdGhpbmdzIGZvciBzd2l0Y2hlc1xuXG4uY3VzdG9tLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC13aWR0aDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IGFkZCgoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpICogLjUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICBsZWZ0OiBhZGQoLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgaGVpZ2h0OiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0LCAkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRjdXN0b20tc3dpdGNoLXdpZHRoIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJnICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ7XG4gIGJvcmRlcjogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93LCAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuXG4gICAgJjo6LW1zLXZhbHVlIHtcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXG4gICAgICAvLyBzdXBwcmVzcyB0aGUgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBkZWZhdWx0IGNhcmV0IGluIElFMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB9XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtc207XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1sZztcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGcpO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgdG8gd29yayBhcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbXMtdGh1bWIgICAgICAgICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQpICogLjU7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwOyAvLyBFZGdlIHNwZWNpZmljXG4gICAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7IC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIG1hcmdpbi1sZWZ0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7ICAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCAqIC41O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IC8vIGFyYml0cmFyeT9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbXMtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcywgYDx1bD5gcyBvciBgPG9sPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0XG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAvLyBQcmV2ZW50cyBhY3RpdmUgLm5hdi1saW5rIHRhYiBvdmVybGFwcGluZyBmb2N1cyBvdXRsaW5lIG9mIHByZXZpb3VzL25leHQgLm5hdi1saW5rXG4gICAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5jb250YWluZXIsXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiA1MCUgLyAxMDAlIDEwMCUgbm8tcmVwZWF0O1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiAkbmF2YmFyLW5hdi1zY3JvbGwtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgICAvLyBDaGFuZ2VzIGZsZXgtYmFzZXMgdG8gYXV0byBiZWNhdXNlIG9mIGFuIElFMTAgYnVnXG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcbi5uYXZiYXItZGFyayB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiAkY2FyZC1oZWlnaHQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIC8vIER1ZSB0byBzcGVjaWZpY2l0eSBvZiB0aGUgYWJvdmUgc2VsZWN0b3IgKGAuY2FyZCA+IC5saXN0LWdyb3VwYCksIHdlIG11c3RcbiAgLy8gdXNlIGEgY2hpbGQgc2VsZWN0b3IgaGVyZSB0byBwcmV2ZW50IGRvdWJsZSBib3JkZXJzLlxuICA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuICA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBpbWFnZSBzaXplIGJ1ZyBpbiBJRVxuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI4ODU1XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jb2xvcjtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtJGNhcmQtc3BhY2VyLXkgKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAqIC41O1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAqIC41O1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwOyAvLyBGb3IgSUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkzOTZcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29sdW1uc1xuLy9cblxuLmNhcmQtY29sdW1ucyB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1jb2x1bW5zLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBjb2x1bW4tY291bnQ6ICRjYXJkLWNvbHVtbnMtY291bnQ7XG4gICAgY29sdW1uLWdhcDogJGNhcmQtY29sdW1ucy1nYXA7XG4gICAgb3JwaGFuczogMTtcbiAgICB3aWRvd3M6IDE7XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIERvbid0IGxldCB0aGVtIHZlcnRpY2FsbHkgc3BhbiBtdWx0aXBsZSBjb2x1bW5zXG4gICAgICB3aWR0aDogMTAwJTsgLy8gRG9uJ3QgbGV0IHRoZWlyIHdpZHRoIGNoYW5nZVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBBY2NvcmRpb25cbi8vXG5cbi5hY2NvcmRpb24ge1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG5cbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgICAgY29udGVudDogZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtYXJnaW4tbGVmdDogLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRiYWRnZS10cmFuc2l0aW9uKTtcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4vLyBQaWxsIGJhZGdlc1xuLy9cbi8vIE1ha2UgdGhlbSBleHRyYSByb3VuZGVkIHdpdGggYSBtb2RpZmllciB0byByZXBsYWNlIHYzJ3MgYmFkZ2VzLlxuXG4uYmFkZ2UtcGlsbCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgcGFkZGluZy1sZWZ0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENvbG9yc1xuLy9cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGJhZGdlcyBnZXQgZGFya2VyIG9uIDpob3ZlcikuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYmFkZ2UtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgKiAuNSk7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYWxlcnQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYm9yZGVyLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtY29sb3ItbGV2ZWwpKTtcbiAgfVxufVxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBpbmhlcml0KVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkbGlzdC1ncm91cC1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYgKyAmIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBIb3Jpem9udGFsXG4vL1xuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNsb3NlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBvcGFjaXR5OiAuNTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi50b2FzdCB7XG4gIC8vIFByZXZlbnRzIGZyb20gc2hyaW5raW5nIGluIElFMTEsIHdoZW4gaW4gYSBmbGV4IGNvbnRhaW5lclxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODM0MVxuICBmbGV4LWJhc2lzOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9hc3QtYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy15ICR0b2FzdC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHN1YnRyYWN0KCR0b2FzdC1ib3JkZXItcmFkaXVzLCAkdG9hc3QtYm9yZGVyLXdpZHRoKSk7XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXG4gIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpOyAvLyBJRTEwLzExXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLy8gRW5zdXJlIGBtb2RhbC1kaWFsb2ctY2VudGVyZWRgIGV4dGVuZHMgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSB2aWV3IChJRTEwLzExKVxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXG4gICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcbiAgICBoZWlnaHQ6IG1pbi1jb250ZW50OyAvLyBSZXNldCBoZWlnaHQgdG8gMCBleGNlcHQgb24gSUVcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLy8gRW5zdXJlIGAubW9kYWwtYm9keWAgc2hvd3Mgc2Nyb2xsYmFyIChJRTEwLzExKVxuICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNsb3NlIHtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy14KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gKiAuNTtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJHBvcG92ZXItYm9yZGVyLXJhZGl1cztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuXG5AaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy1ncmFkaWVudC12YXJpYW50YCBtaXhpblwiLCBcInY0LjUuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbkBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG4gIH1cbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogJHJvdW5kZWQtcGlsbCAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAgIC5kI3skaW5maXh9LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAuZC1wcmludC0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teDogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMSk7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAyKTtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS0jeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14fWJ5I3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teX0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZShkaXZpZGUoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXksICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14KSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICR1c2VyLXNlbGVjdHMge1xuICAudXNlci1zZWxlY3QtI3skdmFsdWV9IHsgdXNlci1zZWxlY3Q6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmIFwiI3skc2l6ZX1cIiAhPSBcIjBcIiB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gRGVwcmVjYXRlZCwgYnV0IGF2b2lkcyBpc3N1ZXMgd2l0aCBmbGV4IGNvbnRhaW5lcnNcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL21haW4uY3NzL2Jsb2IvbWFzdGVyL3NyYy9fcHJpbnQuY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICNOQVZJR0FUSU9OXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubmF2aWdhdGlvbiB7XG5cbiAgICAubmF2aWdhdGlvbl9fc2lkZWJhci1idXR0b24ge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLm5hdmlnYXRpb25fX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uX19zdWItYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uLWRyb3Bkb3duIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAubmF2aWdhdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgLm5hdmlnYXRpb25fX3NpZGViYXItYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2aWdhdGlvbl9fc3ViLWJsb2NrIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAvL21hcmdpbi1yaWdodDogNTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xuXG4gICAgICAgICAgICAubmF2aWdhdGlvbl9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmlnYXRpb25fX2l0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIC8qZm9udC1zaXplOiAxLjJyZW07Ki9cbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC8vIFRPRE86IGFuaW1hdGlvblxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubmF2aWdhdGlvbl9faXRlbS0tcmlnaHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm5hdmlnYXRpb25fX2l0ZW0tLWRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcInVzZXIgICBpY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGl0eSBpY29uXCI7XG5cbiAgICAgICAgICAgICAgICBzcGFuOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtYXJlYTogdXNlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1zZWxmOiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWFyZWE6IGVudGl0eTtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1zZWxmOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWFyZWE6IGljb247XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2aWdhdGlvbi1kcm9wZG93biB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG5cbiAgICAgICAgICAgIC5uYXZpZ2F0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcbi8vICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE2KSwgMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yMyk7XG5cblxuICAgICAgICAgICAgICAgIC5uYXZpZ2F0aW9uLWRyb3Bkb3duLW1lbnVfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNzA2ZjczO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICM3MDZmNzM7XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5uYXZpZ2F0aW9uLWRyb3Bkb3duLW1lbnVfX2l0ZW0tLXdpdGgtY2hldnJvbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxGMDU0JztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZSwgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYW1pMi1waW5rO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uYXZpZ2F0aW9uLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNDBweDtcbi8vICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE2KSwgMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yMyk7XG5cbiAgICAgICAgICAgICAgICAubmF2aWdhdGlvbi1kcm9wZG93bi1zdWJtZW51X190aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxGMDUzJztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZSwgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5uYXZpZ2F0aW9uLWRyb3Bkb3duLXN1Ym1lbnVfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweCA1cHggNDVweDtcblxuICAgICAgICAgICAgICAgICAgICBoeXBoZW5zOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzcwNmY3MztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5uYXZpZ2F0aW9uLWRyb3Bkb3duLXN1Ym1lbnVfX2l0ZW0tLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgI1NJREVCQVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5zaWRlYmFyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RmZGZkZjtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47IC8vIERpc2FibGUgaG9yaXpvbnRhbCBzY3JvbGxcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpZGViYXItd2lkdGggKiAtMSk7XG4gICAgdHJhbnNpdGlvbjogJHNpZGViYXItdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnIgYXV0bztcbn1cblxuLnNpZGViYXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzA2ZjczO1xuXG4gICAgcCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMS4ycmVtIDA7XG4gICAgfVxufVxuXG4uc2lkZWJhci1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAkc2lkZWJhci1jb250ZW50LXBhZGRpbmc7XG5cbiAgICAuc2lkZWJhci1jb250ZW50X19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcblxuICAgICAgICBjb2xvcjogIzcwNmY3MztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjNzA2ZjczO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2lkZWJhci1jb250ZW50X19pdGVtLS1kcm9wZG93bi1jbG9zZTo6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgY29udGVudDogJ1xcRjA1NCc7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZSwgc2Fucy1zZXJpZjtcbiAgICAgICAgY29sb3I6ICRhbWkyLXBpbms7XG4gICAgfVxuXG4gICAgLnNpZGViYXItY29udGVudF9faXRlbS0tZHJvcGRvd24tb3Blbjo6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgY29udGVudDogJ1xcRjA3OCc7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZSwgc2Fucy1zZXJpZjtcbiAgICAgICAgY29sb3I6ICRhbWkyLXBpbms7XG4gICAgfVxufVxuXG4uc2lkZWJhci1zdWJjb250ZW50IHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICM3MDZmNzM7XG4gICAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoIC0gJHNpZGViYXItY29udGVudC1wYWRkaW5nICogMjsgLy8gW3BhZGRpbmcgLSB3aWR0aCAtIHBhZGRpbmddXG5cbiAgICAuc2lkZWJhci1zdWJjb250ZW50X19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgIC8vYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICMzMzMzMzM7XG5cbiAgICAgICAgaHlwaGVuczogYXV0bztcbiAgICAgICAgY29sb3I6ICM3MDZmNzM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAvLyY6OmJlZm9yZSB7XG4gICAgICAgIC8vICAgIGNvbnRlbnQ6ICdcXEYxMTEnO1xuICAgICAgICAvLyAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWUsIHNhbnMtc2VyaWY7XG4gICAgICAgIC8vICAgIGNvbG9yOiAkYW1pMi1waW5rO1xuICAgICAgICAvLyAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgLy8gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAvL31cblxuICAgICAgICArIC5zaWRlYmFyLXN1YmNvbnRlbnRfX2l0ZW0tLWFjdGl2ZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpZGViYXItZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgY29sb3I6ICRhbWkyLXBpbms7XG59XG5cbi5zaGFkb3ctYXJlYSB7XG4gICAgdHJhbnNpdGlvbjogJHNpZGViYXItdHJhbnNpdGlvbi1kdXJhdGlvbjtcbn1cblxuLi0td2l0aC0tc2lkZWJhciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gRGlzYWJsZSBzY3JvbGwgb24gdGhlIGdsb2JhbCBwYWdlXG5cbiAgICAuc2lkZWJhciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cblxuICAgIC5zaGFkb3ctYXJlYSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNik7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gICAgfVxufVxuXG4uZm9yY2Utcm9ib3RvIHtcbiAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICNOZXcgbWVudVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mb3JjZS1sYXRvIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG8nLCBzYW5zLXNlcmlmO1xufVxuXG4ubmF2YmFyLWRlc2t0b3AsIC5uYXZiYXItbW9iaWxle1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTVweCAwcHggcmdiYSgwLDAsMCwwLjE2KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuMjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgICBmb250LWZhbWlseTogXCJGb250YXdlc29tZVwiO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgYm9yZGVyOiBub25lO1xufVxuLmRyb3Bkb3duLXRvZ2dsZVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXTo6YWZ0ZXJ7XG4gICAgY29udGVudDogXCJcXGYwNzdcIjtcbiAgICBjb2xvcjogJGFtaTItb3JhbmdlO1xufVxuXG4ubWFpbi1tZW51IHtcblxuICAgIGE6aG92ZXJ7XG4gICAgICAgIGNvbG9yOiAjRkY4MDBBO1xuICAgIH1cblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIycHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG5cbiAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMjcyNzI3O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBMYXRvIEJvbGQsIHNhbnMtc2VyaWY7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAubmF2LWxpbmssIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGFtaTItcGluaztcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAzcHggI0REMzQ5ODtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qJjpub3QoLmRyb3Bkb3duLCAuYWN0aXZlKTpob3ZlcntcbiAgICAgICAgICAgIC5uYXYtbGluaywgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYW1pMi1vcmFuZ2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0qL1xuXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKTphZnRlcntcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwgJTNDc3ZnJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlMjB3aWR0aCUzRCUyMjguMzM1JTIyJTIwaGVpZ2h0JTNEJTIyOC4zMzUlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjA4LjMzNSUyMDguMzM1JTIyJTNFJTIwJTNDcmVjdCUyMGlkJTNEJTIyUmVjdGFuZ2xlXzEwMzklMjIlMjBkYXRhLW5hbWUlM0QlMjJSZWN0YW5nbGUlMjAxMDM5JTIyJTIwd2lkdGglM0QlMjI1Ljg5NCUyMiUyMGhlaWdodCUzRCUyMjUuODk0JTIyJTIwcnglM0QlMjIxJTIyJTIwdHJhbnNmb3JtJTNEJTIydHJhbnNsYXRlJTI4NC4xNjglMjklMjByb3RhdGUlMjg0NSUyOSUyMiUyMGZpbGwlM0QlMjIlMjNkZDNhOTglMjIlMkYlM0UlM0MlMkZzdmclM0VcIik7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2LWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLWl0ZW17XG4gICAgICAgIG1hcmdpbjogMCAxcmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMC41cmVtIDEuNXJlbSAwLjVyZW07XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBjb2xvcjogIzI3MjcyNztcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LWZhbWlseTogTGF0bywgc2Fucy1zZXJpZjtcblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI0Q1RDVENTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNsb3lhbHR5Rm9ybSAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjRDVENUQ1O1xuICAgIH1cblxufVxuXG4udXNlci1tZW51e1xuICAgIHBhZGRpbmctYm90dG9tOiAzcHg7IC8qIHRvIGFsaWduIGl0ZW1zIGNhdXNlIGJvcmRlci1ib3R0b20gb24gYWN0aXZlIGxpbmsgKi9cblxuICAgIC5kcm9wZG93bi1tZW51e1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG5cbiAgICAubG9nb3V0e1xuICAgICAgICBjb2xvcjogIzc2NzY3NjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgfVxuXG4gICAgLnVzZXItZHJvcGRvd257XG4gICAgICAgIHBhZGRpbmc6IDByZW0gMC4yNXJlbTtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3MDcwNzA7XG5cbiAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogTGF0byBCb2xkLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBpe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRDVENUQ1O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLWl0ZW17XG4gICAgICAgIG1hcmdpbjogMCAxcmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMC41cmVtIDEuNXJlbSAwLjVyZW07XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBjb2xvcjogIzI3MjcyNztcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LWZhbWlseTogTGF0bywgc2Fucy1zZXJpZjtcblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1zdWJpdGVtKXtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjRDVENUQ1O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLXN1Yml0ZW17XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmIHNwYW57XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1pdGVtOmZvY3Vze1xuICAgIGJhY2tncm91bmQtY29sb3I6I0ZGRjtcbn1cblxuLmRyb3Bkb3duLWl0ZW0uYWN0aXZlLCAuZHJvcGRvd24taXRlbTphY3RpdmUge1xuICAgIGNvbG9yOiAkYW1pMi1vcmFuZ2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5kcm9wZG93bi1zdWJtZW51LXRvZ2dsZTphY3RpdmUsIC5kcm9wZG93bi1zdWJtZW51LXRvZ2dsZS5hY3RpdmV7XG4gICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG59XG5cbi5kcm9wZG93bi1zdWJtZW51LXRvZ2dsZTo6YWZ0ZXJ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLmRyb3Bkb3duLXN1Yml0ZW17XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Q1RDVENTtcbn1cblxuLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcbiAgICBjb2xvcjogI2FkYjViZDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6bm90LWFsbG93ZWQ7XG59XG5cbi5sZWZ0LXNpZGViYXItdG9nZ2xlciwgLnJpZ2h0LXNpZGViYXItdG9nZ2xlcntcbiAgICBjb2xvcjogIzI3MjcyNztcblxuICAgIGl7XG4gICAgICAgIGZvbnQtc2l6ZTozMHB4O1xuICAgIH1cbn1cblxuI2xlZnQtc2lkZWJhcntcbiAgICB3aWR0aDogMjkwcHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC8qIHRvcCBsYXllciAqL1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3gtc2hhZG93OiA2cHggOHB4IDE1cHggMHB4IHJnYmEoMCwwLDAsMC4xNik7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDEwcHggMTBweCAwO1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMCAxMHB4IDEwcHggMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDEwcHggMTBweCAwO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgYTpob3ZlcntcbiAgICAgICAgY29sb3I6ICNGRjgwMEE7XG4gICAgfVxuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjJweDtcblxuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IExhdG8gQm9sZCwgc2Fucy1zZXJpZjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIC5uYXYtbGluaywgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYW1pMi1waW5rO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDNweCAjREQzNDk4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsICUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwd2lkdGglM0QlMjI4LjMzNSUyMiUyMGhlaWdodCUzRCUyMjguMzM1JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwOC4zMzUlMjA4LjMzNSUyMiUzRSUyMCUzQ3JlY3QlMjBpZCUzRCUyMlJlY3RhbmdsZV8xMDM5JTIyJTIwZGF0YS1uYW1lJTNEJTIyUmVjdGFuZ2xlJTIwMTAzOSUyMiUyMHdpZHRoJTNEJTIyNS44OTQlMjIlMjBoZWlnaHQlM0QlMjI1Ljg5NCUyMiUyMHJ4JTNEJTIyMSUyMiUyMHRyYW5zZm9ybSUzRCUyMnRyYW5zbGF0ZSUyODQuMTY4JTI5JTIwcm90YXRlJTI4NDUlMjklMjIlMjBmaWxsJTNEJTIyJTIzZGQzYTk4JTIyJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5hdi1saW5rIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxufVxuXG4uY2xvc2UtcGlua3tcbiAgICBjb2xvcjogJGFtaTItcGluaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmNsb3NlLXdoaXRle1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmZpeGVkLXRvcC1yaWdodHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbiNyaWdodC1zaWRlYmFye1xuICAgIHdpZHRoOjI1MHB4O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgLyogdG9wIGxheWVyICovXG4gICAgei1pbmRleDogOTk5OTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IC02cHggOHB4IDE1cHggMHB4IHJnYmEoMCwwLDAsMC4xNik7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4O1xuXG4gICAgYTpob3ZlcntcbiAgICAgICAgY29sb3I6ICNGRjgwMEE7XG4gICAgfVxuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTFweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTFweDtcblxuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogTGF0bywgc2Fucy1zZXJpZjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIC5uYXYtbGluaywgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYW1pMi1waW5rO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDNweCAjREQzNDk4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5kaXNhYmxlZHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAudXNlci1jb25uZWN0ZWQtaW5mb3N7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICAgICAgICBwYWRkaW5nOiAycmVtIDIuNXJlbTtcblxuICAgICAgICAudXNlci1jb25uZWN0ZWQtaW5mb3MtdXNlcntcbiAgICAgICAgICAgIGNvbG9yOiNGRkY7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJMYXRvIEJvbGRcIiwgc2VyaWY7XG4gICAgICAgIH1cblxuICAgICAgICBpe1xuICAgICAgICAgICAgY29sb3I6I0Q1RDVENTtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiNENUQ1RDU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGl2LmxvZ291dC1pdGVte1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuXG4gICAgICAgIGEubG9nb3V0e1xuICAgICAgICAgICAgY29sb3I6ICRhbWkyLXBpbms7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJMYXRvIEJvbGRcIiwgc2VyaWY7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4uaGFzLXN1Yi1tZW51OmFmdGVye1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRhd2Vzb21lXCI7XG4gICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG5cbi5oYXMtc3ViLW1lbnUub3BlbjphZnRlcntcbiAgICBmb250LWZhbWlseTogXCJGb250YXdlc29tZVwiO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDc3XCI7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIGNvbG9yOiAkYW1pMi1vcmFuZ2U7XG59XG5cbi5zdWItbWVudXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnN1Yi1tZW51LWl0ZW17XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgcGFkZGluZy10b3A6MjJweDtcbiAgICBwYWRkaW5nLWJvdHRvbToyMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG5cbiAgICAmOm5vdCguZGlzYWJsZWQpOmhvdmVyLCAmLmFjdGl2ZXtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuXG4gICAgICAgIC5zdWItbWVudS1pdGVtLWxpbmt7XG4gICAgICAgICAgICBjb2xvcjogJGFtaTItb3JhbmdlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi5zdWItbWVudS1pdGVtLWxpbmt7XG4gICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtZmFtaWx5OiBMYXRvLCBzYW5zLXNlcmlmO1xufVxuXG4uc3ViLW1lbnUtaXRlbS1saW5rLmRpc2FibGVke1xuICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5zdWItbWVudS1zZXBhcmF0b3J7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Q1RDVENTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufSIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICNQQUdFLUhFQURcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5wYWdlLWhlYWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyLWJnO1xuXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xufVxuXG4ucGFnZS1oZWFkLS1zdGlja3kge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG59XG5cbi5wYWdlLWhlYWRfX2xvZ28ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAjeyRhbWkyLWxvZ28taGVpZ2h0fSk7XG4gICAgei1pbmRleDogNTtcblxuICAgIHdpZHRoOiAjeyRhbWkyLWxvZ28td2lkdGh9O1xuICAgIGhlaWdodDogI3skYW1pMi1sb2dvLWhlaWdodH07XG5cbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8vLi4vL3N0YXRpYy8vbG9nby1hbWkyLWhlYWRlcl8jeyRhbWkyLWxvZ28td2lkdGgtd2l0aG91dC11bml0fXgjeyRhbWkyLWxvZ28taGVpZ2h0LXdpdGhvdXQtdW5pdH0ucG5nXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ucGFnZS1oZWFkX19iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufSIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICNQQUdFLUNPTlRFTlRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5wYWdlLWNvbnRlbnQge1xuICAgIC8vcGFkZGluZy10b3A6IGNhbGMoI3skYW1pMi1sb2dvLWhlaWdodH0gKyA1cHgpO1xuICBwYWRkaW5nLXRvcDogNXB4O1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgI0dSSUQtV0lER0VUXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZ3JpZC13aWRnZXQge1xuICAvKi5maXJzdC1jb2x1bW4sIC5zZWNvbmQtY29sdW1uLCAudGhpcmQtY29sdW1ue1xuICAgIG1hcmdpbi1sZWZ0OiAyJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICB9Ki9cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgI01BTkFHRVIgT1JHQU5JWkFUSU9OIEFORCBTRVJWSUNFIFdJREdFVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5tYW5hZ2VyLXdpZGdldCwgLm9yZ2FuaXphdGlvbi13aWRnZXQsIC5zZXJ2aWNlLXdpZGdldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJveC1zaGFkb3c6IDNweCAzcHggNnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuXG4gIC5tYW5hZ2VyLXdpZGdldF9fdGl0bGUsIC5vcmdhbml6YXRpb24td2lkZ2V0X190aXRsZSwgLnNlcnZpY2Utd2lkZ2V0X190aXRsZXtcbiAgICBmb250LWZhbWlseTogXCJMYXRvIEJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogIzI3MjcyNztcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuXG4gIC5ncm91cGVkLXdpZGdldHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIHBhZGRpbmc6IC41cmVtIDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3gtc2hhZG93OiAzcHggM3B4IDZweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE2KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gICAgJi50YWJsZXR7XG4gICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkOm5vdCgjbG95YWx0eUZvcm0pe1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAud2lkZ2V0LXRpdGxlIHtcbiAgICAgIC53aWRnZXQtdGl0bGVfX2xvZ28ge1xuICAgICAgICB3aWR0aDoxMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMwcHg7XG4gICAgICB9XG4gICAgICAud2lkZ2V0LXRpdGxlX19sb2dvLWhvdmVyZWR7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgd2lkdGg6MTAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgICAgfVxuXG4gICAgICAud2lkZ2V0LXRpdGxlX190aXRsZSB7XG4gICAgICAgIHdpZHRoOjkwJTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTGF0byBCb2xkXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGFtaTItb3JhbmdlO1xuXG4gICAgICAud2lkZ2V0LXRpdGxlX190aXRsZXtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICB9XG5cbiAgICAgIC53aWRnZXQtdGl0bGVfX2xvZ28ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgICAgfVxuXG4gICAgICAud2lkZ2V0LXRpdGxlX19sb2dvLWhvdmVyZWQge1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAjUEVSU09OQUwgU1BBQ0UgV0lER0VUXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBlcnNvbmFsLXNwYWNlLXdpZGdldHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFtaTItcGluaztcbiAgcGFkZGluZzogLjk1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBib3gtc2hhZG93OiAzcHggM3B4IDZweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE2KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgLndpZGdldC10aXRsZSB7XG4gICAgLndpZGdldC10aXRsZV9fbG9nbyB7XG4gICAgICB3aWR0aDoxMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICAud2lkZ2V0LXRpdGxlX19sb2dvLWhvdmVyZWR7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB3aWR0aDoxMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgIH1cblxuICAgIC53aWRnZXQtdGl0bGVfX3RpdGxlIHtcbiAgICAgIHdpZHRoOjkwJTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdG8gQm9sZFwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRhbWkyLW9yYW5nZTtcblxuICAgIC53aWRnZXQtdGl0bGVfX2xvZ28ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHdpZHRoOiAxMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgIH1cblxuICAgIC53aWRnZXQtdGl0bGVfX2xvZ28taG92ZXJlZCB7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwJTtcbiAgICAgIG1heC1oZWlnaHQ6IDMwcHg7XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICNDT05UQUNUIFdJREdFVFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jb21tZXJjaWFsLW1hbmFnZW1lbnR7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJveC1zaGFkb3c6IDNweCAzcHggNnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgLypoZWlnaHQ6IDQyMnB4OyovXG4gIGZvbnQtZmFtaWx5OiBcIkxhdG8gQm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG5cbiAgLndpZGdldC10aXRsZSB7XG4gICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgICAmIC53aWRnZXQtdGl0bGVfX3RpdGxlIHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICB9XG4gIH1cblxuICAud2lkZ2V0LWNhcHRpb25fX2NvbW1lcmNpYWwtYmxvY2t7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJveC1zaGFkb3c6IDNweCAzcHggNnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuXG4gICAgJiAud2lkZ2V0LWNhcHRpb25fX2NvbW1lcmNpYWwtYmxvY2tfX3RpdGxle1xuICAgICAgY29sb3I6ICRhbWkyX3Bpbms7XG4gICAgICBmb250LWZhbWlseTogXCJMYXRvIEJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG5cbiAgICAmIC53aWRnZXQtY2FwdGlvbl9fY29tbWVyY2lhbC1ibG9ja19fcGhvbmUsIC53aWRnZXQtY2FwdGlvbl9fY29tbWVyY2lhbC1ibG9ja19fZW1haWx7XG4gICAgICBmb250LWZhbWlseTogJ0xhdG8nLCBzYW5zLXNlcmlmO1xuICAgIH1cblxuICAgICYgLndpZGdldC1jYXB0aW9uX19jb21tZXJjaWFsLWJsb2NrX19waG9uZSA+IGksIC53aWRnZXQtY2FwdGlvbl9fY29tbWVyY2lhbC1ibG9ja19fZW1haWwgPiBpe1xuICAgICAgY29sb3I6ICRhbWkyX3Bpbms7XG4gICAgfVxuXG4gICAgJiAud2lkZ2V0LWNhcHRpb25fX2NvbW1lcmNpYWwtYmxvY2tfX2VtYWlsIGF7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICAgIGNvbG9yOiAjMjcyNzI3O1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOnZpc2l0ZWR7XG4gICAgICAgIGNvbG9yOiAjMjcyNzI3O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiBzcGFue1xuICAgICAgZGlzcGxheTpibG9jaztcblxuICAgICAgJiA+IGl7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgLndpZGdldC1jYXB0aW9uX19jb21tZXJjaWFsLWJsb2NrX190aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkYW1pMi1vcmFuZ2U7XG4gICAgICB9XG5cbiAgICAgIC53aWRnZXQtY2FwdGlvbl9fY29tbWVyY2lhbC1ibG9ja19fcGhvbmUgPiBpLCAud2lkZ2V0LWNhcHRpb25fX2NvbW1lcmNpYWwtYmxvY2tfX2VtYWlsID4gaSB7XG4gICAgICAgIGNvbG9yOiAkYW1pMl9vcmFuZ2U7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICNTVEFOREFSRCBXSURHRVRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ud2lkZ2V0Om5vdCguZ3JvdXBlZC13aWRnZXQpOm5vdCgucGVyc29uYWwtc3BhY2Utd2lkZ2V0KTpub3QoLmNvbW1lcmNpYWwtbWFuYWdlbWVudCl7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJveC1zaGFkb3c6IDNweCAzcHggNnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDI1MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICYuY3VzdG9tZXI6bm90KC5jb21tZXJjaWFsLW1hbmFnZW1lbnQpLCAmLnB1YmxpY2F0aW9ucy1tYW5hZ2VtZW50LnN1cHBsaWVye1xuICAgIC8qaGVpZ2h0OiAxOTRweDsqL1xuICB9XG5cbiAgLndpZGdldC10aXRsZSB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDtcblxuICAgIC53aWRnZXQtdGl0bGVfX2xvZ28ge1xuICAgICAgd2lkdGg6MTAlO1xuICAgICAgbWF4LWhlaWdodDogMzBweDtcbiAgICB9XG4gICAgLndpZGdldC10aXRsZV9fbG9nby1ob3ZlcmVke1xuICAgICAgZGlzcGxheTpub25lO1xuICAgICAgd2lkdGg6MTAlO1xuICAgICAgbWF4LWhlaWdodDogMzBweDtcbiAgICB9XG5cbiAgICAud2lkZ2V0LXRpdGxlX190aXRsZSB7XG4gICAgICB3aWR0aDo5MCU7XG4gICAgICBmb250LWZhbWlseTogXCJMYXRvIEJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGNvbG9yOiAjMjcyNzI3O1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXJ7XG5cbiAgICAud2lkZ2V0LXRpdGxlX19sb2dvIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB3aWR0aDogMTAlO1xuICAgICAgbWF4LWhlaWdodDogMzBweDtcbiAgICB9XG5cbiAgICAud2lkZ2V0LXRpdGxlX19sb2dvLWhvdmVyZWQge1xuICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgIHdpZHRoOiAxMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgIH1cblxuICAgIC53aWRnZXQtY2FwdGlvbl9fdGl0bGV7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDEwcHggMTBweDtcbiAgICB9XG4gIH1cblxuICAuZWRpdC13aWRnZXR7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcblxuICAgICY6aG92ZXJ7XG4gICAgICBjb2xvcjogJGFtaTItb3JhbmdlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbmFydGljbGUud2lkZ2V0W2RhdGEtc3BlY2lmaWMtd2lkZ2V0LWlkZW50aWZpZXI9XCJjb21tZXJjaWFsXCJde1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKiBzcGVjaWZpYyB0byBuZXdzIHdpZGdldCAqKi9cbmFydGljbGVbZGF0YS1zcGVjaWZpYy13aWRnZXQtaWRlbnRpZmllcn49XCJuZXdzXCJde1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblxuICAud2lkZ2V0LWNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbn1cblxuLyoqIHNwZWNpZmljIHRvIGNvbW1lcmNpYWwgd2lkZ2V0ICoqL1xuYXJ0aWNsZVtkYXRhLXNwZWNpZmljLXdpZGdldC1pZGVudGlmaWVyfj1cImNvbW1lcmNpYWxcIl0gPiAud2lkZ2V0LWNhcHRpb257XG4gIC8qaGVpZ2h0OjIwMHB4OyovXG59XG5cbi53aWRnZXQtY2FwdGlvbntcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA2MHB4KTtcblxuICAmIC5pbWctb2JqZWN0LWZpdHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuXG4gICYgLm5ld3MtbGluZSB7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAmIC5uZXdzLWxpbmUtY29udGVudHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMzBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICAgICAgcGFkZGluZzogNXB4IDA7XG5cbiAgICAgICYgLm5ld3MtbGluZS1sZWZ0e1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubGFzdCAubmV3cy1saW5lLWNvbnRlbnR7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cblxuICAgICYgYSwgJiBhOmhvdmVyLCAmIGE6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogIzI3MjcyNztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmIC5uZXdzLWxpbmUtc3VwcGxpZXItbmFtZSwgJiAubmV3cy1saW5lLXRpdGxlLCAmIC5uZXdzLWxpbmUtZGF0ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmIC5uZXdzLWxpbmUtc3VwcGxpZXItbmFtZSB7XG4gICAgICBjb2xvcjogJGFtaTItcGluaztcbiAgICB9XG5cbiAgICAmIC5uZXdzLWxpbmUtdGl0bGUge1xuICAgICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgICYgLm5ld3MtbGluZS1kYXRlIHtcbiAgICAgIGNvbG9yOiAjNzY3Njc2O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cblxuICAgICYgLm5ld3MtbGluZS1yaWdodHtcbiAgICAgIGNvbG9yOiAkYW1pMi1waW5rO1xuICAgICAgbGluZS1oZWlnaHQ6IDcycHg7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgLm5ld3MtbGluZS1yaWdodCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGFtaTItb3JhbmdlO1xuICAgICAgfVxuXG4gICAgICAubmV3cy1saW5lLXN1cHBsaWVyLW5hbWV7XG4gICAgICAgIGNvbG9yOiAkYW1pMi1vcmFuZ2U7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgfVxuXG4gICYgLmFsbC1uZXdzLWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cbiAgICAmIGEge1xuICAgICAgY29sb3I6ICRhbWkyLXBpbms7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXIsICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiAkYW1pMi1vcmFuZ2U7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndpZGdldC1jYXB0aW9uX190aXRsZXtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAxMjgsIDEwLCAwLjg1KTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ud2lkZ2V0LWNhcHRpb25fX2NvbW1lcmNpYWwtYmxvY2t7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDkwcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICMyNzI3Mjc7XG59XG5cbi53aWRnZXQtY2FwdGlvbl9zcGxpdHRlcntcbiAgbWFyZ2luOiAwIDEwcHggMCA5MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFkOWRjO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgI0Jvb3RzdHJhcCBGaWxlIElucHV0XG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmt2LWF2YXRhciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgJiAuZmlsZS1wcmV2aWV3IGltZ3tcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYgLmZpbGUtaW5wdXQge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIC8qd2lkdGg6IDIxM3B4OyovXG4gICAgfVxuXG4gICAgJi5rcmFqZWUtZGVmYXVsdC5maWxlLXByZXZpZXctZnJhbWUsLmt2LWF2YXRhciAua3JhamVlLWRlZmF1bHQuZmlsZS1wcmV2aWV3LWZyYW1lOmhvdmVyIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICYgLmZpbGUtcHJldmlldyBpbWd7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi5rcmFqZWUtZGVmYXVsdC5maWxlLXByZXZpZXctZnJhbWUgLmt2LWZpbGUtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ua3YtcmVxZCB7XG4gIGNvbG9yOiByZWQ7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi50YXJnZXRze1xuICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAud2lkZ2V0LXRpdGxlX190aXRsZXtcbiAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb21tZXJjaWFsLW1hbmFnZW1lbnQgLndpZGdldC10aXRsZV9fdGl0bGV7XG4gICAgZm9udC1zaXplOiAyNXB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAud2lkZ2V0Om5vdCguZ3JvdXBlZC13aWRnZXQpOm5vdCgucGVyc29uYWwtc3BhY2Utd2lkZ2V0KTpub3QoLmNvbW1lcmNpYWwtbWFuYWdlbWVudCkgLndpZGdldC10aXRsZSAud2lkZ2V0LXRpdGxlX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG5cbiAgLndpZGdldC10aXRsZV9fdGl0bGUge1xuICAgICYgLm5ld3MtbGluZXtcbiAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC53aWRnZXQtY2FwdGlvbl9fY29tbWVyY2lhbC1ibG9ja3tcbiAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAgICNHUklELVdJREdFVFxuICAgIFxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiAgICAuZ3JpZC13aWRnZXQge1xuICAgICAgLmZpcnN0LWNvbHVtbiwgLnNlY29uZC1jb2x1bW4sIC50aGlyZC1jb2x1bW57XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLndpZGdldCBpbWcge1xuICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAud2lkZ2V0LXRpdGxlX190aXRsZXtcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb21tZXJjaWFsLW1hbmFnZW1lbnQgLndpZGdldC10aXRsZV9fdGl0bGV7XG4gICAgZm9udC1zaXplOiAyNXB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAud2lkZ2V0Om5vdCguZ3JvdXBlZC13aWRnZXQpOm5vdCgucGVyc29uYWwtc3BhY2Utd2lkZ2V0KTpub3QoLmNvbW1lcmNpYWwtbWFuYWdlbWVudCkgLndpZGdldC10aXRsZSAud2lkZ2V0LXRpdGxlX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG5cbiAgLndpZGdldC10aXRsZV9fdGl0bGUge1xuICAgICYgLm5ld3MtbGluZXtcbiAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC53aWRnZXQtY2FwdGlvbl9fY29tbWVyY2lhbC1ibG9ja3tcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgfVxufVxuIiwiQGltcG9ydCBcIn5kYXRhdGFibGVzLm5ldC1iczQvY3NzL2RhdGFUYWJsZXMuYm9vdHN0cmFwNC5jc3NcIjtcblxuLm1vZGFsLXhsIHtcbiAgbWF4LXdpZHRoOiAxMTcwcHg7XG59XG5cbi5vcmRlcnN0YXR1cyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4yNWVtIDAuNGVtO1xuICBmb250LXNpemU6IDc1JTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAvL3BhZGRpbmctcmlnaHQ6IDAuNmVtO1xuICAvL3BhZGRpbmctbGVmdDogMC42ZW07XG4gIC8vYm9yZGVyLXJhZGl1czogMTByZW07XG59XG5cbi5vcGVuaW5nc3RhdHVzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjI1ZW0gMC40ZW07XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIC8vcGFkZGluZy1yaWdodDogMC42ZW07XG4gIC8vcGFkZGluZy1sZWZ0OiAwLjZlbTtcbiAgLy9ib3JkZXItcmFkaXVzOiAxMHJlbTtcbn1cblxuLm9yZGVyc3RhdHVzLWFja25vd2xlZGdlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xufVxuXG5cbi5vcmRlcnN0YXR1cy1hY2tub3dsZWRnZWRfd2l0aF9jb21tZW50IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XG59XG5cblxuLm9yZGVyc3RhdHVzLW5vdF9hY2tub3dsZWRnZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbn1cblxuLm9yZGVyc3RhdHVzLXJldHJ5IHtcbiAgY29sb3I6ICNkYzM1NDU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cblxuLm9yZGVyc3RhdHVzLXBlbmRpbmdfdmFsaWRhdGlvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xufVxuXG4ub3JkZXJzdGF0dXMtcGVuZGluZ19hY2NvdW50X2NyZWF0aW9uIHtcbiAgY29sb3I6ICMxMTE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XG59XG5cbi5vcmRlcnN0YXR1cy1kZWxheWVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MjE4YTU7XG59XG5cbi5vcmRlcnN0YXR1cy1jYW5jZWxsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbn1cblxuLm9yZGVyc3RhdHVzLXByb2Nlc3Npbmcge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg2OGU5Njtcbn1cblxuLm9yZGVyc3RhdHVzLXRyYW5zZm9ybWVkIHtcbiAgY29sb3I6ICMxMTE7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4NjhlOTY7XG59XG5cbi5vcmRlcnN0YXR1cy1lcnJvciB7XG4gIGNvbG9yOiAjMzQzYTQwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG5cbi5vcmRlcnN0YXR1cy1yZWZ1c2VkIHtcbiAgY29sb3I6ICMwMDdiZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcbn1cblxuLm9yZGVyc3RhdHVzLWFjY291bnRfY3JlYXRlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTdhMmI4O1xufVxuXG4ub3JkZXJzdGF0dXMtYWNjb3VudF9yZWZ1c2VkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XG59XG5cbi5vcmRlcnN0YXR1cy11bmZpbmlzaGVkIHtcbiAgY29sb3I6ICMxMTE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG59XG5cbi5vcmRlcnN0YXR1cy1pbnRlcmZheF9lcnJvciB7XG4gIGNvbG9yOiAjMTZiY2EzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMxNmJjYTM7XG59XG5cbi5vcmRlcnN0YXR1cy1wZW5kaW5nX2ludGVyZmF4IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNmJjYTM7XG59XG5cbi5pbmZvdGV4dCB7XG4gIGNvbG9yOiAjMTdhMmI4XG59XG5cbi5ncmVlbi1jaGVjayB7XG4gIGNvbG9yOiBncmVlbjtcbn1cblxuLnJlZC1kZWxldGUge1xuICBjb2xvcjogcmVkO1xufVxuXG5cbi5hbWkyY2VudGVyZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAzMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpXG59XG5cbi5hbWkyaG9yaXpvbnRhbCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgrMjUlKTtcbn1cblxuLm5vcmVzaXplIHtcbiAgcmVzaXplOiBub25lO1xufVxuXG5kaXYuZGF0YVRhYmxlc19wcm9jZXNzaW5nIHtcbiAgei1pbmRleDogMTtcbn1cblxuLmRhdGFUYWJsZSB7XG4gIHRoIC5zb3J0aW5nIHtcblxuICB9XG59XG5cbiNwcmVzdGFzaG9wX29yZGVyc190YWJsZS50YWJsZSwgI3ByZXN0YXNob3BfbG95YWx0eV9vcmRlcnNfdGFibGUudGFibGUge1xuXG4gIHRoZWFkIHRyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxuXG4gIHRib2R5IHRyOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuI3ByZXN0YXNob3BfaW5jb21pbmdfdGFibGUge1xuICB0aGVhZCB0ciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFtaTItcGluaztcbiAgICBjb2xvcjogd2hpdGU7XG4gIH1cblxuICB0Ym9keSB0cjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbiNwcmVzdGFzaG9wX2NhcnRzX3RvX2JlX3ZhbGlkYXRlZF90YWJsZS50YWJsZSB7XG5cbiAgdGhlYWQgdHIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbWkyLXBpbms7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgdGJvZHkgdHI6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4jcHJlc3Rhc2hvcF9jYXJ0c190YWJsZS50YWJsZSB7XG5cbiAgdGhlYWQgdHIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbWkyLXBpbms7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgdGJvZHkgdHI6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4jcXVvdGF0aW9uc190YWJsZS50YWJsZSB7XG5cbiAgdGhlYWQgdHIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbWkyLXBpbms7XG4gICAgY29sb3I6IHdoaXRlO1xuXG4gIH1cbiAgdGJvZHkgdHI6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4jb3BlbmluZ3NfdGFibGUudGFibGUge1xuXG4gIHRoZWFkIHRyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxuICB0Ym9keSB0cjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbiNvcGVuaW5nc190YWJsZV9iYWNrLnRhYmxlIHtcbiAgdGhlYWQgdHIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbWkyLXBpbms7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgdGJvZHkgdHI6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4jcHJlc3Rhc2hvcF9vcmRlcnNfdGFibGVfYmFjay50YWJsZSwgI3ByZXN0YXNob3BfbG95YWx0eV9vcmRlcnNfdGFibGVfYmFjay50YWJsZSB7XG4gIHRoZWFkIHRyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxuXG4gIHRib2R5IHRyOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuI3F1b3RhdGlvbnNfdGFibGVfYmFjay50YWJsZSB7XG4gIHRoZWFkIHRyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICB0Ym9keSB0cjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cblxuLmJhY2stb3JkZXJzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBtYXJnaW46IDVweDtcbiAgfVxuXG5cbiAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFtaTItcGluaztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbWkyLWRhcms7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gIH1cbn1cblxuLmZyb250LW9yZGVycyB7XG4gIC8qXG4gICAgYTpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG4gICAgKi9cblxuXG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFtaTItb3JhbmdlO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luOiA1cHg7XG4gIH1cblxuICAubmF2LWxpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbWkyLW9yYW5nZS1zZWNvbmRhcnk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFtaTItZGFyaztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgfVxuXG4gIC8qXG4gICAgLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLCAubmF2LXBpbGxzIC5zaG93Pi5uYXYtbGluayB7XG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAvL2NvbG9yOiAjZDE0ODhmO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAqL1xuXG59XG5cbi5vcmRlci1kZXRhaWwuY2FyZC10aXRsZSB7XG4gIGNvbG9yOiAkYW1pMi1vcmFuZ2Vcbn1cblxuLm9yZGVyLWRldGFpbC5jYXJkLXN1YnRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi50ZXh0LWJsZXUtdmVydCB7XG4gIGNvbG9yOiByZ2IoMTAxLCAxOTMsIDE5NCk7XG59XG5cbi5tb2RhbC1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbn1cblxuLmZpbHRlcnMtY29sbGFwc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5YzlmO1xufVxuXG4jYWNjb3VudF9vcGVuaW5nX2luZm9fZm9ybV9kZWxpdmVyeURheXMge1xuICAuZm9ybS1jaGVjayB7XG4gICAgbGFiZWwuYnRuLmJ0bi1vdXRsaW5lLXByaW1hcnkuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjNDMxN2Q7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICBib3JkZXItY29sb3I6IGxpZ2h0Z3JleTtcbiAgICB9XG5cbiAgICBsYWJlbC5idG4uYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyZXk7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gIH1cbn1cblxuI2Zvcm1fZGVsaXZlcnlEYXlzIHtcbiAgLmZvcm0tY2hlY2sge1xuICAgIGxhYmVsLmJ0bi5idG4tb3V0bGluZS1wcmltYXJ5LmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzQzMTdkO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGdyZXk7XG4gICAgfVxuXG4gICAgbGFiZWwuYnRuLmJ0bi1vdXRsaW5lLXByaW1hcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmV5O1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIH1cblxuICB9XG5cbn0iLCIuYWRkcmVzc2VzLWZvcm0uY2FyZC1jb2x1bW5zIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XG4gICAgY29sdW1uLWNvdW50OiAxO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICBjb2x1bW4tY291bnQ6IDI7XG4gIH1cbn1cblxuLmFkZHJlc3Nlcy1mb3JtIC5idG4tZ3JvdXAtdG9nZ2xlIC5sb25nIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG5cbi5hZGRyZXNzZXMtZm9ybSAuYnRuLWdyb3VwLXRvZ2dsZSAuc2hvcnQge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG4uYWRkcmVzc2VzLW1lbnUge1xuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgLy9jb2xvcjogIzAwMDAwMDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAvL2ZvbnQtc2l6ZTogMTFweDtcbiAgfVxuXG5cblxuICAubmF2LXBpbGxzICwgLm5hdi1waWxscyAuc2hvdz4ubmF2LWxpbmsge1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFtaTItb3JhbmdlO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm5hdi1saW5rOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1vcmFuZ2Utc2Vjb25kYXJ5O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFtaTItZGFyaztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgfVxuXG59XG5cblxuXG4jYWRkRGlzdHJpYnV0b3JGb3JtU3VibWl0LTEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjc5MjIxO1xufVxuXG4jYWRkRGlzdHJpYnV0b3JGb3JtU3VibWl0LTIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjc5MjIxO1xufVxuXG5cblxuZGl2LmJ0bi1ncm91cC10b2dnbGUuZGVsaXZlcnktZGF5cy1pbnB1dHtcblxuICBsYWJlbC5idG4uYnRuLW91dGxpbmUtcHJpbWFyeS5hY3RpdmV7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M0MzE3ZDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogbGlnaHRncmV5O1xuICB9XG4gIGxhYmVsLmJ0bi5idG4tb3V0bGluZS1wcmltYXJ5e1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JleTtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG59XG5cbmxhYmVsLmJ0bi5idG4tb3V0bGluZS1wcmltYXJ5LmJ0bi1zbTpob3ZlcntcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmxhYmVsLmJ0bi5idG4tb3V0bGluZS1wcmltYXJ5LmJ0bi10eXBlLmFjdGl2ZXtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M0MzE3ZDtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6bGlnaHRncmV5O1xufVxuLypcbmxhYmVsLmJ0bi5idG4tb3V0bGluZS1wcmltYXJ5LmJ0bi10eXBlLmJ0bi1zbTpob3ZlcntcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M0MzE3ZDtcbiAgY29sb3I6IHdoaXRlO1xufVxuKi9cblxubGFiZWwuYnRuLmJ0bi1vdXRsaW5lLXByaW1hcnkuYnRuLXR5cGUuYnRuLXNte1xuICBib3JkZXItY29sb3I6IGxpZ2h0Z3JleTtcbn1cblxuaW5wdXQuYnRuLmJ0bi1wcmltYXJ5e1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjc5MjIxO1xufVxuXG5kaXYuY2FyZC1oZWFkZXJ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcblxuICAmIC5idG4tbGlua3tcbiAgICBjb2xvcjogI2RkM2E5ODtcblxuICAgICY6aG92ZXJ7XG4gICAgICBjb2xvcjogI2RkM2E5ODtcbiAgICB9XG4gIH1cbn1cblxuZGl2LmNhcmQtYm9keXtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuZGl2LmNhcmQtZm9vdGVyLnRleHQtYmxhY2t7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmg1Lm1iLTB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI2Rpc3RyaWJ1dG9ye1xuICBmb250LXNpemU6IHNtYWxsO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qI25hdi1kaXN0cmlidXRvcntcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuXG4jbmF2LWN1c3RvbWVye1xuICBmb250LXNpemU6IDEwMCU7XG59Ki9cblxuI2N1c3RvbWVye1xuICBmb250LXNpemU6IHNtYWxsO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbm9sLmJyZWFkY3J1bWJ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHNtYWxsO1xuICBhe1xuICAgIGNvbG9yOiAjOWU5YzlmO1xuICB9XG4gICNhY3RpdmV7XG4gICAgY29sb3I6IzQyODVGNDtcbiAgfVxufVxuXG5vcHRpb24uc2VsZWN0ZWR7XG4gIGJhY2tncm91bmQ6ICRhbWkyLXBpbms7XG4gIGNvbG9yOiB3aGl0ZTtcbn0iLCIuc3RyZXRjaGVkLWxpbms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApO1xufVxuXG4udGVzdC1tYXgtaGVpZ2h0e1xuICBtYXgtaGVpZ2h0OjEyNXB4O1xuLy8gIGhlaWdodDoxMjVweDtcbiAgbWF4LXdpZHRoOjIwNXB4O1xuICB3aWR0aDphdXRvO1xufVxuXG4ubGVmdC1zdXBwbGllci1tZW51e1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuLnZlcnRpY2FsLWxpbmV7XG4gIGJvcmRlci1yaWdodDogc29saWQgMXB4IGxpZ2h0Z3JleTtcbn1cblxuLnN1cHBsaWVyLW5hbWUtYm9sZHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbn1cblxuLnN1cHBsaWVycy1waW5rIHtcbiAgLy9hbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbiAgY29sb3I6ICRhbWkyLXBpbms7XG59XG5cbi5idG4tb3JhbmdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmODgzNztcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5idG4tb3JhbmdlLWJvbGQtZml4ZWQtd2lkdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWY4ODM3O1xuICBjb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDIwMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmJ0bi1mdWxsIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLnN1cHBsaWVycy1pbnB1dC1sYWJlbHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi5idG4tcGluayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xufVxuXG4uYnRuLXBpbmstYm9sZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xuICB3aWR0aDogMjAwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc3VwcGxpZXJzIHtcblxuICAubGlzdC1ncm91cC1pdGVtLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ucHktMi5tdC0wLnNob3cuYWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1waW5rO1xuICAgIG1hcmdpbi1ib3R0b206IDUlO1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLnB5LTIubXQtMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmODUzMztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBtYXJnaW4tYm90dG9tOiA1JVxuICB9XG5cbn1cblxuLmJ0bi1jb3ZlcmVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTk5QUE7XG59XG5cbi5iYWRnZS1jb3ZlcmVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTk5QUE7XG59XG5cbi5iYWRnZS11bmNvdmVyZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbn1cblxuLnN1cHBsaWVycy1waW5rLS1ub24tYWxpZ25lZCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBjb2xvcjogJGFtaTItcGluaztcbn1cblxuLmNoZWNrYm94LWhpZGRlbiB7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICBvcGFjaXR5OjA7XG59XG5cbi5pbWFnZS11cGxvYWQgPiBpbnB1dFxue1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5hLmVkaXRsaW5rXG57XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4uZHJvcGRvd24tY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xufVxuXG4udmNlbnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbmEubmF2LWxpbmt7XG4gIGZvbnQtc2l6ZTogOTAlO1xufVxuXG5uYXYub2wuYnJlYWRjcnVtYntcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogc21hbGw7XG5cbiAgYXtcbiAgICBjb2xvcjogIzllOWM5ZjtcbiAgfVxuICAjYWN0aXZle1xuICAgIGNvbG9yOiM0Mjg1RjQ7XG4gIH1cbn1cbi5waW5re1xuICBjb2xvcjogI2M0MzE3ZDtcbiAgZm9udC1zaXplOiBtZWRpdW07XG59XG4udGNlbnRlcntcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnN1cHBsaWVycy1saXN0e1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzcwNmY3Mztcbn1cblxuLnN1cHBsaWVyc3tcbiAgZm9udC1zaXplOiAxNDAlO1xufVxuXG4ubm9uZXtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uc2hpcHBpbmd7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXNpemU6IHNtYWxsO1xufVxuXG4uYnRuLXNlYXJjaHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbn1cblxuLnNlYXJjaHtcbiAgbWFyZ2luLWJvdHRvbTogNSU7XG59XG5cbi5kcm9wZG93bi1zaG93e1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duLWhpZGV7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kcm9wZG93bi1zZWxlY3RlZHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFtaTItcGluay1zZWNvbmRhcnk7XG4gIGNvbG9yOiB3aGl0ZVxufVxuXG4uZGVsZXRlU3VwcGxpZXJGaWxlOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufSIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICNQQUdFLUZPT1RcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuaHRtbHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5e1xuICBwYWRkaW5nLWJvdHRvbTogJGZvb3Rlci1oZWlnaHQgKyAyMHB4ICsgMTVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuXG4ucGFkZGluZy10b3AtMTV7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xufVxuXG4ucGFnZS1mb290IHtcbiAgaGVpZ2h0OiAkZm9vdGVyLWhlaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1iZztcbiAgZm9udC1zaXplOiAkZm9vdGVyLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRmb290ZXItY29sb3I7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcblxuICAmIGEsIGE6dmlzaXRlZHtcbiAgICBjb2xvcjogJGZvb3Rlci1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBjb2xvcjogJGZvb3Rlci1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJiBhZGRyZXNze1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnBhZ2UtZm9vdF9fbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogY2FsYyg1MCUgLSAjeyRhbWkyLWxvZ28taGVpZ2h0fSk7XG4gIHotaW5kZXg6IDU7XG5cbiAgd2lkdGg6ICN7JGFtaTItbG9nby13aWR0aH07XG4gIGhlaWdodDogI3skYW1pMi1sb2dvLWhlaWdodH07XG5cbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLy4uLy9zdGF0aWMvL2xvZ28tYW1pMi1oZWFkZXJfI3skYW1pMi1sb2dvLXdpZHRoLXdpdGhvdXQtdW5pdH14I3skYW1pMi1sb2dvLWhlaWdodC13aXRob3V0LXVuaXR9LnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59Ki9cbmh0bWx7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keXtcbiAgcGFkZGluZy1ib3R0b206ICRmb290ZXItaGVpZ2h0ICsgMjBweCArIDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMTAwJTtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSl7XG4gIGJvZHkge1xuICAgIHBhZGRpbmctYm90dG9tOiAkZm9vdGVyLWhlaWdodC10YWJsZXQgKyAyMHB4ICsgMTVweDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKXtcbiAgYm9keSB7XG4gICAgcGFkZGluZy1ib3R0b206ICRmb290ZXItaGVpZ2h0LWRlc2t0b3AgKyAyMHB4ICsgMTVweDtcbiAgfVxufVxuXG4ucGFnZS1mb290IHtcbiAgaGVpZ2h0OiAkZm9vdGVyLWhlaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1iZztcbiAgZm9udC1zaXplOiAkZm9vdGVyLWZvbnQtc2l6ZS1tb2JpbGU7XG4gIGNvbG9yOiAkZm9vdGVyLWNvbG9yO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsIHNhbnMtc2VyaWY7XG5cbiAgYXtcbiAgICBjb2xvcjojZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZle1xuICAgICAgY29sb3I6I2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci1jb21wYW55LWluZm9ybWF0aW9uc19fZGV0YWlsX19zb2NpYWwtbmV0d29yayBzcGFue1xuICBmb250LXNpemU6IDIzcHg7XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xuICAuZm9vdGVyLWNvbXBhbnktaW5mb3JtYXRpb25zX19kZXRhaWxfX3NvY2lhbC1uZXR3b3JrIHNwYW57XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pe1xuICAucGFnZS1mb290IHtcbiAgICBmb250LXNpemU6ICRmb290ZXItZm9udC1zaXplLW1vYmlsZTtcbiAgICBoZWlnaHQ6ICRmb290ZXItaGVpZ2h0LXRhYmxldDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcbiAgLnBhZ2UtZm9vdCB7XG4gICAgZm9udC1zaXplOiAkZm9vdGVyLWZvbnQtc2l6ZS10YWJsZXQ7XG4gICAgaGVpZ2h0OiAkZm9vdGVyLWhlaWdodC1zbWFsbC1kZXNrdG9wO1xuICB9XG59XG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKXtcbiAgLnBhZ2UtZm9vdCB7XG4gICAgZm9udC1zaXplOiAkZm9vdGVyLWZvbnQtc2l6ZTtcbiAgICBoZWlnaHQ6ICRmb290ZXItaGVpZ2h0LWRlc2t0b3A7XG4gIH1cbn1cblxuLmZvb3Rlci1tZW51c3tcbiAgdWwge1xuICAgIGxpe1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdG8gTGlnaHRcIiwgU2Fucy1zZXJpZjtcbiAgICB9XG4gIH1cblxuICAubWVudS1oZWFkZXJ7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF0byBCb2xkXCIsIFNhbnMtc2VyaWY7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XG4gIC5mb290ZXItbWVudXN7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxufVxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4eGwpe1xuICAuZm9vdGVyLW1lbnVze1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn0iLCIvKioqKioqKipcbiogR2VuZXJhbFxuKioqKioqKiovXG5cblxuLnNpZ251cC1odG1sIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uc2lnbnVwLWJvZHkge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2FucyBsaWdodFwiLHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjN2M3YzdjO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJhY2tncm91bmQtY29sb3I6I2MyMmQ3OSAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cbn1cblxuLndyYXBwZXItZnVsbC1wYWdlIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4udG9wLWltZyB7XG4gIC8qIGxlZnQ6IGNhbGMoNTAlIC0gNjEuMjVweCk7ICovXG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwO1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDIwcHgpO1xuICB9XG59XG5cbi50b3AtaW1nIGltZyB7XG4gIGhlaWdodDogMTAwcHg7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIGhlaWdodDogNDBweDtcbiAgfVxufVxuXG4uZm9ybS1ncm91cCA+IGxhYmVsLnJlcXVpcmVkOmFmdGVyIHtcbiAgY29udGVudDpcIiAqXCI7XG59XG5cbi5mb3JtLXRleHQtZXJyb3Ige1xuICBjb2xvcjogcmVkO1xufVxuXG4uY2FyZC1wZXJzbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qKioqKioqXG5DaGFydGUgKyBGb3JtXG4qKioqKioqL1xuLmNvbnRhaW5lci1zaWdudXAge1xuICBwYWRkaW5nOiA1MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gIH1cbn1cblxuI3NpZ251cCBmb3JtIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4jc2lnbnVwIC5jYXJkIHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4jc2lnbnVwIC5jYXJkLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjAzKTtcbiAgaGVpZ2h0OiA4MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG5cbiNzaWdudXAgLmNhcmQtaGVhZGVyIHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4jc2lnbnVwIC5jYXJkLWhlYWRlciB1bCBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuI3NpZ251cCAuY2FyZC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogMjAwO1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICB9XG59XG5cbiNzaWdudXAgLmNhcmQtdGl0bGUgaDEge1xuICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgfVxufVxuXG4jc2lnbnVwIC5jYXJkLXN1aXZpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMTVweDtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDBweDtcbiAgfVxufVxuXG4jc2lnbnVwIC5jYXJkLWJvZHkge1xuICBwYWRkaW5nOiAyNXB4IDUwcHggMjVweCA1MHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE2MHB4KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gIH1cbn1cblxuI3NpZ251cCAuY2FyZC1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wMyk7XG4gIGhlaWdodDogODBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgc3BhbiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbiNzaWdudXAgLmNhcmQtZm9vdGVyIC5idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWY4ODM3O1xuICBjb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDIwMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuI3NpZ251cCAuZm9vdGVyLXN1YnNjcmliZXItY29udGFjdCAuYnRuIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuI3NpZ251cCAuY2FyZC1mb290ZXIgLmJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMTQ4OGY7XG59XG5cbiNzaWdudXAgLmNoZWNrYm94IGxhYmVsIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmhlYWRlci13aXRoLXN1aXZpIC5jYXJkLWhlYWRlciB7XG4gIGhlaWdodDogMTAwcHggIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgaGVpZ2h0OiAxNzBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oZWFkZXItd2l0aC1zdWl2aSAuY2FyZC1ib2R5IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxODBweCkgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyNTBweCkgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGVhZGVyLXN1YnNjcmliZXIgLmNhcmQtdGl0bGUge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmZvb3Rlci1jb250YWN0LXRleHQge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbn1cblxuLmZvb3Rlci1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5mb290ZXItYWN0aW9ucy1zdWJzY3JpYmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBzcGFuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHggIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0haW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqXG5Gb3JtIFNpZ25VcCBDdXN0b21lclxuKioqKioqKioqKi9cblxuLmZvcm0tc2lnbnVwIGxhYmVsIHtcbiAgY29sb3I6ICNkMTQ4OGY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbn1cblxuLmZvcm0tc2lnbnVwIC5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xufVxuXG4jc2lnbl91cF9hY2NlcHRDb21FbWFpbCwgI3NpZ25fdXBfcmVjZWlwdENhdGFsb2csICNzaWduX3VwX3N0YXR1cywgI3NpZ25fdXBfY29udGFjdF9yZWNlaXB0TmV3c2xldHRlciwgI3NpZ25fdXBfY29udGFjdF9nZW5kZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4jc2lnbl91cF9hY2NlcHRDb21FbWFpbCAuZm9ybS1jaGVjaywgI3NpZ25fdXBfcmVjZWlwdENhdGFsb2cgLmZvcm0tY2hlY2ssICNzaWduX3VwX3N0YXR1cyAuZm9ybS1jaGVjaywgI3NpZ25fdXBfY29udGFjdF9yZWNlaXB0TmV3c2xldHRlciAuZm9ybS1jaGVjaywgI3NpZ25fdXBfY29udGFjdF9nZW5kZXIgLmZvcm0tY2hlY2sge1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4gIC8qKioqKioqKioqXG4gIENhcmQgU3VpdmlcbiAgKioqKioqKioqKi9cblxuLmJzLXdpemFyZCB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZTBlMGUwO1xuICB3aWR0aDo0MDBweDtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxleC13cmFwOiBpbml0aWFsO1xuICB9XG5cbn1cbi5icy13aXphcmQgPiAuYnMtd2l6YXJkLXN0ZXAge3BhZGRpbmc6MDsgcG9zaXRpb246IHJlbGF0aXZlO31cbi5icy13aXphcmQgPiAuYnMtd2l6YXJkLXN0ZXAgKyAuYnMtd2l6YXJkLXN0ZXAge31cbi5icy13aXphcmQgPiAuYnMtd2l6YXJkLXN0ZXAgLmJzLXdpemFyZC1zdGVwbnVtIHtmb250LXNpemU6IDEycHg7IG1hcmdpbi1ib3R0b206IDVweDt9XG4uYnMtd2l6YXJkID4gLmJzLXdpemFyZC1zdGVwLmFjdGl2ZSAuYnMtd2l6YXJkLXN0ZXBudW0ge2NvbG9yOiAjZDE0ODhmO31cbi5icy13aXphcmQgPiAuYnMtd2l6YXJkLXN0ZXAuY29tcGxldGUgLmJzLXdpemFyZC1zdGVwbnVtIHtjb2xvcjogI2QxNDg4Zjt9XG4uYnMtd2l6YXJkID4gLmJzLXdpemFyZC1zdGVwIC5icy13aXphcmQtaW5mbyB7Y29sb3I6ICM5OTk7IGZvbnQtc2l6ZTogMTRweDt9XG4uYnMtd2l6YXJkID4gLmJzLXdpemFyZC1zdGVwID4gLmJzLXdpemFyZC1kb3Qge3Bvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDE2cHg7IGhlaWdodDogMTZweDsgZGlzcGxheTogYmxvY2s7IGJhY2tncm91bmQ6ICNkMTQ4OGY7IHRvcDogNjVweDsgbGVmdDogNTUlOyBtYXJnaW4tdG9wOiAtMTVweDsgbWFyZ2luLWxlZnQ6IC0xNXB4OyBib3JkZXItcmFkaXVzOiA1MCU7fVxuLmJzLXdpemFyZCA+IC5icy13aXphcmQtc3RlcCA+IC5icy13aXphcmQtZG90OmFmdGVyIHtjb250ZW50OiAnICc7IHdpZHRoOiA4cHg7IGhlaWdodDogOHB4OyBiYWNrZ3JvdW5kOiAjZmZmOyBib3JkZXItcmFkaXVzOiA1MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNHB4OyBsZWZ0OiA0cHg7IH1cbi5icy13aXphcmQgPiAuYnMtd2l6YXJkLXN0ZXAuY29tcGxldGUgPiAuYnMtd2l6YXJkLWRvdDphZnRlciB7YmFja2dyb3VuZDogI2QxNDg4Zjt9XG4uYnMtd2l6YXJkID4gLmJzLXdpemFyZC1zdGVwID4gLnByb2dyZXNzIHtwb3NpdGlvbjogcmVsYXRpdmU7IGJvcmRlci1yYWRpdXM6IDBweDsgaGVpZ2h0OiA0cHg7IGJveC1zaGFkb3c6IG5vbmU7IG1hcmdpbjogMjBweCAwO31cbi5icy13aXphcmQgPiAuYnMtd2l6YXJkLXN0ZXAgPiAucHJvZ3Jlc3MgPiAucHJvZ3Jlc3MtYmFyIHt3aWR0aDowcHg7IGJveC1zaGFkb3c6IG5vbmU7IGJhY2tncm91bmQ6ICNkMTQ4OGY7fVxuLmJzLXdpemFyZCA+IC5icy13aXphcmQtc3RlcC5jb21wbGV0ZSA+IC5wcm9ncmVzcyA+IC5wcm9ncmVzcy1iYXIge3dpZHRoOjEwMCU7fVxuLmJzLXdpemFyZCA+IC5icy13aXphcmQtc3RlcC5hY3RpdmUgPiAucHJvZ3Jlc3MgPiAucHJvZ3Jlc3MtYmFyIHt3aWR0aDo1MCU7fVxuLmJzLXdpemFyZCA+IC5icy13aXphcmQtc3RlcDpmaXJzdC1jaGlsZC5hY3RpdmUgPiAucHJvZ3Jlc3MgPiAucHJvZ3Jlc3MtYmFyIHt3aWR0aDowJTt9XG4uYnMtd2l6YXJkID4gLmJzLXdpemFyZC1zdGVwOmxhc3QtY2hpbGQuYWN0aXZlID4gLnByb2dyZXNzID4gLnByb2dyZXNzLWJhciB7d2lkdGg6IDEwMCU7fVxuLmJzLXdpemFyZCA+IC5icy13aXphcmQtc3RlcC5kaXNhYmxlZCA+IC5icy13aXphcmQtZG90IHtiYWNrZ3JvdW5kLWNvbG9yOiAjZDE0ODhmO31cbi5icy13aXphcmQgPiAuYnMtd2l6YXJkLXN0ZXAuZGlzYWJsZWQgPiAuYnMtd2l6YXJkLWRvdDphZnRlciB7b3BhY2l0eTogMDt9XG4uYnMtd2l6YXJkID4gLmJzLXdpemFyZC1zdGVwOmZpcnN0LWNoaWxkICA+IC5wcm9ncmVzcyB7bGVmdDogNTAlOyB3aWR0aDogNTAlO31cbi5icy13aXphcmQgPiAuYnMtd2l6YXJkLXN0ZXA6bGFzdC1jaGlsZCAgPiAucHJvZ3Jlc3Mge3dpZHRoOiA1MCU7fVxuLmJzLXdpemFyZCA+IC5icy13aXphcmQtc3RlcC5kaXNhYmxlZCBhLmJzLXdpemFyZC1kb3R7IHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi8qIFNwb25zb3JzaGlwICovXG4uc3BvbnNvcnNoaXAtZm9ybSB7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBwYWRkaW5nOiAycmVtO1xuICBib3JkZXI6IHNvbGlkIDFweCAjYzIyZDc5O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6ICNjMjJkNzkwODtcbiAgLyogY29sb3I6ICMzMzM7ICovXG59XG4uc3BvbnNvcnNoaXAtYm94IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDZyZW07XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBwYWRkaW5nOiAuNXJlbSAxcmVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDE5NCwgNDUsIDEyMSwgLjEpO1xuICBjb2xvcjogI2MyMmQ3OTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59IiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4qIEdlbmVyYWxcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4uZmxhc2hNZXNzYWdlIHtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTVweDtcbiAgcmlnaHQ6IDE1cHg7XG59XG5cbi5ib2R5Q3VzdG9tZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xufVxuXG4uYnJlYWRjcnVtYiB7XG4gIC8qYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNyAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsqL1xuXG4gIC5zZXBhcmF0b3IgeyBwYWRkaW5nOiAwcHggNXB4OyB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICMwMDA7XG4gIH1cbn1cblxuLmJ0bi1jdXN0b21lciB7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbn1cblxuLmJ0bi1jdXN0b21lci1jb2xvci1hbWkyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmODgzNztcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5idG4tY3VzdG9tZXItY29sb3ItYW1pMjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMTQ4OGY7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnRuLWN1c3RvbWVyLWNvbG9yLWFtaTItaW52ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMTQ4OGY7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4jb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5O1xuICBoZWlnaHQ6IDJlbTtcbiAgd2lkdGg6IDJlbTtcbiAgbWFyZ2luOiBhdXRvO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFRyYW5zcGFyZW50IE92ZXJsYXkgKi9cbiNvdmVybGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4zKTtcbn1cblxuI292ZXJsYXkgLmZhLXNwaW5uZXIge1xuICBjb2xvcjogI2QxNDg4Zjtcbn1cblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuKiBGaWx0cmVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5jdXN0b21lci1maWx0ZXJzIHtcbiAgcGFkZGluZzogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIGZsZXgtZmxvdzogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgd2lkdGg6IDI0NHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIGhlaWdodDogMzJweDtcbiAgICB3aWR0aDogMjQ0cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZmlsdGVyLWNoZWNrYm94IC5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiogU2VjdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmN1c3RvbWVyLXNlY3Rpb24tdGl0bGUgc3BhbiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5kYXRhdGFibGUtY3VzdG9tZXIgdGJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uZGF0YXRhYmxlLWN1c3RvbWVyIHRoZWFkIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTY1NjU2O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuKiBDdXN0b21lciBGaWNoZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uY3VzdG9tZXItZmljaGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuXG4uY3VzdG9tZXItZmljaGUtaGVhZGVyIHtcbiAgcGFkZGluZzogMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG59XG5cbi5jdXN0b21lci1maWNoZS1tZW51IHtcbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIC8vY29sb3I6ICMwMDAwMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgLy9mb250LXNpemU6IDExcHg7XG4gIH1cblxuLypcbiAgYTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG4gICovXG5cbiAgLm5hdi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1vcmFuZ2U7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubmF2LWxpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbWkyLW9yYW5nZS1zZWNvbmRhcnk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZle1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbWkyLXBpbms7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW1pMi1kYXJrO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICB9XG5cbi8qXG4gIC5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZSwgLm5hdi1waWxscyAuc2hvdz4ubmF2LWxpbmsge1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy9jb2xvcjogI2QxNDg4ZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuKi9cbn1cblxuXG5cbi5jdXN0b21lci1maWNoZS1tZW51IHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uY3VzdG9tZXItZmljaGUtYWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMTVweDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbn1cblxuLmN1c3RvbWVyLWZpY2hlLWVycm9ycyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHJlZDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuXG4uY3VzdG9tZXItYmFjay1maWNoZS1hY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAxNXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjY2NjYztcbiAgfVxuXG4uY3VzdG9tZXItYmFjay1maWNoZS1lcnJvcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiByZWQ7XG59XG5cbi5jdXN0b21lci1maWNoZS1tZW51IHVsID4gbGkge1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4uY3VzdG9tZXItZmljaGUtaW5mb3Mge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMTVweDtcblxuXG4gIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxuXG4gIC8vLmZvcm0tZ3JvdXAge1xuICAvLyAgZmxleC1mbG93OiByb3c7XG4gIC8vICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIC8vICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAvL31cblxuICBpbnB1dFt0eXBlPSd0ZXh0J10sIGlucHV0W3R5cGU9J251bWJlciddLCBpbnB1dFt0eXBlPSdlbWFpbCddIHtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgLy93aWR0aDogMjQ0cHggIWltcG9ydGFudDtcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIC8vd2lkdGg6IDI0NHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZm9ybS1jaGVjayB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcmVtO1xuICB9XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNHJlbTtcbiAgfVxuXG59XG5cbi5jdXN0b21lci1maWNoZS10aXRsZSB7XG4gIGNvbG9yOiAjZDE0ODhmO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmN1c3RvbWVyLWZpY2hlLWluZm9zIGZvcm0ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmN1c3RvbWVyLWZpY2hlLWZpbGUge1xuICBoZWlnaHQ6IDEyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4vLyAgaW1nIHtcbi8vICAgIHdpZHRoOiAxMDAlO1xuLy8gICAgaGVpZ2h0OiAxMDAlO1xuLy8gIH1cbn1cblxuLmN1c3RvbWVyLWZpbGUtaW1hZ2Uge1xuICBtYXgtaGVpZ2h0OiAxMThweDtcbiAgd2lkdGg6IGF1dG87XG59XG5cblxuLmN1c3RvbWVyLWZpY2hlLWZpbGUtbmFtZS1yZW1vdmUge1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxuLnZpY2gtaW1hZ2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLy5pbnB1dC12aWNoZmlsZXR5cGUgaW5wdXRbdHlwZT0nZmlsZSddIHtcbi8vICB2aXNpYmlsaXR5OiBoaWRkZW47XG4vL31cblxuLmN1c3RvbWVyLWZpY2hlLWRvY3MtdGl0bGUge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2QxNDg4Zjtcbn1cblxuI2N1c3RvbWVyLWZpY2hlLWRvY3Mge1xuICBwYWRkaW5nOiAxNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuXG4jY3VzdG9tZXItZmljaGUtZG9jcy1saXN0IHtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLmN1c3RvbWVyLWZpY2hlLWRvYy1hY3Rpb25zIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jYnRuLWN1c3RvbWVyLWZpY2hlLWFjdGlvbi1maWxlIHtcbiAgbWFyZ2luOiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgZm9udC1zaXplOiAuODc1cmVtO1xufVxuXG4jYnRuLWN1c3RvbWVyLWZpY2hlLWFjdGlvbi1maWxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0MwMjk3OTtcbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jdXN0b21lci1maWNoZS1pbmZvcyAub2RkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZFRUZGNztcbn1cblxuXG4uY3VzdG9tZXItZmljaGUtdXNlciB7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcblxufVxuXG4uY3VzdG9tZXItbGlzdC1zdGF0dXMge1xuICBwYWRkaW5nOiA1cHg7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE2MjY4O1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi5jdXN0b21lci1saXN0LXN0YXR1cy10b3ZhbGlkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbn1cblxuLmN1c3RvbWVyLWxpc3Qtc3RhdHVzLXZhbGlkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NTtcbn1cblxuLmN1c3RvbWVyLWxpc3Qtc3RhdHVzLXJlZnVzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XG59XG5cbi5jdXN0b21lci1saXN0LXN0YXR1cy1kbWREZWxldGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xufVxuXG4uZm9ybS12YXJzLWxhYmVsIHtcbiAgZm9udC1zaXplOiAxMXB4O1xufVxuXG4jY3VzdG9tZXItZmljaGUtcHJvdGVjdCB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XG5cbiAgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICM0YTRhNGE7XG4gIH1cblxuICAubGluazEge1xuICAgIGNvbG9yOiAjMDA2OWQ5O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxuXG4gIC5saW5rMiB7XG4gICAgY29sb3I6ICNkYzM1NDU7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG59XG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiogR2VuZXJhbFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4qIENvbnRhY3QgTGlzdFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5jb250YWN0LWRpc2FibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkFENkU5ICFpbXBvcnRhbnQ7XG59XG5cbi5jb250YWN0LWxpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb250YWN0LWxpc3Qtcm93IHtcbiAgLy9wYWRkaW5nLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgLy9wYWRkaW5nLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmNvbnRhY3QtYmxvY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJGQkZCO1xuICBwYWRkaW5nOiAxNXB4O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDhweCAjY2NjO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcbn1cblxuLmNvbnRhY3QtYmxvY2stbm9uZWRpdGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJGQkZCO1xuICBwYWRkaW5nOiAxNXB4O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDhweCAjY2NjO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnM7XG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XG59XG5cbi5jb250YWN0LWJsb2NrLW5hbWUge1xuICBjb2xvcjogI2M0MzE3ZCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5jb2xvci1ibG9jay1mYSB7XG4gIGNvbG9yOiAjNjVjMWMyICFpbXBvcnRhbnQ7XG59XG5cbi5jb250YWN0LXBhZ2luYXRpb24ge1xuICAuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjVjMWMyICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgfVxuXG5cbiAgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICM2NWMxYzIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NWMxYzIgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICM2NWMxYzIgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICB9XG5cbn1cblxuLmNhcmQtZWRpdC1jb250YWN0IHtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiogRGVwYXJ0ZW1lbnRzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLmVuYWJsZURlbGVndWVBbWkyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2RlcGFydG1lbnRzIGZpZWxkc2V0IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuI2NvbXBhbnlfY29udGFjdF9kZXBhcnRtZW50cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogd3JhcDtcblxuICAuYnRuLWdyb3VwLXRvZ2dsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLy8uZm9ybS1jaGVjay1sYWJlbCB7XG4gIC8vICBkaXNwbGF5OiBub25lO1xuICAvL31cbiAgLy9sYWJlbC5hY3RpdmUge1xuICAvLyAgYmFja2dyb3VuZC1jb2xvcjogIzE3YTJiOCFpbXBvcnRhbnQ7XG4gIC8vICBib3JkZXItY29sb3I6ICMxN2EyYjghaW1wb3J0YW50O1xuICAvL31cblxufVxuXG4iLCIubmF2LXRhYnMgPiBsaS5hY3RpdmUgYSwgLm5hdi10YWJzID4gbGkuYWN0aXZlIGE6aG92ZXIsIC5uYXYtdGFicyA+IGxpLmFjdGl2ZSBhOmZvY3VzIHtcbiAgYm9yZGVyLXdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jaGVja2JveC5uby1idXR0b24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLCAuY2hlY2tib3gtaW5saW5lLm5vLWJ1dHRvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sIC5yYWRpby5uby1idXR0b24gaW5wdXRbdHlwZT1cInJhZGlvXCJdLCAucmFkaW8taW5saW5lLm5vLWJ1dHRvbiBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBwb3NpdGlvbjogaW5oZXJpdDtcbn1cblxubGFiZWwubm8tYnV0dG9ue1xuICB3aWR0aDo1MCU7XG59XG5cbi5jaGVja2JveC5uby1idXR0b24sIC5yYWRpby5uby1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5iZy13YXJuaW5nLWZvcmNlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTMgIWltcG9ydGFudDtcbn1cblxuLmJnLXN1Y2Nlc3MtZm9yY2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RGRjBEOCAhaW1wb3J0YW50O1xufVxuXG4uYmctZGFuZ2VyLWZvcmNlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmRlZGUgIWltcG9ydGFudDtcbn1cblxuLmJnLWluZm8tZm9yY2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZWRmNyAhaW1wb3J0YW50O1xufVxuXG4jYnVmZmVyLWRpc3RyaWJ1dG9yLXRhYmxle1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4ubW9kYWwtaGVhZGVye1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIyZDc5O1xuICBjb2xvcjp3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ubW9kYWwtaGVhZGVyIC5jbG9zZXtcbiAgY29sb3I6d2hpdGU7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT03MCk7XG4gIG9wYWNpdHk6IC43O1xufVxuXG5cblxuLnRhYmxlIC5idWZmZXItZmllbGRzIHRkIHtcbiAgdmVydGljYWwtYWxpZ24gOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cblxudGFibGUgLmJ1ZmZlci10YWJsZS1oZWFkZXIgLmJnLWluZm97XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWVkZjcgIWltcG9ydGFudDtcbiAgd2lkdGg6IDI1JTtcbn1cblxudGFibGUgLmJ1ZmZlci10YWJsZS1oZWFkZXIgLmJnLXN1Y2Nlc3N7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZmYwZDggIWltcG9ydGFudDtcbiAgd2lkdGg6IDI1JTtcbn1cblxudGFibGUgLmJ1ZmZlci10YWJsZS1oZWFkZXIgLmJnLWRhbmdlcntcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZGVkZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMjUlO1xufVxuXG4udGNlbnRlcntcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcblxuXG5cblxuXG59IiwiLkFtaTJCYXNlVmVydGljYWxNZW51e1xuICBwYWRkaW5nOiAuNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMTYxKTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcblxuICAubWVudS0taXRlbV9fbGlua3tcbiAgICBpbWd7XG4gICAgICBtYXgtaGVpZ2h0OiAyMnB4O1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgfVxuICB9XG5cbiAgLm1lbnUtLWl0ZW1fX2xpbmsuYWN0aXZle1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgLm1lbnUtLWl0ZW1fX2xpbms6bm90KC5hY3RpdmUpXG4gIHtcbiAgICBjb2xvcjogJGJsYWNrLTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmOmhvdmVye1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LW9yYW5nZTtcbiAgICB9XG4gIH1cbn1cblxuI2Rpc3RyaWJ1dG9yc0luZGV4U3ViTWVudXtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjtcbiAgbWFyZ2luLXRvcDogMWVtO1xuICBwYWRkaW5nOiAxZW07XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDMwMHB4O1xuXG4gIGEsIGE6dmlzaXRlZCwgYTpmb2N1c3tcbiAgICBjb2xvcjogJGJsYWNrLTE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIGE6aG92ZXJ7XG4gICAgY29sb3I6ICRsaWdodC1vcmFuZ2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgdWx7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuc3VibWVudURpc3RyaWJ1dG9ye1xuICAgIGxpe1xuICAgICAgcGFkZGluZy1sZWZ0OjFlbTtcbiAgICB9XG4gIH1cbn1cblxuLkFtaTJCYXNlSG9yaXpvbnRhbE1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICAuQW1pMlN3aXBlci1wYWdpbmF0aW9ue1xuICAgIGJvdHRvbTogM3JlbTtcbiAgICBsZWZ0OiA0OCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGJhY2tncm91bmQ6ICRvcmFuZ2U7XG4gICAgfVxuXG4gICAgJiA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgbWFyZ2luOiAwIDRweDtcbiAgICB9XG4gIH1cblxuICAuQW1pMlN3aXBlcntcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcblxuICAgICYgLnN3aXBlci1zbGlkZXtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cblxuICAuQW1pMkJhc2VIb3Jpem9udGFsTWVudV9fd3JhcHBlciB7XG4gICAgYm94LXNoYWRvdzogMXB4IDFweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBwYWRkaW5nOiAyZW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAzZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICB3aWR0aDoxMDAlO1xuXG4gICAgLnN3aXBlci1idXR0b24tbmV4dCwgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgICAuc3dpcGVyLWJ1dHRvbi1wcmV2LCAuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgIC5zd2lwZXItYnV0dG9uLXByZXYsIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICAgICAgY29sb3I6ICRvcmFuZ2U7XG4gICAgfVxuICAgIC5zd2lwZXItYnV0dG9uLXByZXY6OmFmdGVyLCAuc3dpcGVyLWJ1dHRvbi1uZXh0OjphZnRlciB7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC5BbWkyQmFzZU1lbnVJdGVte1xuICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgIG1hcmdpbjowIDFlbTtcbiAgICB9XG5cbiAgICAuQW1pMkJhc2VNZW51SXRlbV9fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICYgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgJiBhOmhvdmVyLCBhOnZpc2l0ZWQsIGE6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5BbWkyQmFzZU1lbnVJdGVtX19pY29uYm94IHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMXB4IDFweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNWVtO1xuXG4gICAgICAgICYgaW1ne1xuICAgICAgICAgIG1heC13aWR0aDogMTZweDtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWR7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLmRpc2FibGVkKTpob3ZlciAuQW1pMkJhc2VNZW51SXRlbV9faWNvbmJveCwgJi5hY3RpdmUgLkFtaTJCYXNlTWVudUl0ZW1fX2ljb25ib3gge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGluaztcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyICBhLCAmLmFjdGl2ZSAgYXtcbiAgICAgICAgY29sb3I6ICRwaW5rO1xuICAgICAgICBmb250LWZhbWlseTogXCJMYXRvIEJvbGRcIiwgc2Fucy1zZXJpZjtcblxuICAgICAgICAmIGl7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cblxuLkFtaTJCdG4ge1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNGVtIDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgZmxleC1zaHJpbms6IDA7XG5cbiAgJi0tcGluayB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGluaztcbiAgfVxuXG4gICYtLW9yYW5nZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlO1xuICB9XG5cbiAgJi0td2hpdGUtcGluayB7XG4gICAgY29sb3I6ICRwaW5rO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgfVxuXG4gICYtLXdoaXRlLWJsYWNrIHtcbiAgICBjb2xvcjogJGJsYWNrLTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgJi0tYm9yZGVyIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkbGlnaHQtZ3JleS0xO1xuICB9XG5cbiAgJi0tc2hhZG93IHtcbiAgICBib3gtc2hhZG93OiAzcHggM3B4IDZweCAkd2hpdGUtby0xNTtcbiAgfVxuXG4gICYtLWNlbnRyZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgJi0tcmVkIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XG4gIH1cblxuICA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG5cbiAgLmZhLXN0YWNrIC5waW5re1xuICAgIGZvbnQtc2l6ZTogeHgtbGFyZ2UgIWltcG9ydGFudDtcbiAgfVxuICBpOm50aC1jaGlsZCgyKXtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIC8qdHJhbnNmb3JtOiBzY2FsZSgxLjEpOyovXG4gIH1cbn1cblxuQGltcG9ydCAnfnN3aXBlci9zd2lwZXInO1xuQGltcG9ydCAnfnN3aXBlci9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbic7XG5AaW1wb3J0ICd+c3dpcGVyL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uJztcblxuIiwiQGltcG9ydCAnc3dpcGVyLXZhcnMuc2Nzcyc7XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3N3aXBlci1pY29ucyc7XG4gIHNyYzogdXJsKCdkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwgZDA5R1JnQUJBQUFBQUFaZ0FCQUFBQUFBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQUdSQUFBQUJvQUFBQWNpNnFIa1VkRVJVWUFBQVdnQUFBQUl3QUFBQ1FBWUFCWFIxQlBVd0FBQmhRQUFBQXVBQUFBTnVBWTcreEhVMVZDQUFBRnhBQUFBRkFBQUFCbTJmUGN6VTlUTHpJQUFBSGNBQUFBU2dBQUFHQlA5VjVSWTIxaGNBQUFBa1FBQUFDSUFBQUJZdDZGMGNCamRuUWdBQUFDekFBQUFBUUFBQUFFQUJFQlJHZGhjM0FBQUFXWUFBQUFDQUFBQUFqLy93QURaMng1WmdBQUF5d0FBQURNQUFBRDJNSHRyeVZvWldGa0FBQUJiQUFBQURBQUFBQTJFMitlb1dob1pXRUFBQUdjQUFBQUh3QUFBQ1FDOWdEemFHMTBlQUFBQWlnQUFBQVpBQUFBcmdKa0FCRnNiMk5oQUFBQzBBQUFBRm9BQUFCYUZRQVVHRzFoZUhBQUFBRzhBQUFBSHdBQUFDQUFjQUJBYm1GdFpRQUFBL2dBQUFFNUFBQUNYdkZkQndsd2IzTjBBQUFGTkFBQUFHSUFBQUNFNXM3NGhYamFZMkJrWUdBQVlwZjVIdS9qK1cyK01uQXpNWURBemFYNlFqRDYvNC8vQnhqNUdBOEF1UndNWUdrQVB5d0wxM2phWTJCa1lHQTg4UDhBZ3g0aisvOGZRRFlmQTFBRUJXZ0RBSUIyQk9vQWVOcGpZR1JnWU5CaDRHZGdZZ0FCRU1uSUFCSnpZTkFEQ1FBQUNXZ0FzUUI0Mm1OZ1lmekNPSUdCbFlHQjBZY3hqWUdCd1IxS2YyV1FaR2hoWUdCaVlHVm1nQUZHQmlRUWtPYWF3dERBb01CUXhYamcvd0VHUGNZRERBNHdOVUEyQ0Nnd3NBQUFPNEVMNmdBQWVOcGoyTTBneUFBQ3F4Z0dOV0JrWjJENC93TUEreGtEZGdBQUFIamFZMkJnWUdhQVlCa0dSZ1lRaUFIeUdNRjhGZ1lISU0zRHdNSEFCR1FyTU9neVdETEVNMVQ5L3c4VUJmRU1nTHpFLy8vL1AvNS8vZi9WL3h2K3I0ZWFBQWVNYkF4d0lVWW1JTUhFZ0tZQVlqVWNzREF3c0xLeGMzQnljZlB3OGpFUUEvZ1pCQVNGaEVWRXhjUWxKS1drWldUbDVCVVVsWlJWVk5YVU5UUVpCZ01BQU1SK0UrZ0FFUUZFQUFBQUtnQXFBQ29BTkFBK0FFZ0FVZ0JjQUdZQWNBQjZBSVFBamdDWUFLSUFyQUMyQU1BQXlnRFVBTjRBNkFEeUFQd0JCZ0VRQVJvQkpBRXVBVGdCUWdGTUFWWUJZQUZxQVhRQmZnR0lBWklCbkFHbUFiSUJ6Z0hzQUFCNDJ1Mk5NUTZDVUF5R1c1Njh4OUFuZVlZZ200TUpiaEtGYUV4SU9BVlg4QXBld1N0NEJpYzRBZmVBaWQzVk9CaXhEeGZQWUV6YTVPK1hmaTA0WUFEZ2dpVUlVTEN1RUpLOFZoTzRiU3ZwZG5rdEhJNVFDWXRkaTJzbDhablhhSGxxVXJOS3pkS2NUOGNqbHErcndaU3ZJVmN6TmllenNmblAvdXpubWZQRkJOT0RNMks3TVRRNDVZRUFacUdQODFBbUdHY0YzaVBxT29wMHIxU1BUYVRiVmtmVWU0SFhqOTd3WUUreU53V1l4d1d1NHYxdWdXSGdvM1MxWGRaRVZxV003RVQwY2ZuTEd4V2ZrZ1I0Mm8yUHZXckRNQlNGai9JSExhRjB6S2pSZ2RpVk13U2NOUkFvV1VvSDc4WTJpY0IveUlZMDlBbjZBSDJCZHUvVUIreXhvcFlzaFFpRXZudnUwZFVSZ0R0OFFlQzhQRHc3RnBqaTNmRUE0ei9QRUo2WU9CNWhLaDRkajNFdlhoeFBxSC9TS1VZM3JKN3NyWjRGWm5oMVBNQXRQaHdQNmZsMlBNSk1QRGdlUTRyWThZVDZHemFvMGVBRUE0MDlEdWdnbVRuRm5PY1NDaUVpTE1neENpVEk2Q3E1RFpVZDNRbXAxMHZPMExhTFRkMmNqTjRmT3VtbGM3bFVZYlNRY1pGa3V0Ukc3ZzZKS1pLeTBSbWRMWTY4MENEbkVKK1VNa3BGRmUxUk43bnhkVnBYckM0YVR0bmF1ck9uWWVyY1pnMllWbUxOL2QvZ2N6ZkVpbXJFL2ZzL2JPdXEyOVptbjh0bG9PUmFYZ1pnR2E3OHlPOS9jblhtMkJwYUd2cTI1RHY5UzRFOSs1U0ljOVBxdXBKS2hZRlNTbDQ3K1FjcjFtWU5BQUFBZU5wdHcwY0t3a0FBQU1EWkpBOFE3T1VKdmtMc1BmWjZ6RlZFUlB5OHFIaDJZRVIrM2kvQlA4M3ZJQkxMeVNzb0tpbXJxS3FwYTJocDYranE2UnNZR2htYm1KcVpTeTBzcmF4dGJPM3NIUnlkbkVNVTR1UjZ5eDdKSlh2ZVA3V3JEeWNBQUFBQUFBSC8vd0FDZU5wallHUmdZT0FCWWhrZ1pnSkNaZ1pOQmtZR0xRWnRJSnNGTE1ZQUFBdzNBTGdBZU5vbGl6RUtnREFRQkNjaFJiQzJzRkVSMFlENnFWUWlCQ3YvSDllekdJNlo1WEJBdzhDQksvbTVpUVFWYXVWYlhMbk9yTVp2Mm9MZEtGYThQanVydTJoSnpHYWJtT1NMek5NenZ1dHBCM040Mm1OZ1pHQmc0R0tRWXpCaFlNeEpMTWxqNEdCZ0FZb3cvUC9QQUpKaExNNnNTb1dLZldDQUF3REFqZ2JSQUFCNDJtTmdZR0JrQUlJYkNabzVJUHJtVW4waEdBMEFPOEVGVFFBQScpXG4gICAgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuOnJvb3Qge1xuICAtLXN3aXBlci10aGVtZS1jb2xvcjogI3skdGhlbWVDb2xvcn07XG59XG4uc3dpcGVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgLyogRml4IG9mIFdlYmtpdCBmbGlja2VyaW5nICovXG4gIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4uc3dpcGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1tdWx0aXJvdyA+IC5zd2lwZXItd3JhcHBlciB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93LWNvbHVtbiA+IC5zd2lwZXItd3JhcHBlciB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4uc3dpcGVyLWNvbnRhaW5lci1wb2ludGVyLWV2ZW50cyB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICYuc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teDtcbiAgfVxufVxuLnN3aXBlci1zbGlkZSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbn1cbi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogQXV0byBIZWlnaHQgKi9cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQge1xuICAmLFxuICAuc3dpcGVyLXNsaWRlIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xuICB9XG59XG5cbi8qIDNEIEVmZmVjdHMgKi9cbi5zd2lwZXItY29udGFpbmVyLTNkIHtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgLnN3aXBlci13cmFwcGVyLFxuICAuc3dpcGVyLXNsaWRlLFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4gIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxufVxuXG4vKiBDU1MgTW9kZSAqL1xuLnN3aXBlci1jb250YWluZXItY3NzLW1vZGUge1xuICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGb3IgRmlyZWZveCAqL1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogRm9yIEludGVybmV0IEV4cGxvcmVyIGFuZCBFZGdlICovXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnQ7XG4gIH1cbn1cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwuc3dpcGVyLWNvbnRhaW5lci1jc3MtbW9kZSB7XG4gID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgfVxufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwuc3dpcGVyLWNvbnRhaW5lci1jc3MtbW9kZSB7XG4gID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBzY3JvbGwtc25hcC10eXBlOiB5IG1hbmRhdG9yeTtcbiAgfVxufVxuXG5cblxuIiwiQGltcG9ydCAnLi4vLi4vc3dpcGVyLXZhcnMuc2Nzcyc7XG5cbjpyb290IHtcbiAgLypcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgKi9cbn1cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi8qIENvbW1vbiBTdHlsZXMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbixcbi5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLyogQnVsbGV0cyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMDtcbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYtcHJldiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgfVxufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC4yO1xuICBAYXQtcm9vdCBidXR0b24jeyZ9IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgJiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjpvbmx5LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xufVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgIG1hcmdpbjogNnB4IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogOHB4O1xuICAgICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3A7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsIHtcbiAgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICBtYXJnaW46IDAgNHB4O1xuICAgIH1cbiAgICAmLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICAgIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zd2lwZXItY29udGFpbmVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbiAgfVxufVxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIH1cbiAgLnN3aXBlci1jb250YWluZXItcnRsICYgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgfVxuICAuc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gJixcbiAgLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAmLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxuICAuc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+ICYsXG4gIC5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAmLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgICB3aWR0aDogNHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxufVxuQGVhY2ggJHBhZ2luYXRpb25Db2xvck5hbWUsICRwYWdpbmF0aW9uQ29sb3JWYWx1ZSBpbiAkY29sb3JzIHtcbiAgLnN3aXBlci1wYWdpbmF0aW9uLSN7JycgKyAkcGFnaW5hdGlvbkNvbG9yTmFtZX0ge1xuICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6ICN7JycgKyAkcGFnaW5hdGlvbkNvbG9yVmFsdWV9O1xuICB9XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAaW1wb3J0ICcuLi8uLi9zd2lwZXItdmFycy5zY3NzJztcblxuOnJvb3Qge1xuICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDQ0cHg7XG4gIC8qXG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gICovXG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiBjYWxjKHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gNDQgKiAyNyk7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gIG1hcmdpbi10b3A6IGNhbGMoMHB4IC0gKHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gMikpO1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgJi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjM1O1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogc3dpcGVyLWljb25zO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXZhcmlhbnQ6IGluaXRpYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdwcmV2JztcbiAgfVxuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICduZXh0JztcbiAgfVxuICByaWdodDogMTBweDtcbiAgbGVmdDogYXV0bztcbn1cblxuQGVhY2ggJG5hdkNvbG9yTmFtZSwgJG5hdkNvbG9yVmFsdWUgaW4gJGNvbG9ycyB7XG4gIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICAgICYuc3dpcGVyLWJ1dHRvbi0jeycnICsgJG5hdkNvbG9yTmFtZX0ge1xuICAgICAgLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogI3snJyArICRuYXZDb2xvclZhbHVlfTtcbiAgICB9XG4gIH1cbn1cbi5zd2lwZXItYnV0dG9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgI1NPQ0lBTC1NRURJQVNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5zb2NpYWwtbWVkaWFzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDI1cHgpO1xuICAgIGdyaWQtY29sdW1uLWdhcDogMTBweDtcbiAgICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmLnNvY2lhbC1tZWRpYXMtLWxhcmdlLWdhcCB7XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogMjVweDtcbiAgICB9XG5cbiAgICAuc29jaWFsLW1lZGlhc19faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG5cbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQ7XG5cbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdmlnYXRpb24ge1xuICAgIC5zb2NpYWwtbWVkaWFzX19pdGVtOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkYW1pMi1waW5rO1xuICAgIH1cbn1cbiIsIi8vXG4vLyBTd2l0Y2hlcyBmb3IgQm9vdHN0cmFwIDQuXG4vL1xuLy8gLSBGdWxseSBjdXN0b21pemFibGUgd2l0aCBTYXNzIHZhcmlhYmxlc1xuLy8gLSBObyBKYXZhU2NyaXB0IHJlcXVpcmVkXG4vLyAtIEZ1bGx5IGFjY2Vzc2libGVcbi8vXG5cbi8vXG4vLyBJTVBPUlRBTlQ6IFRoZXNlIFNhc3MgdmFyaWFibGVzIGFyZSBkZWZpbmVkIGluIEJvb3RzdHJhcCdzIHZhcmlhYmxlcy5zY3NzLiBZb3Ugc2hvdWxkIGltcG9ydCB0aGF0IGZpbGUgZmlyc3QsIHRoZW4gcmVtb3ZlIHRoZXNlLlxuLy9cbiRmb250LXNpemUtYmFzZTogMXJlbTtcbiRmb250LXNpemUtbGc6ICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KTtcbiRmb250LXNpemUtc206ICgkZm9udC1zaXplLWJhc2UgKiAuODc1KTtcbiRpbnB1dC1oZWlnaHQ6IDIuMzc1cmVtO1xuJGlucHV0LWhlaWdodC1zbTogMS45Mzc1cmVtO1xuJGlucHV0LWhlaWdodC1sZzogM3JlbTtcbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6IC4ycmVtO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogI2RlZTJlNjtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICNlOWVjZWY7XG4kY3VzdG9tLWNvbnRyb2wtZGVzY3JpcHRpb24tZGlzYWJsZWQtY29sb3I6ICM4NjhlOTY7XG4kd2hpdGU6IHdoaXRlO1xuJHRoZW1lLWNvbG9yczogKFxuICAgICAgICAncHJpbWFyeSc6ICM5YjI3NjNcbik7XG5cbi8vXG4vLyBUaGVzZSB2YXJpYWJsZXMgY2FuIGJlIHVzZWQgdG8gY3VzdG9taXplIHRoZSBzd2l0Y2ggY29tcG9uZW50LlxuLy9cbiRzd2l0Y2gtaGVpZ2h0OiBjYWxjKCN7JGlucHV0LWhlaWdodH0gKiAuOCkgIWRlZmF1bHQ7XG4kc3dpdGNoLWhlaWdodC1zbTogY2FsYygjeyRpbnB1dC1oZWlnaHQtc219ICogLjgpICFkZWZhdWx0O1xuJHN3aXRjaC1oZWlnaHQtbGc6IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWxnfSAqIC44KSAhZGVmYXVsdDtcbiRzd2l0Y2gtYm9yZGVyLXJhZGl1czogJHN3aXRjaC1oZWlnaHQgIWRlZmF1bHQ7XG4kc3dpdGNoLWJnOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnICFkZWZhdWx0O1xuJHN3aXRjaC1jaGVja2VkLWJnOiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5JykgIWRlZmF1bHQ7XG4kc3dpdGNoLWRpc2FibGVkLWJnOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJHN3aXRjaC1kaXNhYmxlZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWRlc2NyaXB0aW9uLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuJHN3aXRjaC10aHVtYi1iZzogJHdoaXRlICFkZWZhdWx0O1xuJHN3aXRjaC10aHVtYi1ib3JkZXItcmFkaXVzOiA1MCUgIWRlZmF1bHQ7XG4kc3dpdGNoLXRodW1iLXBhZGRpbmc6IDJweCAhZGVmYXVsdDtcbiRzd2l0Y2gtZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCByZ2JhKG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKSwgLjI1KTtcbiRzd2l0Y2gtdHJhbnNpdGlvbjogLjJzIGFsbCAhZGVmYXVsdDtcblxuLnN3aXRjaCB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgaW5wdXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgICAgIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICArIGxhYmVsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogY2FsYygjeyRzd2l0Y2gtaGVpZ2h0fSAqIDIpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogY2FsYyhjYWxjKCN7JHN3aXRjaC1oZWlnaHR9ICogMikgKyAuNXJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICArIGxhYmVsOjpiZWZvcmUsXG4gICAgICAgICsgbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7JHN3aXRjaC1oZWlnaHR9ICogMik7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtYmc7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkc3dpdGNoLXRyYW5zaXRpb247XG4gICAgICAgIH1cblxuICAgICAgICArIGxhYmVsOjphZnRlciB7XG4gICAgICAgICAgICB0b3A6ICRzd2l0Y2gtdGh1bWItcGFkZGluZztcbiAgICAgICAgICAgIGxlZnQ6ICRzd2l0Y2gtdGh1bWItcGFkZGluZztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7JHN3aXRjaC1oZWlnaHR9IC0gY2FsYygjeyRzd2l0Y2gtdGh1bWItcGFkZGluZ30gKiAyKSk7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoI3skc3dpdGNoLWhlaWdodH0gLSBjYWxjKCN7JHN3aXRjaC10aHVtYi1wYWRkaW5nfSAqIDIpKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtdGh1bWItYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtdGh1bWItYmc7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkc3dpdGNoLXRyYW5zaXRpb247XG4gICAgICAgIH1cblxuICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtY2hlY2tlZC1iZztcbiAgICAgICAgfVxuXG4gICAgICAgICY6Y2hlY2tlZCArIGxhYmVsOjphZnRlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJHN3aXRjaC1oZWlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogJHN3aXRjaC1mb2N1cy1ib3gtc2hhZG93O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCArIGxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc3dpdGNoLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtZGlzYWJsZWQtYmc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTbWFsbCB2YXJpYXRpb25cbiAgICAmLnN3aXRjaC1zbSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGNhbGMoI3skc3dpdGNoLWhlaWdodC1zbX0gKiAyKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0LXNtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkc3dpdGNoLWhlaWdodC1zbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogY2FsYyhjYWxjKCN7JHN3aXRjaC1oZWlnaHQtc219ICogMikgKyAuNXJlbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoI3skc3dpdGNoLWhlaWdodC1zbX0gKiAyKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgKyBsYWJlbDo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7JHN3aXRjaC1oZWlnaHQtc219IC0gY2FsYygjeyRzd2l0Y2gtdGh1bWItcGFkZGluZ30gKiAyKSk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKCN7JHN3aXRjaC1oZWlnaHQtc219IC0gY2FsYygjeyRzd2l0Y2gtdGh1bWItcGFkZGluZ30gKiAyKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Y2hlY2tlZCArIGxhYmVsOjphZnRlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRzd2l0Y2gtaGVpZ2h0LXNtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGFyZ2UgdmFyaWF0aW9uXG4gICAgJi5zd2l0Y2gtbGcge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiBjYWxjKCN7JHN3aXRjaC1oZWlnaHQtbGd9ICogMik7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodC1sZztcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJHN3aXRjaC1oZWlnaHQtbGc7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IGNhbGMoY2FsYygjeyRzd2l0Y2gtaGVpZ2h0LWxnfSAqIDIpICsgLjVyZW0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7JHN3aXRjaC1oZWlnaHQtbGd9ICogMik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICsgbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygjeyRzd2l0Y2gtaGVpZ2h0LWxnfSAtIGNhbGMoI3skc3dpdGNoLXRodW1iLXBhZGRpbmd9ICogMikpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygjeyRzd2l0Y2gtaGVpZ2h0LWxnfSAtIGNhbGMoI3skc3dpdGNoLXRodW1iLXBhZGRpbmd9ICogMikpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc3dpdGNoLWhlaWdodC1sZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICsgLnN3aXRjaCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/