@charset "UTF-8";
@font-face {
  font-family: "Montserrat";
  src: url(/build/fonts/Montserrat-Regular.3cd78665.ttf);
  font-display: swap;
}
@font-face {
  font-family: "Montserrat-Bold";
  src: url(/build/fonts/Montserrat-Bold.079ca05d.ttf);
  font-display: swap;
}
@font-face {
  font-family: "NunitoSans";
  src: url(/build/fonts/NunitoSans-Regular.87d92665.ttf);
  font-display: swap;
}
@font-face {
  font-family: "NunitoSans-Bold";
  src: url(/build/fonts/NunitoSans-Bold.8268666c.ttf);
  font-display: swap;
}
@font-face {
  font-family: "Sniglet";
  src: url(/build/fonts/Sniglet-Regular.0bcd239e.ttf);
  font-display: swap;
}
@font-face {
  font-family: "OpenSans";
  src: url(/build/fonts/OpenSans-Regular.b8cc747a.ttf);
  font-display: swap;
}
@font-face {
  font-family: "OpenSans-Light";
  src: url(/build/fonts/OpenSans-Light.9405e3d0.ttf);
  font-display: swap;
}
@font-face {
  font-family: "OpenSans-Bold";
  src: url(/build/fonts/OpenSans-Bold.c790f999.ttf);
  font-display: swap;
}
@font-face {
  font-family: "opendyslexic";
  src: url(/build/fonts/OpenDyslexic-Regular.59a86b21.otf);
  font-style: normal;
  font-weight: normal;
  font-display: swap;
}
@font-face {
  font-family: "opendyslexic";
  src: url(/build/fonts/OpenDyslexic-Italic.5ff9ce0d.otf);
  font-style: italic;
  font-weight: normal;
  font-display: swap;
}
@font-face {
  font-family: "opendyslexic";
  src: url(/build/fonts/OpenDyslexic-Bold.1082cfdb.otf);
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "opendyslexic";
  src: url(/build/fonts/OpenDyslexic-BoldItalic.51781d5c.otf);
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}
/*!
 * 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: #23307e;
  --secondary: #F35B04;
  --success: #07B55B;
  --info: #097DE2;
  --warning: #FFB405;
  --danger: #E03128;
  --light: #C3CAD9;
  --dark: #333333;
  --fake-white: #F5F5F5;
  --xtremlight: #F3F3F9;
  --extralight: #E6E6E6;
  --extramedium: #444444;
  --title: #2E3333;
  --facebook: #176CF1;
  --turquoise: #3574a5;
  --medium: #8e8e8e;
  --purple: #e3e4fc;
  --purple-shadow: #7b7eb5;
  --course-fr: #e5f2fc;
  --trophy-unknow: #cd0000;
  --trophy-bronze: #614E1A;
  --trophy-silver: #DADADA;
  --trophy-gold: #D79A10;
  --trophy-jade: #85B83F;
  --bluesky: #7FBDF2;
  --darklight: #707070;
  --extradark: #1C1C1C;
  --pro-primary: #ec4a72;
  --pro-secondary: #7f6ce3;
  --pro-medium: #aeb1bb;
  --light-purple: #a29bfe;
  --dark-purple: #6c62e7;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --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: #fff;
}

[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: 0.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: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #23307e;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: rgb(18.3695652174, 25.1925465839, 66.1304347826);
  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: 0.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: "— ";
}

.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-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
.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-xl,
.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg,
.col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md,
.col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm,
.col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col,
.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
  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.3333333333%;
  max-width: 33.3333333333%;
}

.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.6666666667%;
  max-width: 16.6666666667%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@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.3333333333%;
    max-width: 33.3333333333%;
  }
  .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.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-sm-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .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.33333333%;
  }
  .offset-sm-2 {
    margin-left: 16.66666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333333%;
  }
  .offset-sm-5 {
    margin-left: 41.66666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333333%;
  }
  .offset-sm-8 {
    margin-left: 66.66666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333333%;
  }
  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
}
@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.3333333333%;
    max-width: 33.3333333333%;
  }
  .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.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-md-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-md-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-md-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .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.33333333%;
  }
  .offset-md-2 {
    margin-left: 16.66666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333333%;
  }
  .offset-md-5 {
    margin-left: 41.66666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333333%;
  }
  .offset-md-8 {
    margin-left: 66.66666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333333%;
  }
  .offset-md-11 {
    margin-left: 91.66666667%;
  }
}
@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.3333333333%;
    max-width: 33.3333333333%;
  }
  .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.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-lg-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-lg-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-lg-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-lg-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .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.33333333%;
  }
  .offset-lg-2 {
    margin-left: 16.66666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333333%;
  }
  .offset-lg-5 {
    margin-left: 41.66666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333333%;
  }
  .offset-lg-8 {
    margin-left: 66.66666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333333%;
  }
  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
}
@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.3333333333%;
    max-width: 33.3333333333%;
  }
  .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.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-xl-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-xl-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-xl-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-xl-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .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.33333333%;
  }
  .offset-xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
}
.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: rgb(193.4, 197.04, 218.88);
}
.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: rgb(140.6, 147.36, 187.92);
}

.table-hover .table-primary:hover {
  background-color: rgb(177.3255014327, 181.9153581662, 209.4544985673);
}
.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: rgb(177.3255014327, 181.9153581662, 209.4544985673);
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: rgb(251.64, 209.08, 184.72);
}
.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: rgb(248.76, 169.72, 124.48);
}

.table-hover .table-secondary:hover {
  background-color: rgb(250.4765019011, 193.1788593156, 160.3834980989);
}
.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: rgb(250.4765019011, 193.1788593156, 160.3834980989);
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: rgb(185.56, 234.28, 209.08);
}
.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: rgb(126.04, 216.52, 169.72);
}

.table-hover .table-success:hover {
  background-color: rgb(165.9202484472, 228.4197515528, 196.0924223602);
}
.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: rgb(165.9202484472, 228.4197515528, 196.0924223602);
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: rgb(186.12, 218.6, 246.88);
}
.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: rgb(127.08, 187.4, 239.92);
}

.table-hover .table-info:hover {
  background-color: rgb(163.3090909091, 206.5454545455, 244.1909090909);
}
.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: rgb(163.3090909091, 206.5454545455, 244.1909090909);
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeab9;
}
.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffd87d;
}

.table-hover .table-warning:hover {
  background-color: rgb(255, 226.35, 159.5);
}
.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: rgb(255, 226.35, 159.5);
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: rgb(246.32, 197.32, 194.8);
}
.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: rgb(238.88, 147.88, 143.2);
}

.table-hover .table-danger:hover {
  background-color: rgb(243.1065853659, 175.9663414634, 172.5134146341);
}
.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: rgb(243.1065853659, 175.9663414634, 172.5134146341);
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: rgb(238.2, 240.16, 244.36);
}
.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: rgb(223.8, 227.44, 235.24);
}

.table-hover .table-light:hover {
  background-color: rgb(222.587755102, 226.3691836735, 234.472244898);
}
.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: rgb(222.587755102, 226.3691836735, 234.472244898);
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: rgb(197.88, 197.88, 197.88);
}
.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: rgb(148.92, 148.92, 148.92);
}

.table-hover .table-dark:hover {
  background-color: rgb(185.13, 185.13, 185.13);
}
.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: rgb(185.13, 185.13, 185.13);
}

.table-fake-white,
.table-fake-white > th,
.table-fake-white > td {
  background-color: rgb(252.2, 252.2, 252.2);
}
.table-fake-white th,
.table-fake-white td,
.table-fake-white thead th,
.table-fake-white tbody + tbody {
  border-color: rgb(249.8, 249.8, 249.8);
}

.table-hover .table-fake-white:hover {
  background-color: rgb(239.45, 239.45, 239.45);
}
.table-hover .table-fake-white:hover > td,
.table-hover .table-fake-white:hover > th {
  background-color: rgb(239.45, 239.45, 239.45);
}

.table-xtremlight,
.table-xtremlight > th,
.table-xtremlight > td {
  background-color: rgb(251.64, 251.64, 253.32);
}
.table-xtremlight th,
.table-xtremlight td,
.table-xtremlight thead th,
.table-xtremlight tbody + tbody {
  border-color: rgb(248.76, 248.76, 251.88);
}

.table-hover .table-xtremlight:hover {
  background-color: rgb(234.64, 234.64, 244.82);
}
.table-hover .table-xtremlight:hover > td,
.table-hover .table-xtremlight:hover > th {
  background-color: rgb(234.64, 234.64, 244.82);
}

.table-extralight,
.table-extralight > th,
.table-extralight > td {
  background-color: #f8f8f8;
}
.table-extralight th,
.table-extralight td,
.table-extralight thead th,
.table-extralight tbody + tbody {
  border-color: #f2f2f2;
}

.table-hover .table-extralight:hover {
  background-color: rgb(235.25, 235.25, 235.25);
}
.table-hover .table-extralight:hover > td,
.table-hover .table-extralight:hover > th {
  background-color: rgb(235.25, 235.25, 235.25);
}

.table-extramedium,
.table-extramedium > th,
.table-extramedium > td {
  background-color: rgb(202.64, 202.64, 202.64);
}
.table-extramedium th,
.table-extramedium td,
.table-extramedium thead th,
.table-extramedium tbody + tbody {
  border-color: rgb(157.76, 157.76, 157.76);
}

.table-hover .table-extramedium:hover {
  background-color: rgb(189.89, 189.89, 189.89);
}
.table-hover .table-extramedium:hover > td,
.table-hover .table-extramedium:hover > th {
  background-color: rgb(189.89, 189.89, 189.89);
}

.table-title,
.table-title > th,
.table-title > td {
  background-color: rgb(196.48, 197.88, 197.88);
}
.table-title th,
.table-title td,
.table-title thead th,
.table-title tbody + tbody {
  border-color: rgb(146.32, 148.92, 148.92);
}

.table-hover .table-title:hover {
  background-color: rgb(183.5756416465, 185.2843583535, 185.2843583535);
}
.table-hover .table-title:hover > td,
.table-hover .table-title:hover > th {
  background-color: rgb(183.5756416465, 185.2843583535, 185.2843583535);
}

.table-facebook,
.table-facebook > th,
.table-facebook > td {
  background-color: rgb(190.04, 213.84, 251.08);
}
.table-facebook th,
.table-facebook td,
.table-facebook thead th,
.table-facebook tbody + tbody {
  border-color: rgb(134.36, 178.56, 247.72);
}

.table-hover .table-facebook:hover {
  background-color: rgb(165.9912195122, 198.602195122, 249.6287804878);
}
.table-hover .table-facebook:hover > td,
.table-hover .table-facebook:hover > th {
  background-color: rgb(165.9912195122, 198.602195122, 249.6287804878);
}

.table-turquoise,
.table-turquoise > th,
.table-turquoise > td {
  background-color: rgb(198.44, 216.08, 229.8);
}
.table-turquoise th,
.table-turquoise td,
.table-turquoise thead th,
.table-turquoise tbody + tbody {
  border-color: rgb(149.96, 182.72, 208.2);
}

.table-hover .table-turquoise:hover {
  background-color: rgb(180.7995890411, 203.9413013699, 221.9404109589);
}
.table-hover .table-turquoise:hover > td,
.table-hover .table-turquoise:hover > th {
  background-color: rgb(180.7995890411, 203.9413013699, 221.9404109589);
}

.table-medium,
.table-medium > th,
.table-medium > td {
  background-color: rgb(223.36, 223.36, 223.36);
}
.table-medium th,
.table-medium td,
.table-medium thead th,
.table-medium tbody + tbody {
  border-color: rgb(196.24, 196.24, 196.24);
}

.table-hover .table-medium:hover {
  background-color: rgb(210.61, 210.61, 210.61);
}
.table-hover .table-medium:hover > td,
.table-hover .table-medium:hover > th {
  background-color: rgb(210.61, 210.61, 210.61);
}

.table-purple,
.table-purple > th,
.table-purple > td {
  background-color: rgb(247.16, 247.44, 254.16);
}
.table-purple th,
.table-purple td,
.table-purple thead th,
.table-purple tbody + tbody {
  border-color: rgb(240.44, 240.96, 253.44);
}

.table-hover .table-purple:hover {
  background-color: rgb(224.1277419355, 225.2303225806, 251.6922580645);
}
.table-hover .table-purple:hover > td,
.table-hover .table-purple:hover > th {
  background-color: rgb(224.1277419355, 225.2303225806, 251.6922580645);
}

.table-purple-shadow,
.table-purple-shadow > th,
.table-purple-shadow > td {
  background-color: rgb(218.04, 218.88, 234.28);
}
.table-purple-shadow th,
.table-purple-shadow td,
.table-purple-shadow thead th,
.table-purple-shadow tbody + tbody {
  border-color: rgb(186.36, 187.92, 216.52);
}

.table-hover .table-purple-shadow:hover {
  background-color: rgb(201.7001941748, 202.9115533981, 225.1198058252);
}
.table-hover .table-purple-shadow:hover > td,
.table-hover .table-purple-shadow:hover > th {
  background-color: rgb(201.7001941748, 202.9115533981, 225.1198058252);
}

.table-course-fr,
.table-course-fr > th,
.table-course-fr > td {
  background-color: rgb(247.72, 251.36, 254.16);
}
.table-course-fr th,
.table-course-fr td,
.table-course-fr thead th,
.table-course-fr tbody + tbody {
  border-color: rgb(241.48, 248.24, 253.44);
}

.table-hover .table-course-fr:hover {
  background-color: rgb(224.8579310345, 239.9289655172, 251.5220689655);
}
.table-hover .table-course-fr:hover > td,
.table-hover .table-course-fr:hover > th {
  background-color: rgb(224.8579310345, 239.9289655172, 251.5220689655);
}

.table-trophy-unknow,
.table-trophy-unknow > th,
.table-trophy-unknow > td {
  background-color: rgb(241, 183.6, 183.6);
}
.table-trophy-unknow th,
.table-trophy-unknow td,
.table-trophy-unknow thead th,
.table-trophy-unknow tbody + tbody {
  border-color: rgb(229, 122.4, 122.4);
}

.table-hover .table-trophy-unknow:hover {
  background-color: rgb(236.8196721311, 162.2803278689, 162.2803278689);
}
.table-hover .table-trophy-unknow:hover > td,
.table-hover .table-trophy-unknow:hover > th {
  background-color: rgb(236.8196721311, 162.2803278689, 162.2803278689);
}

.table-trophy-bronze,
.table-trophy-bronze > th,
.table-trophy-bronze > td {
  background-color: rgb(210.76, 205.44, 190.88);
}
.table-trophy-bronze th,
.table-trophy-bronze td,
.table-trophy-bronze thead th,
.table-trophy-bronze tbody + tbody {
  border-color: rgb(172.84, 162.96, 135.92);
}

.table-hover .table-trophy-bronze:hover {
  background-color: rgb(200.3491472868, 193.7772093023, 175.7908527132);
}
.table-hover .table-trophy-bronze:hover > td,
.table-hover .table-trophy-bronze:hover > th {
  background-color: rgb(200.3491472868, 193.7772093023, 175.7908527132);
}

.table-trophy-silver,
.table-trophy-silver > th,
.table-trophy-silver > td {
  background-color: rgb(244.64, 244.64, 244.64);
}
.table-trophy-silver th,
.table-trophy-silver td,
.table-trophy-silver thead th,
.table-trophy-silver tbody + tbody {
  border-color: rgb(235.76, 235.76, 235.76);
}

.table-hover .table-trophy-silver:hover {
  background-color: rgb(231.89, 231.89, 231.89);
}
.table-hover .table-trophy-silver:hover > td,
.table-hover .table-trophy-silver:hover > th {
  background-color: rgb(231.89, 231.89, 231.89);
}

.table-trophy-gold,
.table-trophy-gold > th,
.table-trophy-gold > td {
  background-color: rgb(243.8, 226.72, 188.08);
}
.table-trophy-gold th,
.table-trophy-gold td,
.table-trophy-gold thead th,
.table-trophy-gold tbody + tbody {
  border-color: rgb(234.2, 202.48, 130.72);
}

.table-hover .table-trophy-gold:hover {
  background-color: rgb(240.1440860215, 217.4888172043, 166.2359139785);
}
.table-hover .table-trophy-gold:hover > td,
.table-hover .table-trophy-gold:hover > th {
  background-color: rgb(240.1440860215, 217.4888172043, 166.2359139785);
}

.table-trophy-jade,
.table-trophy-jade > th,
.table-trophy-jade > td {
  background-color: rgb(220.84, 235.12, 201.24);
}
.table-trophy-jade th,
.table-trophy-jade td,
.table-trophy-jade thead th,
.table-trophy-jade tbody + tbody {
  border-color: rgb(191.56, 218.08, 155.16);
}

.table-hover .table-trophy-jade:hover {
  background-color: rgb(209.0111026616, 228.2359695817, 182.6240304183);
}
.table-hover .table-trophy-jade:hover > td,
.table-hover .table-trophy-jade:hover > th {
  background-color: rgb(209.0111026616, 228.2359695817, 182.6240304183);
}

.table-bluesky,
.table-bluesky > th,
.table-bluesky > td {
  background-color: rgb(219.16, 236.52, 251.36);
}
.table-bluesky th,
.table-bluesky td,
.table-bluesky thead th,
.table-bluesky tbody + tbody {
  border-color: rgb(188.44, 220.68, 248.24);
}

.table-hover .table-bluesky:hover {
  background-color: rgb(196.0110638298, 224.5838297872, 249.0089361702);
}
.table-hover .table-bluesky:hover > td,
.table-hover .table-bluesky:hover > th {
  background-color: rgb(196.0110638298, 224.5838297872, 249.0089361702);
}

.table-darklight,
.table-darklight > th,
.table-darklight > td {
  background-color: rgb(214.96, 214.96, 214.96);
}
.table-darklight th,
.table-darklight td,
.table-darklight thead th,
.table-darklight tbody + tbody {
  border-color: rgb(180.64, 180.64, 180.64);
}

.table-hover .table-darklight:hover {
  background-color: rgb(202.21, 202.21, 202.21);
}
.table-hover .table-darklight:hover > td,
.table-hover .table-darklight:hover > th {
  background-color: rgb(202.21, 202.21, 202.21);
}

.table-extradark,
.table-extradark > th,
.table-extradark > td {
  background-color: rgb(191.44, 191.44, 191.44);
}
.table-extradark th,
.table-extradark td,
.table-extradark thead th,
.table-extradark tbody + tbody {
  border-color: rgb(136.96, 136.96, 136.96);
}

.table-hover .table-extradark:hover {
  background-color: rgb(178.69, 178.69, 178.69);
}
.table-hover .table-extradark:hover > td,
.table-hover .table-extradark:hover > th {
  background-color: rgb(178.69, 178.69, 178.69);
}

.table-pro-primary,
.table-pro-primary > th,
.table-pro-primary > td {
  background-color: rgb(249.68, 204.32, 215.52);
}
.table-pro-primary th,
.table-pro-primary td,
.table-pro-primary thead th,
.table-pro-primary tbody + tbody {
  border-color: rgb(245.12, 160.88, 181.68);
}

.table-hover .table-pro-primary:hover {
  background-color: rgb(247.2575, 181.2425, 197.5425);
}
.table-hover .table-pro-primary:hover > td,
.table-hover .table-pro-primary:hover > th {
  background-color: rgb(247.2575, 181.2425, 197.5425);
}

.table-pro-secondary,
.table-pro-secondary > th,
.table-pro-secondary > td {
  background-color: rgb(219.16, 213.84, 247.16);
}
.table-pro-secondary th,
.table-pro-secondary td,
.table-pro-secondary thead th,
.table-pro-secondary tbody + tbody {
  border-color: rgb(188.44, 178.56, 240.44);
}

.table-hover .table-pro-secondary:hover {
  background-color: rgb(200.5085714286, 192.42, 243.08);
}
.table-hover .table-pro-secondary:hover > td,
.table-hover .table-pro-secondary:hover > th {
  background-color: rgb(200.5085714286, 192.42, 243.08);
}

.table-pro-medium,
.table-pro-medium > th,
.table-pro-medium > td {
  background-color: rgb(232.32, 233.16, 235.96);
}
.table-pro-medium th,
.table-pro-medium td,
.table-pro-medium thead th,
.table-pro-medium tbody + tbody {
  border-color: rgb(212.88, 214.44, 219.64);
}

.table-hover .table-pro-medium:hover {
  background-color: rgb(218.4575838926, 219.8110067114, 224.3224161074);
}
.table-hover .table-pro-medium:hover > td,
.table-hover .table-pro-medium:hover > th {
  background-color: rgb(218.4575838926, 219.8110067114, 224.3224161074);
}

.table-light-purple,
.table-light-purple > th,
.table-light-purple > td {
  background-color: rgb(228.96, 227, 254.72);
}
.table-light-purple th,
.table-light-purple td,
.table-light-purple thead th,
.table-light-purple tbody + tbody {
  border-color: rgb(206.64, 203, 254.48);
}

.table-hover .table-light-purple:hover {
  background-color: rgb(205.4798019802, 201.7524752475, 254.4675247525);
}
.table-hover .table-light-purple:hover > td,
.table-hover .table-light-purple:hover > th {
  background-color: rgb(205.4798019802, 201.7524752475, 254.4675247525);
}

.table-dark-purple,
.table-dark-purple > th,
.table-dark-purple > td {
  background-color: rgb(213.84, 211.04, 248.28);
}
.table-dark-purple th,
.table-dark-purple td,
.table-dark-purple thead th,
.table-dark-purple tbody + tbody {
  border-color: rgb(178.56, 173.36, 242.52);
}

.table-hover .table-dark-purple:hover {
  background-color: rgb(193.1300552486, 188.9212154696, 244.8987845304);
}
.table-hover .table-dark-purple:hover > td,
.table-hover .table-dark-purple:hover > th {
  background-color: rgb(193.1300552486, 188.9212154696, 244.8987845304);
}

.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: rgb(69.1465517241, 77.125, 85.1034482759);
}
.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: rgb(69.1465517241, 77.125, 85.1034482759);
}
.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;
  }
}
.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: rgb(81.652173913, 99.5372670807, 206.847826087);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(35, 48, 126, 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: #07B55B;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(7, 181, 91, 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: #07B55B;
  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='%2307B55B' 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: #07B55B;
  box-shadow: 0 0 0 0.2rem rgba(7, 181, 91, 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: #07B55B;
  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='%2307B55B' 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: #07B55B;
  box-shadow: 0 0 0 0.2rem rgba(7, 181, 91, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #07B55B;
}
.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: #07B55B;
}
.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #07B55B;
}
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: rgb(8.8989361702, 230.1010638298, 115.6861702128);
  background-color: rgb(8.8989361702, 230.1010638298, 115.6861702128);
}
.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(7, 181, 91, 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: #07B55B;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #07B55B;
}
.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #07B55B;
  box-shadow: 0 0 0 0.2rem rgba(7, 181, 91, 0.25);
}

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

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(224, 49, 40, 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: #E03128;
  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='%23E03128' 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='%23E03128' 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: #E03128;
  box-shadow: 0 0 0 0.2rem rgba(224, 49, 40, 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: #E03128;
  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='%23E03128' 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='%23E03128' 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: #E03128;
  box-shadow: 0 0 0 0.2rem rgba(224, 49, 40, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #E03128;
}
.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: #E03128;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #E03128;
}
.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: rgb(230.4268292683, 91.7073170732, 84.5731707317);
  background-color: rgb(230.4268292683, 91.7073170732, 84.5731707317);
}
.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(224, 49, 40, 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: #E03128;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #E03128;
}
.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #E03128;
  box-shadow: 0 0 0 0.2rem rgba(224, 49, 40, 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(35, 48, 126, 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: #23307e;
  border-color: #23307e;
}
.btn-primary:hover {
  color: #fff;
  background-color: rgb(26.6847826087, 36.5962732919, 96.0652173913);
  border-color: rgb(23.9130434783, 32.7950310559, 86.0869565217);
}
.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: rgb(26.6847826087, 36.5962732919, 96.0652173913);
  border-color: rgb(23.9130434783, 32.7950310559, 86.0869565217);
  box-shadow: 0 0 0 0.2rem rgba(68, 79.05, 145.35, 0.5);
}
.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #23307e;
  border-color: #23307e;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: rgb(23.9130434783, 32.7950310559, 86.0869565217);
  border-color: rgb(21.1413043478, 28.9937888199, 76.1086956522);
}
.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(68, 79.05, 145.35, 0.5);
}

.btn-secondary {
  color: #fff;
  background-color: #F35B04;
  border-color: #F35B04;
}
.btn-secondary:hover {
  color: #fff;
  background-color: rgb(205.3694331984, 76.9078947368, 3.3805668016);
  border-color: rgb(192.8259109312, 72.2105263158, 3.1740890688);
}
.btn-secondary:focus, .btn-secondary.focus {
  color: #fff;
  background-color: rgb(205.3694331984, 76.9078947368, 3.3805668016);
  border-color: rgb(192.8259109312, 72.2105263158, 3.1740890688);
  box-shadow: 0 0 0 0.2rem rgba(244.8, 115.6, 41.65, 0.5);
}
.btn-secondary.disabled, .btn-secondary:disabled {
  color: #fff;
  background-color: #F35B04;
  border-color: #F35B04;
}
.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: rgb(192.8259109312, 72.2105263158, 3.1740890688);
  border-color: rgb(180.282388664, 67.5131578947, 2.967611336);
}
.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(244.8, 115.6, 41.65, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #07B55B;
  border-color: #07B55B;
}
.btn-success:hover {
  color: #fff;
  background-color: rgb(5.5757978723, 144.1742021277, 72.4853723404);
  border-color: rgb(5.1010638298, 131.8989361702, 66.3138297872);
}
.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: rgb(5.5757978723, 144.1742021277, 72.4853723404);
  border-color: rgb(5.1010638298, 131.8989361702, 66.3138297872);
  box-shadow: 0 0 0 0.2rem rgba(44.2, 192.1, 115.6, 0.5);
}
.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #07B55B;
  border-color: #07B55B;
}
.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: rgb(5.1010638298, 131.8989361702, 66.3138297872);
  border-color: rgb(4.6263297872, 119.6236702128, 60.142287234);
}
.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(44.2, 192.1, 115.6, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #097DE2;
  border-color: #097DE2;
}
.btn-info:hover {
  color: #fff;
  background-color: rgb(7.535106383, 104.6542553191, 189.214893617);
  border-color: rgb(7.0468085106, 97.8723404255, 176.9531914894);
}
.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: rgb(7.535106383, 104.6542553191, 189.214893617);
  border-color: rgb(7.0468085106, 97.8723404255, 176.9531914894);
  box-shadow: 0 0 0 0.2rem rgba(45.9, 144.5, 230.35, 0.5);
}
.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #097DE2;
  border-color: #097DE2;
}
.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: rgb(7.0468085106, 97.8723404255, 176.9531914894);
  border-color: rgb(6.5585106383, 91.0904255319, 164.6914893617);
}
.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(45.9, 144.5, 230.35, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #FFB405;
  border-color: #FFB405;
}
.btn-warning:hover {
  color: #212529;
  background-color: rgb(221.75, 155.225, 0);
  border-color: rgb(209, 146.3, 0);
}
.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: rgb(221.75, 155.225, 0);
  border-color: rgb(209, 146.3, 0);
  box-shadow: 0 0 0 0.2rem rgba(221.7, 158.55, 10.4, 0.5);
}
.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #FFB405;
  border-color: #FFB405;
}
.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: rgb(209, 146.3, 0);
  border-color: rgb(196.25, 137.375, 0);
}
.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(221.7, 158.55, 10.4, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #E03128;
  border-color: #E03128;
}
.btn-danger:hover {
  color: #fff;
  background-color: rgb(197.3018292683, 36.7073170732, 28.4481707317);
  border-color: rgb(186.1585365854, 34.6341463415, 26.8414634146);
}
.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: rgb(197.3018292683, 36.7073170732, 28.4481707317);
  border-color: rgb(186.1585365854, 34.6341463415, 26.8414634146);
  box-shadow: 0 0 0 0.2rem rgba(228.65, 79.9, 72.25, 0.5);
}
.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #E03128;
  border-color: #E03128;
}
.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: rgb(186.1585365854, 34.6341463415, 26.8414634146);
  border-color: rgb(175.0152439024, 32.5609756098, 25.2347560976);
}
.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(228.65, 79.9, 72.25, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #C3CAD9;
  border-color: #C3CAD9;
}
.btn-light:hover {
  color: #212529;
  background-color: rgb(171.5816326531, 181.3137755102, 202.1683673469);
  border-color: rgb(163.7755102041, 174.4183673469, 197.2244897959);
}
.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: rgb(171.5816326531, 181.3137755102, 202.1683673469);
  border-color: rgb(163.7755102041, 174.4183673469, 197.2244897959);
  box-shadow: 0 0 0 0.2rem rgba(170.7, 177.25, 190.6, 0.5);
}
.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #C3CAD9;
  border-color: #C3CAD9;
}
.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: rgb(163.7755102041, 174.4183673469, 197.2244897959);
  border-color: rgb(155.9693877551, 167.5229591837, 192.2806122449);
}
.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(170.7, 177.25, 190.6, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #333333;
  border-color: #333333;
}
.btn-dark:hover {
  color: #fff;
  background-color: rgb(31.875, 31.875, 31.875);
  border-color: rgb(25.5, 25.5, 25.5);
}
.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: rgb(31.875, 31.875, 31.875);
  border-color: rgb(25.5, 25.5, 25.5);
  box-shadow: 0 0 0 0.2rem rgba(81.6, 81.6, 81.6, 0.5);
}
.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #333333;
  border-color: #333333;
}
.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: rgb(25.5, 25.5, 25.5);
  border-color: rgb(19.125, 19.125, 19.125);
}
.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(81.6, 81.6, 81.6, 0.5);
}

.btn-fake-white {
  color: #212529;
  background-color: #F5F5F5;
  border-color: #F5F5F5;
}
.btn-fake-white:hover {
  color: #212529;
  background-color: rgb(225.875, 225.875, 225.875);
  border-color: rgb(219.5, 219.5, 219.5);
}
.btn-fake-white:focus, .btn-fake-white.focus {
  color: #212529;
  background-color: rgb(225.875, 225.875, 225.875);
  border-color: rgb(219.5, 219.5, 219.5);
  box-shadow: 0 0 0 0.2rem rgba(213.2, 213.8, 214.4, 0.5);
}
.btn-fake-white.disabled, .btn-fake-white:disabled {
  color: #212529;
  background-color: #F5F5F5;
  border-color: #F5F5F5;
}
.btn-fake-white:not(:disabled):not(.disabled):active, .btn-fake-white:not(:disabled):not(.disabled).active, .show > .btn-fake-white.dropdown-toggle {
  color: #212529;
  background-color: rgb(219.5, 219.5, 219.5);
  border-color: rgb(213.125, 213.125, 213.125);
}
.btn-fake-white:not(:disabled):not(.disabled):active:focus, .btn-fake-white:not(:disabled):not(.disabled).active:focus, .show > .btn-fake-white.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(213.2, 213.8, 214.4, 0.5);
}

.btn-xtremlight {
  color: #212529;
  background-color: #F3F3F9;
  border-color: #F3F3F9;
}
.btn-xtremlight:hover {
  color: #212529;
  background-color: rgb(217.5, 217.5, 236.25);
  border-color: #d1d1e8;
}
.btn-xtremlight:focus, .btn-xtremlight.focus {
  color: #212529;
  background-color: rgb(217.5, 217.5, 236.25);
  border-color: #d1d1e8;
  box-shadow: 0 0 0 0.2rem rgba(211.5, 212.1, 217.8, 0.5);
}
.btn-xtremlight.disabled, .btn-xtremlight:disabled {
  color: #212529;
  background-color: #F3F3F9;
  border-color: #F3F3F9;
}
.btn-xtremlight:not(:disabled):not(.disabled):active, .btn-xtremlight:not(:disabled):not(.disabled).active, .show > .btn-xtremlight.dropdown-toggle {
  color: #212529;
  background-color: #d1d1e8;
  border-color: rgb(200.5, 200.5, 227.75);
}
.btn-xtremlight:not(:disabled):not(.disabled):active:focus, .btn-xtremlight:not(:disabled):not(.disabled).active:focus, .show > .btn-xtremlight.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(211.5, 212.1, 217.8, 0.5);
}

.btn-extralight {
  color: #212529;
  background-color: #E6E6E6;
  border-color: #E6E6E6;
}
.btn-extralight:hover {
  color: #212529;
  background-color: rgb(210.875, 210.875, 210.875);
  border-color: rgb(204.5, 204.5, 204.5);
}
.btn-extralight:focus, .btn-extralight.focus {
  color: #212529;
  background-color: rgb(210.875, 210.875, 210.875);
  border-color: rgb(204.5, 204.5, 204.5);
  box-shadow: 0 0 0 0.2rem rgba(200.45, 201.05, 201.65, 0.5);
}
.btn-extralight.disabled, .btn-extralight:disabled {
  color: #212529;
  background-color: #E6E6E6;
  border-color: #E6E6E6;
}
.btn-extralight:not(:disabled):not(.disabled):active, .btn-extralight:not(:disabled):not(.disabled).active, .show > .btn-extralight.dropdown-toggle {
  color: #212529;
  background-color: rgb(204.5, 204.5, 204.5);
  border-color: rgb(198.125, 198.125, 198.125);
}
.btn-extralight:not(:disabled):not(.disabled):active:focus, .btn-extralight:not(:disabled):not(.disabled).active:focus, .show > .btn-extralight.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(200.45, 201.05, 201.65, 0.5);
}

.btn-extramedium {
  color: #fff;
  background-color: #444444;
  border-color: #444444;
}
.btn-extramedium:hover {
  color: #fff;
  background-color: rgb(48.875, 48.875, 48.875);
  border-color: rgb(42.5, 42.5, 42.5);
}
.btn-extramedium:focus, .btn-extramedium.focus {
  color: #fff;
  background-color: rgb(48.875, 48.875, 48.875);
  border-color: rgb(42.5, 42.5, 42.5);
  box-shadow: 0 0 0 0.2rem rgba(96.05, 96.05, 96.05, 0.5);
}
.btn-extramedium.disabled, .btn-extramedium:disabled {
  color: #fff;
  background-color: #444444;
  border-color: #444444;
}
.btn-extramedium:not(:disabled):not(.disabled):active, .btn-extramedium:not(:disabled):not(.disabled).active, .show > .btn-extramedium.dropdown-toggle {
  color: #fff;
  background-color: rgb(42.5, 42.5, 42.5);
  border-color: rgb(36.125, 36.125, 36.125);
}
.btn-extramedium:not(:disabled):not(.disabled):active:focus, .btn-extramedium:not(:disabled):not(.disabled).active:focus, .show > .btn-extramedium.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(96.05, 96.05, 96.05, 0.5);
}

.btn-title {
  color: #fff;
  background-color: #2E3333;
  border-color: #2E3333;
}
.btn-title:hover {
  color: #fff;
  background-color: rgb(27.8608247423, 30.8891752577, 30.8891752577);
  border-color: rgb(21.8144329897, 24.1855670103, 24.1855670103);
}
.btn-title:focus, .btn-title.focus {
  color: #fff;
  background-color: rgb(27.8608247423, 30.8891752577, 30.8891752577);
  border-color: rgb(21.8144329897, 24.1855670103, 24.1855670103);
  box-shadow: 0 0 0 0.2rem rgba(77.35, 81.6, 81.6, 0.5);
}
.btn-title.disabled, .btn-title:disabled {
  color: #fff;
  background-color: #2E3333;
  border-color: #2E3333;
}
.btn-title:not(:disabled):not(.disabled):active, .btn-title:not(:disabled):not(.disabled).active, .show > .btn-title.dropdown-toggle {
  color: #fff;
  background-color: rgb(21.8144329897, 24.1855670103, 24.1855670103);
  border-color: rgb(15.7680412371, 17.4819587629, 17.4819587629);
}
.btn-title:not(:disabled):not(.disabled):active:focus, .btn-title:not(:disabled):not(.disabled).active:focus, .show > .btn-title.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(77.35, 81.6, 81.6, 0.5);
}

.btn-facebook {
  color: #fff;
  background-color: #176CF1;
  border-color: #176CF1;
}
.btn-facebook:hover {
  color: #fff;
  background-color: rgb(12.8475609756, 90.8506097561, 212.9024390244);
  border-color: rgb(12.1219512195, 85.7195121951, 200.8780487805);
}
.btn-facebook:focus, .btn-facebook.focus {
  color: #fff;
  background-color: rgb(12.8475609756, 90.8506097561, 212.9024390244);
  border-color: rgb(12.1219512195, 85.7195121951, 200.8780487805);
  box-shadow: 0 0 0 0.2rem rgba(57.8, 130.05, 243.1, 0.5);
}
.btn-facebook.disabled, .btn-facebook:disabled {
  color: #fff;
  background-color: #176CF1;
  border-color: #176CF1;
}
.btn-facebook:not(:disabled):not(.disabled):active, .btn-facebook:not(:disabled):not(.disabled).active, .show > .btn-facebook.dropdown-toggle {
  color: #fff;
  background-color: rgb(12.1219512195, 85.7195121951, 200.8780487805);
  border-color: rgb(11.3963414634, 80.5884146341, 188.8536585366);
}
.btn-facebook:not(:disabled):not(.disabled):active:focus, .btn-facebook:not(:disabled):not(.disabled).active:focus, .show > .btn-facebook.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(57.8, 130.05, 243.1, 0.5);
}

.btn-turquoise {
  color: #fff;
  background-color: #3574a5;
  border-color: #3574a5;
}
.btn-turquoise:hover {
  color: #fff;
  background-color: rgb(43.7006880734, 95.6467889908, 136.0493119266);
  border-color: rgb(40.6009174312, 88.8623853211, 126.3990825688);
}
.btn-turquoise:focus, .btn-turquoise.focus {
  color: #fff;
  background-color: rgb(43.7006880734, 95.6467889908, 136.0493119266);
  border-color: rgb(40.6009174312, 88.8623853211, 126.3990825688);
  box-shadow: 0 0 0 0.2rem rgba(83.3, 136.85, 178.5, 0.5);
}
.btn-turquoise.disabled, .btn-turquoise:disabled {
  color: #fff;
  background-color: #3574a5;
  border-color: #3574a5;
}
.btn-turquoise:not(:disabled):not(.disabled):active, .btn-turquoise:not(:disabled):not(.disabled).active, .show > .btn-turquoise.dropdown-toggle {
  color: #fff;
  background-color: rgb(40.6009174312, 88.8623853211, 126.3990825688);
  border-color: rgb(37.501146789, 82.0779816514, 116.748853211);
}
.btn-turquoise:not(:disabled):not(.disabled):active:focus, .btn-turquoise:not(:disabled):not(.disabled).active:focus, .show > .btn-turquoise.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(83.3, 136.85, 178.5, 0.5);
}

.btn-medium {
  color: #fff;
  background-color: #8e8e8e;
  border-color: #8e8e8e;
}
.btn-medium:hover {
  color: #fff;
  background-color: rgb(122.875, 122.875, 122.875);
  border-color: rgb(116.5, 116.5, 116.5);
}
.btn-medium:focus, .btn-medium.focus {
  color: #fff;
  background-color: rgb(122.875, 122.875, 122.875);
  border-color: rgb(116.5, 116.5, 116.5);
  box-shadow: 0 0 0 0.2rem rgba(158.95, 158.95, 158.95, 0.5);
}
.btn-medium.disabled, .btn-medium:disabled {
  color: #fff;
  background-color: #8e8e8e;
  border-color: #8e8e8e;
}
.btn-medium:not(:disabled):not(.disabled):active, .btn-medium:not(:disabled):not(.disabled).active, .show > .btn-medium.dropdown-toggle {
  color: #fff;
  background-color: rgb(116.5, 116.5, 116.5);
  border-color: rgb(110.125, 110.125, 110.125);
}
.btn-medium:not(:disabled):not(.disabled):active:focus, .btn-medium:not(:disabled):not(.disabled).active:focus, .show > .btn-medium.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(158.95, 158.95, 158.95, 0.5);
}

.btn-purple {
  color: #212529;
  background-color: #e3e4fc;
  border-color: #e3e4fc;
}
.btn-purple:hover {
  color: #212529;
  background-color: rgb(192.4516129032, 194.685483871, 248.2983870968);
  border-color: rgb(180.935483871, 183.5806451613, 247.064516129);
}
.btn-purple:focus, .btn-purple.focus {
  color: #212529;
  background-color: rgb(192.4516129032, 194.685483871, 248.2983870968);
  border-color: rgb(180.935483871, 183.5806451613, 247.064516129);
  box-shadow: 0 0 0 0.2rem rgba(197.9, 199.35, 220.35, 0.5);
}
.btn-purple.disabled, .btn-purple:disabled {
  color: #212529;
  background-color: #e3e4fc;
  border-color: #e3e4fc;
}
.btn-purple:not(:disabled):not(.disabled):active, .btn-purple:not(:disabled):not(.disabled).active, .show > .btn-purple.dropdown-toggle {
  color: #212529;
  background-color: rgb(180.935483871, 183.5806451613, 247.064516129);
  border-color: rgb(169.4193548387, 172.4758064516, 245.8306451613);
}
.btn-purple:not(:disabled):not(.disabled):active:focus, .btn-purple:not(:disabled):not(.disabled).active:focus, .show > .btn-purple.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(197.9, 199.35, 220.35, 0.5);
}

.btn-purple-shadow {
  color: #fff;
  background-color: #7b7eb5;
  border-color: #7b7eb5;
}
.btn-purple-shadow:hover {
  color: #fff;
  background-color: rgb(98.4902912621, 102.0473300971, 167.2597087379);
  border-color: rgb(90.8834951456, 94.567961165, 162.1165048544);
}
.btn-purple-shadow:focus, .btn-purple-shadow.focus {
  color: #fff;
  background-color: rgb(98.4902912621, 102.0473300971, 167.2597087379);
  border-color: rgb(90.8834951456, 94.567961165, 162.1165048544);
  box-shadow: 0 0 0 0.2rem rgba(142.8, 145.35, 192.1, 0.5);
}
.btn-purple-shadow.disabled, .btn-purple-shadow:disabled {
  color: #fff;
  background-color: #7b7eb5;
  border-color: #7b7eb5;
}
.btn-purple-shadow:not(:disabled):not(.disabled):active, .btn-purple-shadow:not(:disabled):not(.disabled).active, .show > .btn-purple-shadow.dropdown-toggle {
  color: #fff;
  background-color: rgb(90.8834951456, 94.567961165, 162.1165048544);
  border-color: rgb(86.3033980583, 89.802184466, 153.9466019417);
}
.btn-purple-shadow:not(:disabled):not(.disabled):active:focus, .btn-purple-shadow:not(:disabled):not(.disabled).active:focus, .show > .btn-purple-shadow.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(142.8, 145.35, 192.1, 0.5);
}

.btn-course-fr {
  color: #212529;
  background-color: #e5f2fc;
  border-color: #e5f2fc;
}
.btn-course-fr:hover {
  color: #212529;
  background-color: rgb(194.7068965517, 224.8534482759, 248.0431034483);
  border-color: rgb(183.275862069, 219.1379310345, 246.724137931);
}
.btn-course-fr:focus, .btn-course-fr.focus {
  color: #212529;
  background-color: rgb(194.7068965517, 224.8534482759, 248.0431034483);
  border-color: rgb(183.275862069, 219.1379310345, 246.724137931);
  box-shadow: 0 0 0 0.2rem rgba(199.6, 211.25, 220.35, 0.5);
}
.btn-course-fr.disabled, .btn-course-fr:disabled {
  color: #212529;
  background-color: #e5f2fc;
  border-color: #e5f2fc;
}
.btn-course-fr:not(:disabled):not(.disabled):active, .btn-course-fr:not(:disabled):not(.disabled).active, .show > .btn-course-fr.dropdown-toggle {
  color: #212529;
  background-color: rgb(183.275862069, 219.1379310345, 246.724137931);
  border-color: rgb(171.8448275862, 213.4224137931, 245.4051724138);
}
.btn-course-fr:not(:disabled):not(.disabled):active:focus, .btn-course-fr:not(:disabled):not(.disabled).active:focus, .show > .btn-course-fr.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(199.6, 211.25, 220.35, 0.5);
}

.btn-trophy-unknow {
  color: #fff;
  background-color: #cd0000;
  border-color: #cd0000;
}
.btn-trophy-unknow:hover {
  color: #fff;
  background-color: rgb(166.75, 0, 0);
  border-color: #9a0000;
}
.btn-trophy-unknow:focus, .btn-trophy-unknow.focus {
  color: #fff;
  background-color: rgb(166.75, 0, 0);
  border-color: #9a0000;
  box-shadow: 0 0 0 0.2rem rgba(212.5, 38.25, 38.25, 0.5);
}
.btn-trophy-unknow.disabled, .btn-trophy-unknow:disabled {
  color: #fff;
  background-color: #cd0000;
  border-color: #cd0000;
}
.btn-trophy-unknow:not(:disabled):not(.disabled):active, .btn-trophy-unknow:not(:disabled):not(.disabled).active, .show > .btn-trophy-unknow.dropdown-toggle {
  color: #fff;
  background-color: #9a0000;
  border-color: rgb(141.25, 0, 0);
}
.btn-trophy-unknow:not(:disabled):not(.disabled):active:focus, .btn-trophy-unknow:not(:disabled):not(.disabled).active:focus, .show > .btn-trophy-unknow.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(212.5, 38.25, 38.25, 0.5);
}

.btn-trophy-bronze {
  color: #fff;
  background-color: #614E1A;
  border-color: #614E1A;
}
.btn-trophy-bronze:hover {
  color: #fff;
  background-color: rgb(66.8353658537, 53.743902439, 17.9146341463);
  border-color: rgb(56.7804878049, 45.6585365854, 15.2195121951);
}
.btn-trophy-bronze:focus, .btn-trophy-bronze.focus {
  color: #fff;
  background-color: rgb(66.8353658537, 53.743902439, 17.9146341463);
  border-color: rgb(56.7804878049, 45.6585365854, 15.2195121951);
  box-shadow: 0 0 0 0.2rem rgba(120.7, 104.55, 60.35, 0.5);
}
.btn-trophy-bronze.disabled, .btn-trophy-bronze:disabled {
  color: #fff;
  background-color: #614E1A;
  border-color: #614E1A;
}
.btn-trophy-bronze:not(:disabled):not(.disabled):active, .btn-trophy-bronze:not(:disabled):not(.disabled).active, .show > .btn-trophy-bronze.dropdown-toggle {
  color: #fff;
  background-color: rgb(56.7804878049, 45.6585365854, 15.2195121951);
  border-color: rgb(46.7256097561, 37.5731707317, 12.5243902439);
}
.btn-trophy-bronze:not(:disabled):not(.disabled):active:focus, .btn-trophy-bronze:not(:disabled):not(.disabled).active:focus, .show > .btn-trophy-bronze.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(120.7, 104.55, 60.35, 0.5);
}

.btn-trophy-silver {
  color: #212529;
  background-color: #DADADA;
  border-color: #DADADA;
}
.btn-trophy-silver:hover {
  color: #212529;
  background-color: rgb(198.875, 198.875, 198.875);
  border-color: rgb(192.5, 192.5, 192.5);
}
.btn-trophy-silver:focus, .btn-trophy-silver.focus {
  color: #212529;
  background-color: rgb(198.875, 198.875, 198.875);
  border-color: rgb(192.5, 192.5, 192.5);
  box-shadow: 0 0 0 0.2rem rgba(190.25, 190.85, 191.45, 0.5);
}
.btn-trophy-silver.disabled, .btn-trophy-silver:disabled {
  color: #212529;
  background-color: #DADADA;
  border-color: #DADADA;
}
.btn-trophy-silver:not(:disabled):not(.disabled):active, .btn-trophy-silver:not(:disabled):not(.disabled).active, .show > .btn-trophy-silver.dropdown-toggle {
  color: #212529;
  background-color: rgb(192.5, 192.5, 192.5);
  border-color: rgb(186.125, 186.125, 186.125);
}
.btn-trophy-silver:not(:disabled):not(.disabled):active:focus, .btn-trophy-silver:not(:disabled):not(.disabled).active:focus, .show > .btn-trophy-silver.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(190.25, 190.85, 191.45, 0.5);
}

.btn-trophy-gold {
  color: #212529;
  background-color: #D79A10;
  border-color: #D79A10;
}
.btn-trophy-gold:hover {
  color: #fff;
  background-color: rgb(179.3993506494, 128.5, 13.3506493506);
  border-color: rgb(167.5324675325, 120, 12.4675324675);
}
.btn-trophy-gold:focus, .btn-trophy-gold.focus {
  color: #fff;
  background-color: rgb(179.3993506494, 128.5, 13.3506493506);
  border-color: rgb(167.5324675325, 120, 12.4675324675);
  box-shadow: 0 0 0 0.2rem rgba(187.7, 136.45, 19.75, 0.5);
}
.btn-trophy-gold.disabled, .btn-trophy-gold:disabled {
  color: #212529;
  background-color: #D79A10;
  border-color: #D79A10;
}
.btn-trophy-gold:not(:disabled):not(.disabled):active, .btn-trophy-gold:not(:disabled):not(.disabled).active, .show > .btn-trophy-gold.dropdown-toggle {
  color: #fff;
  background-color: rgb(167.5324675325, 120, 12.4675324675);
  border-color: rgb(155.6655844156, 111.5, 11.5844155844);
}
.btn-trophy-gold:not(:disabled):not(.disabled):active:focus, .btn-trophy-gold:not(:disabled):not(.disabled).active:focus, .show > .btn-trophy-gold.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(187.7, 136.45, 19.75, 0.5);
}

.btn-trophy-jade {
  color: #212529;
  background-color: #85B83F;
  border-color: #85B83F;
}
.btn-trophy-jade:hover {
  color: #fff;
  background-color: rgb(112.4038461538, 155.5060728745, 53.2439271255);
  border-color: rgb(105.5384615385, 146.008097166, 49.991902834);
}
.btn-trophy-jade:focus, .btn-trophy-jade.focus {
  color: #fff;
  background-color: rgb(112.4038461538, 155.5060728745, 53.2439271255);
  border-color: rgb(105.5384615385, 146.008097166, 49.991902834);
  box-shadow: 0 0 0 0.2rem rgba(118, 161.95, 59.7, 0.5);
}
.btn-trophy-jade.disabled, .btn-trophy-jade:disabled {
  color: #212529;
  background-color: #85B83F;
  border-color: #85B83F;
}
.btn-trophy-jade:not(:disabled):not(.disabled):active, .btn-trophy-jade:not(:disabled):not(.disabled).active, .show > .btn-trophy-jade.dropdown-toggle {
  color: #fff;
  background-color: rgb(105.5384615385, 146.008097166, 49.991902834);
  border-color: rgb(98.6730769231, 136.5101214575, 46.7398785425);
}
.btn-trophy-jade:not(:disabled):not(.disabled):active:focus, .btn-trophy-jade:not(:disabled):not(.disabled).active:focus, .show > .btn-trophy-jade.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(118, 161.95, 59.7, 0.5);
}

.btn-bluesky {
  color: #212529;
  background-color: #7FBDF2;
  border-color: #7FBDF2;
}
.btn-bluesky:hover {
  color: #212529;
  background-color: rgb(92.2765957447, 171.0957446809, 238.4734042553);
  border-color: rgb(80.7021276596, 165.1276595745, 237.2978723404);
}
.btn-bluesky:focus, .btn-bluesky.focus {
  color: #212529;
  background-color: rgb(92.2765957447, 171.0957446809, 238.4734042553);
  border-color: rgb(80.7021276596, 165.1276595745, 237.2978723404);
  box-shadow: 0 0 0 0.2rem rgba(112.9, 166.2, 211.85, 0.5);
}
.btn-bluesky.disabled, .btn-bluesky:disabled {
  color: #212529;
  background-color: #7FBDF2;
  border-color: #7FBDF2;
}
.btn-bluesky:not(:disabled):not(.disabled):active, .btn-bluesky:not(:disabled):not(.disabled).active, .show > .btn-bluesky.dropdown-toggle {
  color: #fff;
  background-color: rgb(80.7021276596, 165.1276595745, 237.2978723404);
  border-color: rgb(69.1276595745, 159.1595744681, 236.1223404255);
}
.btn-bluesky:not(:disabled):not(.disabled):active:focus, .btn-bluesky:not(:disabled):not(.disabled).active:focus, .show > .btn-bluesky.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(112.9, 166.2, 211.85, 0.5);
}

.btn-darklight {
  color: #fff;
  background-color: #707070;
  border-color: #707070;
}
.btn-darklight:hover {
  color: #fff;
  background-color: rgb(92.875, 92.875, 92.875);
  border-color: rgb(86.5, 86.5, 86.5);
}
.btn-darklight:focus, .btn-darklight.focus {
  color: #fff;
  background-color: rgb(92.875, 92.875, 92.875);
  border-color: rgb(86.5, 86.5, 86.5);
  box-shadow: 0 0 0 0.2rem rgba(133.45, 133.45, 133.45, 0.5);
}
.btn-darklight.disabled, .btn-darklight:disabled {
  color: #fff;
  background-color: #707070;
  border-color: #707070;
}
.btn-darklight:not(:disabled):not(.disabled):active, .btn-darklight:not(:disabled):not(.disabled).active, .show > .btn-darklight.dropdown-toggle {
  color: #fff;
  background-color: rgb(86.5, 86.5, 86.5);
  border-color: rgb(80.125, 80.125, 80.125);
}
.btn-darklight:not(:disabled):not(.disabled):active:focus, .btn-darklight:not(:disabled):not(.disabled).active:focus, .show > .btn-darklight.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(133.45, 133.45, 133.45, 0.5);
}

.btn-extradark {
  color: #fff;
  background-color: #1C1C1C;
  border-color: #1C1C1C;
}
.btn-extradark:hover {
  color: #fff;
  background-color: rgb(8.875, 8.875, 8.875);
  border-color: rgb(2.5, 2.5, 2.5);
}
.btn-extradark:focus, .btn-extradark.focus {
  color: #fff;
  background-color: rgb(8.875, 8.875, 8.875);
  border-color: rgb(2.5, 2.5, 2.5);
  box-shadow: 0 0 0 0.2rem rgba(62.05, 62.05, 62.05, 0.5);
}
.btn-extradark.disabled, .btn-extradark:disabled {
  color: #fff;
  background-color: #1C1C1C;
  border-color: #1C1C1C;
}
.btn-extradark:not(:disabled):not(.disabled):active, .btn-extradark:not(:disabled):not(.disabled).active, .show > .btn-extradark.dropdown-toggle {
  color: #fff;
  background-color: rgb(2.5, 2.5, 2.5);
  border-color: black;
}
.btn-extradark:not(:disabled):not(.disabled):active:focus, .btn-extradark:not(:disabled):not(.disabled).active:focus, .show > .btn-extradark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(62.05, 62.05, 62.05, 0.5);
}

.btn-pro-primary {
  color: #fff;
  background-color: #ec4a72;
  border-color: #ec4a72;
}
.btn-pro-primary:hover {
  color: #fff;
  background-color: rgb(232.36625, 39.38375, 87.03375);
  border-color: rgb(231.155, 27.845, 78.045);
}
.btn-pro-primary:focus, .btn-pro-primary.focus {
  color: #fff;
  background-color: rgb(232.36625, 39.38375, 87.03375);
  border-color: rgb(231.155, 27.845, 78.045);
  box-shadow: 0 0 0 0.2rem rgba(238.85, 101.15, 135.15, 0.5);
}
.btn-pro-primary.disabled, .btn-pro-primary:disabled {
  color: #fff;
  background-color: #ec4a72;
  border-color: #ec4a72;
}
.btn-pro-primary:not(:disabled):not(.disabled):active, .btn-pro-primary:not(:disabled):not(.disabled).active, .show > .btn-pro-primary.dropdown-toggle {
  color: #fff;
  background-color: rgb(231.155, 27.845, 78.045);
  border-color: rgb(222.85625, 23.39375, 72.64375);
}
.btn-pro-primary:not(:disabled):not(.disabled):active:focus, .btn-pro-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-pro-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(238.85, 101.15, 135.15, 0.5);
}

.btn-pro-secondary {
  color: #fff;
  background-color: #7f6ce3;
  border-color: #7f6ce3;
}
.btn-pro-secondary:hover {
  color: #fff;
  background-color: rgb(99.0228571429, 75.87, 220.88);
  border-color: rgb(89.6971428571, 65.16, 218.84);
}
.btn-pro-secondary:focus, .btn-pro-secondary.focus {
  color: #fff;
  background-color: rgb(99.0228571429, 75.87, 220.88);
  border-color: rgb(89.6971428571, 65.16, 218.84);
  box-shadow: 0 0 0 0.2rem rgba(146.2, 130.05, 231.2, 0.5);
}
.btn-pro-secondary.disabled, .btn-pro-secondary:disabled {
  color: #fff;
  background-color: #7f6ce3;
  border-color: #7f6ce3;
}
.btn-pro-secondary:not(:disabled):not(.disabled):active, .btn-pro-secondary:not(:disabled):not(.disabled).active, .show > .btn-pro-secondary.dropdown-toggle {
  color: #fff;
  background-color: rgb(89.6971428571, 65.16, 218.84);
  border-color: rgb(80.3714285714, 54.45, 216.8);
}
.btn-pro-secondary:not(:disabled):not(.disabled):active:focus, .btn-pro-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-pro-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(146.2, 130.05, 231.2, 0.5);
}

.btn-pro-medium {
  color: #212529;
  background-color: #aeb1bb;
  border-color: #aeb1bb;
}
.btn-pro-medium:hover {
  color: #212529;
  background-color: rgb(153.2063758389, 156.9765100671, 169.5436241611);
  border-color: rgb(146.2751677852, 150.3020134228, 163.7248322148);
}
.btn-pro-medium:focus, .btn-pro-medium.focus {
  color: #212529;
  background-color: rgb(153.2063758389, 156.9765100671, 169.5436241611);
  border-color: rgb(146.2751677852, 150.3020134228, 163.7248322148);
  box-shadow: 0 0 0 0.2rem rgba(152.85, 156, 165.1, 0.5);
}
.btn-pro-medium.disabled, .btn-pro-medium:disabled {
  color: #212529;
  background-color: #aeb1bb;
  border-color: #aeb1bb;
}
.btn-pro-medium:not(:disabled):not(.disabled):active, .btn-pro-medium:not(:disabled):not(.disabled).active, .show > .btn-pro-medium.dropdown-toggle {
  color: #212529;
  background-color: rgb(146.2751677852, 150.3020134228, 163.7248322148);
  border-color: rgb(139.3439597315, 143.6275167785, 157.9060402685);
}
.btn-pro-medium:not(:disabled):not(.disabled):active:focus, .btn-pro-medium:not(:disabled):not(.disabled).active:focus, .show > .btn-pro-medium.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(152.85, 156, 165.1, 0.5);
}

.btn-light-purple {
  color: #212529;
  background-color: #a29bfe;
  border-color: #a29bfe;
}
.btn-light-purple:hover {
  color: #fff;
  background-color: rgb(126.7797029703, 117.1287128713, 253.6212871287);
  border-color: rgb(115.0396039604, 104.504950495, 253.495049505);
}
.btn-light-purple:focus, .btn-light-purple.focus {
  color: #fff;
  background-color: rgb(126.7797029703, 117.1287128713, 253.6212871287);
  border-color: rgb(115.0396039604, 104.504950495, 253.495049505);
  box-shadow: 0 0 0 0.2rem rgba(142.65, 137.3, 222.05, 0.5);
}
.btn-light-purple.disabled, .btn-light-purple:disabled {
  color: #212529;
  background-color: #a29bfe;
  border-color: #a29bfe;
}
.btn-light-purple:not(:disabled):not(.disabled):active, .btn-light-purple:not(:disabled):not(.disabled).active, .show > .btn-light-purple.dropdown-toggle {
  color: #fff;
  background-color: rgb(115.0396039604, 104.504950495, 253.495049505);
  border-color: rgb(103.2995049505, 91.8811881188, 253.3688118812);
}
.btn-light-purple:not(:disabled):not(.disabled):active:focus, .btn-light-purple:not(:disabled):not(.disabled).active:focus, .show > .btn-light-purple.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(142.65, 137.3, 222.05, 0.5);
}

.btn-dark-purple {
  color: #fff;
  background-color: #6c62e7;
  border-color: #6c62e7;
}
.btn-dark-purple:hover {
  color: #fff;
  background-color: rgb(76.9350828729, 64.8218232044, 225.9281767956);
  border-color: rgb(66.5801104972, 53.7624309392, 224.2375690608);
}
.btn-dark-purple:focus, .btn-dark-purple.focus {
  color: #fff;
  background-color: rgb(76.9350828729, 64.8218232044, 225.9281767956);
  border-color: rgb(66.5801104972, 53.7624309392, 224.2375690608);
  box-shadow: 0 0 0 0.2rem rgba(130.05, 121.55, 234.6, 0.5);
}
.btn-dark-purple.disabled, .btn-dark-purple:disabled {
  color: #fff;
  background-color: #6c62e7;
  border-color: #6c62e7;
}
.btn-dark-purple:not(:disabled):not(.disabled):active, .btn-dark-purple:not(:disabled):not(.disabled).active, .show > .btn-dark-purple.dropdown-toggle {
  color: #fff;
  background-color: rgb(66.5801104972, 53.7624309392, 224.2375690608);
  border-color: rgb(56.2251381215, 42.703038674, 222.546961326);
}
.btn-dark-purple:not(:disabled):not(.disabled):active:focus, .btn-dark-purple:not(:disabled):not(.disabled).active:focus, .show > .btn-dark-purple.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130.05, 121.55, 234.6, 0.5);
}

.btn-outline-primary {
  color: #23307e;
  border-color: #23307e;
}
.btn-outline-primary:hover {
  color: #fff;
  background-color: #23307e;
  border-color: #23307e;
}
.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(35, 48, 126, 0.5);
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #23307e;
  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: #23307e;
  border-color: #23307e;
}
.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(35, 48, 126, 0.5);
}

.btn-outline-secondary {
  color: #F35B04;
  border-color: #F35B04;
}
.btn-outline-secondary:hover {
  color: #fff;
  background-color: #F35B04;
  border-color: #F35B04;
}
.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(243, 91, 4, 0.5);
}
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #F35B04;
  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: #F35B04;
  border-color: #F35B04;
}
.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(243, 91, 4, 0.5);
}

.btn-outline-success {
  color: #07B55B;
  border-color: #07B55B;
}
.btn-outline-success:hover {
  color: #fff;
  background-color: #07B55B;
  border-color: #07B55B;
}
.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(7, 181, 91, 0.5);
}
.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #07B55B;
  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: #07B55B;
  border-color: #07B55B;
}
.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(7, 181, 91, 0.5);
}

.btn-outline-info {
  color: #097DE2;
  border-color: #097DE2;
}
.btn-outline-info:hover {
  color: #fff;
  background-color: #097DE2;
  border-color: #097DE2;
}
.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(9, 125, 226, 0.5);
}
.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #097DE2;
  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: #097DE2;
  border-color: #097DE2;
}
.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(9, 125, 226, 0.5);
}

.btn-outline-warning {
  color: #FFB405;
  border-color: #FFB405;
}
.btn-outline-warning:hover {
  color: #212529;
  background-color: #FFB405;
  border-color: #FFB405;
}
.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 180, 5, 0.5);
}
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #FFB405;
  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: #FFB405;
  border-color: #FFB405;
}
.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, 180, 5, 0.5);
}

.btn-outline-danger {
  color: #E03128;
  border-color: #E03128;
}
.btn-outline-danger:hover {
  color: #fff;
  background-color: #E03128;
  border-color: #E03128;
}
.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(224, 49, 40, 0.5);
}
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #E03128;
  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: #E03128;
  border-color: #E03128;
}
.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(224, 49, 40, 0.5);
}

.btn-outline-light {
  color: #C3CAD9;
  border-color: #C3CAD9;
}
.btn-outline-light:hover {
  color: #212529;
  background-color: #C3CAD9;
  border-color: #C3CAD9;
}
.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(195, 202, 217, 0.5);
}
.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #C3CAD9;
  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: #C3CAD9;
  border-color: #C3CAD9;
}
.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(195, 202, 217, 0.5);
}

.btn-outline-dark {
  color: #333333;
  border-color: #333333;
}
.btn-outline-dark:hover {
  color: #fff;
  background-color: #333333;
  border-color: #333333;
}
.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(51, 51, 51, 0.5);
}
.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #333333;
  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: #333333;
  border-color: #333333;
}
.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(51, 51, 51, 0.5);
}

.btn-outline-fake-white {
  color: #F5F5F5;
  border-color: #F5F5F5;
}
.btn-outline-fake-white:hover {
  color: #212529;
  background-color: #F5F5F5;
  border-color: #F5F5F5;
}
.btn-outline-fake-white:focus, .btn-outline-fake-white.focus {
  box-shadow: 0 0 0 0.2rem rgba(245, 245, 245, 0.5);
}
.btn-outline-fake-white.disabled, .btn-outline-fake-white:disabled {
  color: #F5F5F5;
  background-color: transparent;
}
.btn-outline-fake-white:not(:disabled):not(.disabled):active, .btn-outline-fake-white:not(:disabled):not(.disabled).active, .show > .btn-outline-fake-white.dropdown-toggle {
  color: #212529;
  background-color: #F5F5F5;
  border-color: #F5F5F5;
}
.btn-outline-fake-white:not(:disabled):not(.disabled):active:focus, .btn-outline-fake-white:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-fake-white.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(245, 245, 245, 0.5);
}

.btn-outline-xtremlight {
  color: #F3F3F9;
  border-color: #F3F3F9;
}
.btn-outline-xtremlight:hover {
  color: #212529;
  background-color: #F3F3F9;
  border-color: #F3F3F9;
}
.btn-outline-xtremlight:focus, .btn-outline-xtremlight.focus {
  box-shadow: 0 0 0 0.2rem rgba(243, 243, 249, 0.5);
}
.btn-outline-xtremlight.disabled, .btn-outline-xtremlight:disabled {
  color: #F3F3F9;
  background-color: transparent;
}
.btn-outline-xtremlight:not(:disabled):not(.disabled):active, .btn-outline-xtremlight:not(:disabled):not(.disabled).active, .show > .btn-outline-xtremlight.dropdown-toggle {
  color: #212529;
  background-color: #F3F3F9;
  border-color: #F3F3F9;
}
.btn-outline-xtremlight:not(:disabled):not(.disabled):active:focus, .btn-outline-xtremlight:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-xtremlight.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(243, 243, 249, 0.5);
}

.btn-outline-extralight {
  color: #E6E6E6;
  border-color: #E6E6E6;
}
.btn-outline-extralight:hover {
  color: #212529;
  background-color: #E6E6E6;
  border-color: #E6E6E6;
}
.btn-outline-extralight:focus, .btn-outline-extralight.focus {
  box-shadow: 0 0 0 0.2rem rgba(230, 230, 230, 0.5);
}
.btn-outline-extralight.disabled, .btn-outline-extralight:disabled {
  color: #E6E6E6;
  background-color: transparent;
}
.btn-outline-extralight:not(:disabled):not(.disabled):active, .btn-outline-extralight:not(:disabled):not(.disabled).active, .show > .btn-outline-extralight.dropdown-toggle {
  color: #212529;
  background-color: #E6E6E6;
  border-color: #E6E6E6;
}
.btn-outline-extralight:not(:disabled):not(.disabled):active:focus, .btn-outline-extralight:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-extralight.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(230, 230, 230, 0.5);
}

.btn-outline-extramedium {
  color: #444444;
  border-color: #444444;
}
.btn-outline-extramedium:hover {
  color: #fff;
  background-color: #444444;
  border-color: #444444;
}
.btn-outline-extramedium:focus, .btn-outline-extramedium.focus {
  box-shadow: 0 0 0 0.2rem rgba(68, 68, 68, 0.5);
}
.btn-outline-extramedium.disabled, .btn-outline-extramedium:disabled {
  color: #444444;
  background-color: transparent;
}
.btn-outline-extramedium:not(:disabled):not(.disabled):active, .btn-outline-extramedium:not(:disabled):not(.disabled).active, .show > .btn-outline-extramedium.dropdown-toggle {
  color: #fff;
  background-color: #444444;
  border-color: #444444;
}
.btn-outline-extramedium:not(:disabled):not(.disabled):active:focus, .btn-outline-extramedium:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-extramedium.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(68, 68, 68, 0.5);
}

.btn-outline-title {
  color: #2E3333;
  border-color: #2E3333;
}
.btn-outline-title:hover {
  color: #fff;
  background-color: #2E3333;
  border-color: #2E3333;
}
.btn-outline-title:focus, .btn-outline-title.focus {
  box-shadow: 0 0 0 0.2rem rgba(46, 51, 51, 0.5);
}
.btn-outline-title.disabled, .btn-outline-title:disabled {
  color: #2E3333;
  background-color: transparent;
}
.btn-outline-title:not(:disabled):not(.disabled):active, .btn-outline-title:not(:disabled):not(.disabled).active, .show > .btn-outline-title.dropdown-toggle {
  color: #fff;
  background-color: #2E3333;
  border-color: #2E3333;
}
.btn-outline-title:not(:disabled):not(.disabled):active:focus, .btn-outline-title:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-title.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(46, 51, 51, 0.5);
}

.btn-outline-facebook {
  color: #176CF1;
  border-color: #176CF1;
}
.btn-outline-facebook:hover {
  color: #fff;
  background-color: #176CF1;
  border-color: #176CF1;
}
.btn-outline-facebook:focus, .btn-outline-facebook.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 108, 241, 0.5);
}
.btn-outline-facebook.disabled, .btn-outline-facebook:disabled {
  color: #176CF1;
  background-color: transparent;
}
.btn-outline-facebook:not(:disabled):not(.disabled):active, .btn-outline-facebook:not(:disabled):not(.disabled).active, .show > .btn-outline-facebook.dropdown-toggle {
  color: #fff;
  background-color: #176CF1;
  border-color: #176CF1;
}
.btn-outline-facebook:not(:disabled):not(.disabled):active:focus, .btn-outline-facebook:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-facebook.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 108, 241, 0.5);
}

.btn-outline-turquoise {
  color: #3574a5;
  border-color: #3574a5;
}
.btn-outline-turquoise:hover {
  color: #fff;
  background-color: #3574a5;
  border-color: #3574a5;
}
.btn-outline-turquoise:focus, .btn-outline-turquoise.focus {
  box-shadow: 0 0 0 0.2rem rgba(53, 116, 165, 0.5);
}
.btn-outline-turquoise.disabled, .btn-outline-turquoise:disabled {
  color: #3574a5;
  background-color: transparent;
}
.btn-outline-turquoise:not(:disabled):not(.disabled):active, .btn-outline-turquoise:not(:disabled):not(.disabled).active, .show > .btn-outline-turquoise.dropdown-toggle {
  color: #fff;
  background-color: #3574a5;
  border-color: #3574a5;
}
.btn-outline-turquoise:not(:disabled):not(.disabled):active:focus, .btn-outline-turquoise:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-turquoise.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(53, 116, 165, 0.5);
}

.btn-outline-medium {
  color: #8e8e8e;
  border-color: #8e8e8e;
}
.btn-outline-medium:hover {
  color: #fff;
  background-color: #8e8e8e;
  border-color: #8e8e8e;
}
.btn-outline-medium:focus, .btn-outline-medium.focus {
  box-shadow: 0 0 0 0.2rem rgba(142, 142, 142, 0.5);
}
.btn-outline-medium.disabled, .btn-outline-medium:disabled {
  color: #8e8e8e;
  background-color: transparent;
}
.btn-outline-medium:not(:disabled):not(.disabled):active, .btn-outline-medium:not(:disabled):not(.disabled).active, .show > .btn-outline-medium.dropdown-toggle {
  color: #fff;
  background-color: #8e8e8e;
  border-color: #8e8e8e;
}
.btn-outline-medium:not(:disabled):not(.disabled):active:focus, .btn-outline-medium:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-medium.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(142, 142, 142, 0.5);
}

.btn-outline-purple {
  color: #e3e4fc;
  border-color: #e3e4fc;
}
.btn-outline-purple:hover {
  color: #212529;
  background-color: #e3e4fc;
  border-color: #e3e4fc;
}
.btn-outline-purple:focus, .btn-outline-purple.focus {
  box-shadow: 0 0 0 0.2rem rgba(227, 228, 252, 0.5);
}
.btn-outline-purple.disabled, .btn-outline-purple:disabled {
  color: #e3e4fc;
  background-color: transparent;
}
.btn-outline-purple:not(:disabled):not(.disabled):active, .btn-outline-purple:not(:disabled):not(.disabled).active, .show > .btn-outline-purple.dropdown-toggle {
  color: #212529;
  background-color: #e3e4fc;
  border-color: #e3e4fc;
}
.btn-outline-purple:not(:disabled):not(.disabled):active:focus, .btn-outline-purple:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-purple.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(227, 228, 252, 0.5);
}

.btn-outline-purple-shadow {
  color: #7b7eb5;
  border-color: #7b7eb5;
}
.btn-outline-purple-shadow:hover {
  color: #fff;
  background-color: #7b7eb5;
  border-color: #7b7eb5;
}
.btn-outline-purple-shadow:focus, .btn-outline-purple-shadow.focus {
  box-shadow: 0 0 0 0.2rem rgba(123, 126, 181, 0.5);
}
.btn-outline-purple-shadow.disabled, .btn-outline-purple-shadow:disabled {
  color: #7b7eb5;
  background-color: transparent;
}
.btn-outline-purple-shadow:not(:disabled):not(.disabled):active, .btn-outline-purple-shadow:not(:disabled):not(.disabled).active, .show > .btn-outline-purple-shadow.dropdown-toggle {
  color: #fff;
  background-color: #7b7eb5;
  border-color: #7b7eb5;
}
.btn-outline-purple-shadow:not(:disabled):not(.disabled):active:focus, .btn-outline-purple-shadow:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-purple-shadow.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(123, 126, 181, 0.5);
}

.btn-outline-course-fr {
  color: #e5f2fc;
  border-color: #e5f2fc;
}
.btn-outline-course-fr:hover {
  color: #212529;
  background-color: #e5f2fc;
  border-color: #e5f2fc;
}
.btn-outline-course-fr:focus, .btn-outline-course-fr.focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 242, 252, 0.5);
}
.btn-outline-course-fr.disabled, .btn-outline-course-fr:disabled {
  color: #e5f2fc;
  background-color: transparent;
}
.btn-outline-course-fr:not(:disabled):not(.disabled):active, .btn-outline-course-fr:not(:disabled):not(.disabled).active, .show > .btn-outline-course-fr.dropdown-toggle {
  color: #212529;
  background-color: #e5f2fc;
  border-color: #e5f2fc;
}
.btn-outline-course-fr:not(:disabled):not(.disabled):active:focus, .btn-outline-course-fr:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-course-fr.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 242, 252, 0.5);
}

.btn-outline-trophy-unknow {
  color: #cd0000;
  border-color: #cd0000;
}
.btn-outline-trophy-unknow:hover {
  color: #fff;
  background-color: #cd0000;
  border-color: #cd0000;
}
.btn-outline-trophy-unknow:focus, .btn-outline-trophy-unknow.focus {
  box-shadow: 0 0 0 0.2rem rgba(205, 0, 0, 0.5);
}
.btn-outline-trophy-unknow.disabled, .btn-outline-trophy-unknow:disabled {
  color: #cd0000;
  background-color: transparent;
}
.btn-outline-trophy-unknow:not(:disabled):not(.disabled):active, .btn-outline-trophy-unknow:not(:disabled):not(.disabled).active, .show > .btn-outline-trophy-unknow.dropdown-toggle {
  color: #fff;
  background-color: #cd0000;
  border-color: #cd0000;
}
.btn-outline-trophy-unknow:not(:disabled):not(.disabled):active:focus, .btn-outline-trophy-unknow:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-trophy-unknow.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(205, 0, 0, 0.5);
}

.btn-outline-trophy-bronze {
  color: #614E1A;
  border-color: #614E1A;
}
.btn-outline-trophy-bronze:hover {
  color: #fff;
  background-color: #614E1A;
  border-color: #614E1A;
}
.btn-outline-trophy-bronze:focus, .btn-outline-trophy-bronze.focus {
  box-shadow: 0 0 0 0.2rem rgba(97, 78, 26, 0.5);
}
.btn-outline-trophy-bronze.disabled, .btn-outline-trophy-bronze:disabled {
  color: #614E1A;
  background-color: transparent;
}
.btn-outline-trophy-bronze:not(:disabled):not(.disabled):active, .btn-outline-trophy-bronze:not(:disabled):not(.disabled).active, .show > .btn-outline-trophy-bronze.dropdown-toggle {
  color: #fff;
  background-color: #614E1A;
  border-color: #614E1A;
}
.btn-outline-trophy-bronze:not(:disabled):not(.disabled):active:focus, .btn-outline-trophy-bronze:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-trophy-bronze.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(97, 78, 26, 0.5);
}

.btn-outline-trophy-silver {
  color: #DADADA;
  border-color: #DADADA;
}
.btn-outline-trophy-silver:hover {
  color: #212529;
  background-color: #DADADA;
  border-color: #DADADA;
}
.btn-outline-trophy-silver:focus, .btn-outline-trophy-silver.focus {
  box-shadow: 0 0 0 0.2rem rgba(218, 218, 218, 0.5);
}
.btn-outline-trophy-silver.disabled, .btn-outline-trophy-silver:disabled {
  color: #DADADA;
  background-color: transparent;
}
.btn-outline-trophy-silver:not(:disabled):not(.disabled):active, .btn-outline-trophy-silver:not(:disabled):not(.disabled).active, .show > .btn-outline-trophy-silver.dropdown-toggle {
  color: #212529;
  background-color: #DADADA;
  border-color: #DADADA;
}
.btn-outline-trophy-silver:not(:disabled):not(.disabled):active:focus, .btn-outline-trophy-silver:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-trophy-silver.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(218, 218, 218, 0.5);
}

.btn-outline-trophy-gold {
  color: #D79A10;
  border-color: #D79A10;
}
.btn-outline-trophy-gold:hover {
  color: #212529;
  background-color: #D79A10;
  border-color: #D79A10;
}
.btn-outline-trophy-gold:focus, .btn-outline-trophy-gold.focus {
  box-shadow: 0 0 0 0.2rem rgba(215, 154, 16, 0.5);
}
.btn-outline-trophy-gold.disabled, .btn-outline-trophy-gold:disabled {
  color: #D79A10;
  background-color: transparent;
}
.btn-outline-trophy-gold:not(:disabled):not(.disabled):active, .btn-outline-trophy-gold:not(:disabled):not(.disabled).active, .show > .btn-outline-trophy-gold.dropdown-toggle {
  color: #212529;
  background-color: #D79A10;
  border-color: #D79A10;
}
.btn-outline-trophy-gold:not(:disabled):not(.disabled):active:focus, .btn-outline-trophy-gold:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-trophy-gold.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(215, 154, 16, 0.5);
}

.btn-outline-trophy-jade {
  color: #85B83F;
  border-color: #85B83F;
}
.btn-outline-trophy-jade:hover {
  color: #212529;
  background-color: #85B83F;
  border-color: #85B83F;
}
.btn-outline-trophy-jade:focus, .btn-outline-trophy-jade.focus {
  box-shadow: 0 0 0 0.2rem rgba(133, 184, 63, 0.5);
}
.btn-outline-trophy-jade.disabled, .btn-outline-trophy-jade:disabled {
  color: #85B83F;
  background-color: transparent;
}
.btn-outline-trophy-jade:not(:disabled):not(.disabled):active, .btn-outline-trophy-jade:not(:disabled):not(.disabled).active, .show > .btn-outline-trophy-jade.dropdown-toggle {
  color: #212529;
  background-color: #85B83F;
  border-color: #85B83F;
}
.btn-outline-trophy-jade:not(:disabled):not(.disabled):active:focus, .btn-outline-trophy-jade:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-trophy-jade.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(133, 184, 63, 0.5);
}

.btn-outline-bluesky {
  color: #7FBDF2;
  border-color: #7FBDF2;
}
.btn-outline-bluesky:hover {
  color: #212529;
  background-color: #7FBDF2;
  border-color: #7FBDF2;
}
.btn-outline-bluesky:focus, .btn-outline-bluesky.focus {
  box-shadow: 0 0 0 0.2rem rgba(127, 189, 242, 0.5);
}
.btn-outline-bluesky.disabled, .btn-outline-bluesky:disabled {
  color: #7FBDF2;
  background-color: transparent;
}
.btn-outline-bluesky:not(:disabled):not(.disabled):active, .btn-outline-bluesky:not(:disabled):not(.disabled).active, .show > .btn-outline-bluesky.dropdown-toggle {
  color: #212529;
  background-color: #7FBDF2;
  border-color: #7FBDF2;
}
.btn-outline-bluesky:not(:disabled):not(.disabled):active:focus, .btn-outline-bluesky:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-bluesky.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(127, 189, 242, 0.5);
}

.btn-outline-darklight {
  color: #707070;
  border-color: #707070;
}
.btn-outline-darklight:hover {
  color: #fff;
  background-color: #707070;
  border-color: #707070;
}
.btn-outline-darklight:focus, .btn-outline-darklight.focus {
  box-shadow: 0 0 0 0.2rem rgba(112, 112, 112, 0.5);
}
.btn-outline-darklight.disabled, .btn-outline-darklight:disabled {
  color: #707070;
  background-color: transparent;
}
.btn-outline-darklight:not(:disabled):not(.disabled):active, .btn-outline-darklight:not(:disabled):not(.disabled).active, .show > .btn-outline-darklight.dropdown-toggle {
  color: #fff;
  background-color: #707070;
  border-color: #707070;
}
.btn-outline-darklight:not(:disabled):not(.disabled):active:focus, .btn-outline-darklight:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-darklight.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(112, 112, 112, 0.5);
}

.btn-outline-extradark {
  color: #1C1C1C;
  border-color: #1C1C1C;
}
.btn-outline-extradark:hover {
  color: #fff;
  background-color: #1C1C1C;
  border-color: #1C1C1C;
}
.btn-outline-extradark:focus, .btn-outline-extradark.focus {
  box-shadow: 0 0 0 0.2rem rgba(28, 28, 28, 0.5);
}
.btn-outline-extradark.disabled, .btn-outline-extradark:disabled {
  color: #1C1C1C;
  background-color: transparent;
}
.btn-outline-extradark:not(:disabled):not(.disabled):active, .btn-outline-extradark:not(:disabled):not(.disabled).active, .show > .btn-outline-extradark.dropdown-toggle {
  color: #fff;
  background-color: #1C1C1C;
  border-color: #1C1C1C;
}
.btn-outline-extradark:not(:disabled):not(.disabled):active:focus, .btn-outline-extradark:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-extradark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(28, 28, 28, 0.5);
}

.btn-outline-pro-primary {
  color: #ec4a72;
  border-color: #ec4a72;
}
.btn-outline-pro-primary:hover {
  color: #fff;
  background-color: #ec4a72;
  border-color: #ec4a72;
}
.btn-outline-pro-primary:focus, .btn-outline-pro-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(236, 74, 114, 0.5);
}
.btn-outline-pro-primary.disabled, .btn-outline-pro-primary:disabled {
  color: #ec4a72;
  background-color: transparent;
}
.btn-outline-pro-primary:not(:disabled):not(.disabled):active, .btn-outline-pro-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-pro-primary.dropdown-toggle {
  color: #fff;
  background-color: #ec4a72;
  border-color: #ec4a72;
}
.btn-outline-pro-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-pro-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-pro-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(236, 74, 114, 0.5);
}

.btn-outline-pro-secondary {
  color: #7f6ce3;
  border-color: #7f6ce3;
}
.btn-outline-pro-secondary:hover {
  color: #fff;
  background-color: #7f6ce3;
  border-color: #7f6ce3;
}
.btn-outline-pro-secondary:focus, .btn-outline-pro-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(127, 108, 227, 0.5);
}
.btn-outline-pro-secondary.disabled, .btn-outline-pro-secondary:disabled {
  color: #7f6ce3;
  background-color: transparent;
}
.btn-outline-pro-secondary:not(:disabled):not(.disabled):active, .btn-outline-pro-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-pro-secondary.dropdown-toggle {
  color: #fff;
  background-color: #7f6ce3;
  border-color: #7f6ce3;
}
.btn-outline-pro-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-pro-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-pro-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(127, 108, 227, 0.5);
}

.btn-outline-pro-medium {
  color: #aeb1bb;
  border-color: #aeb1bb;
}
.btn-outline-pro-medium:hover {
  color: #212529;
  background-color: #aeb1bb;
  border-color: #aeb1bb;
}
.btn-outline-pro-medium:focus, .btn-outline-pro-medium.focus {
  box-shadow: 0 0 0 0.2rem rgba(174, 177, 187, 0.5);
}
.btn-outline-pro-medium.disabled, .btn-outline-pro-medium:disabled {
  color: #aeb1bb;
  background-color: transparent;
}
.btn-outline-pro-medium:not(:disabled):not(.disabled):active, .btn-outline-pro-medium:not(:disabled):not(.disabled).active, .show > .btn-outline-pro-medium.dropdown-toggle {
  color: #212529;
  background-color: #aeb1bb;
  border-color: #aeb1bb;
}
.btn-outline-pro-medium:not(:disabled):not(.disabled):active:focus, .btn-outline-pro-medium:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-pro-medium.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(174, 177, 187, 0.5);
}

.btn-outline-light-purple {
  color: #a29bfe;
  border-color: #a29bfe;
}
.btn-outline-light-purple:hover {
  color: #212529;
  background-color: #a29bfe;
  border-color: #a29bfe;
}
.btn-outline-light-purple:focus, .btn-outline-light-purple.focus {
  box-shadow: 0 0 0 0.2rem rgba(162, 155, 254, 0.5);
}
.btn-outline-light-purple.disabled, .btn-outline-light-purple:disabled {
  color: #a29bfe;
  background-color: transparent;
}
.btn-outline-light-purple:not(:disabled):not(.disabled):active, .btn-outline-light-purple:not(:disabled):not(.disabled).active, .show > .btn-outline-light-purple.dropdown-toggle {
  color: #212529;
  background-color: #a29bfe;
  border-color: #a29bfe;
}
.btn-outline-light-purple:not(:disabled):not(.disabled):active:focus, .btn-outline-light-purple:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light-purple.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(162, 155, 254, 0.5);
}

.btn-outline-dark-purple {
  color: #6c62e7;
  border-color: #6c62e7;
}
.btn-outline-dark-purple:hover {
  color: #fff;
  background-color: #6c62e7;
  border-color: #6c62e7;
}
.btn-outline-dark-purple:focus, .btn-outline-dark-purple.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 98, 231, 0.5);
}
.btn-outline-dark-purple.disabled, .btn-outline-dark-purple:disabled {
  color: #6c62e7;
  background-color: transparent;
}
.btn-outline-dark-purple:not(:disabled):not(.disabled):active, .btn-outline-dark-purple:not(:disabled):not(.disabled).active, .show > .btn-outline-dark-purple.dropdown-toggle {
  color: #fff;
  background-color: #6c62e7;
  border-color: #6c62e7;
}
.btn-outline-dark-purple:not(:disabled):not(.disabled):active:focus, .btn-outline-dark-purple:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark-purple.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 98, 231, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #23307e;
  text-decoration: none;
}
.btn-link:hover {
  color: rgb(18.3695652174, 25.1925465839, 66.1304347826);
  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;
  }
}
.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: rgb(21.6283783784, 24.25, 26.8716216216);
  text-decoration: none;
  background-color: #e9ecef;
}
.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #23307e;
}
.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: #23307e;
  background-color: #23307e;
}
.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(35, 48, 126, 0.25);
}
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: rgb(81.652173913, 99.5372670807, 206.847826087);
}
.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: rgb(121.5652173913, 135.3322981366, 217.9347826087);
  border-color: rgb(121.5652173913, 135.3322981366, 217.9347826087);
}
.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: #23307e;
  background-color: #23307e;
}
.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(35, 48, 126, 0.5);
}
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(35, 48, 126, 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(35, 48, 126, 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(35, 48, 126, 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: rgb(81.652173913, 99.5372670807, 206.847826087);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(35, 48, 126, 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: rgb(81.652173913, 99.5372670807, 206.847826087);
  box-shadow: 0 0 0 0.2rem rgba(35, 48, 126, 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 ~ .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(35, 48, 126, 0.25);
}
.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(35, 48, 126, 0.25);
}
.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(35, 48, 126, 0.25);
}
.custom-range::-moz-focus-outer {
  border: 0;
}
.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #23307e;
  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;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    transition: none;
  }
}
.custom-range::-webkit-slider-thumb {
  appearance: none;
}
.custom-range::-webkit-slider-thumb:active {
  background-color: rgb(121.5652173913, 135.3322981366, 217.9347826087);
}
.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: #23307e;
  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;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    transition: none;
  }
}
.custom-range::-moz-range-thumb {
  appearance: none;
}
.custom-range::-moz-range-thumb:active {
  background-color: rgb(121.5652173913, 135.3322981366, 217.9347826087);
}
.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: #23307e;
  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;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    transition: none;
  }
}
.custom-range::-ms-thumb {
  appearance: none;
}
.custom-range::-ms-thumb:active {
  background-color: rgb(121.5652173913, 135.3322981366, 217.9347826087);
}
.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: #23307e;
}

.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 {
  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 {
    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 {
    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 {
    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 {
    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 {
    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 {
    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 {
    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 {
    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;
  }
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}
.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  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,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' 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,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' 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: #23307e;
  background-color: #fff;
  border: 1px solid #dee2e6;
}
.page-link:hover {
  z-index: 2;
  color: rgb(18.3695652174, 25.1925465839, 66.1304347826);
  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(35, 48, 126, 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: #23307e;
  border-color: #23307e;
}
.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: #23307e;
}
a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: rgb(23.9130434783, 32.7950310559, 86.0869565217);
}
a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(35, 48, 126, 0.5);
}

.badge-secondary {
  color: #fff;
  background-color: #F35B04;
}
a.badge-secondary:hover, a.badge-secondary:focus {
  color: #fff;
  background-color: rgb(192.8259109312, 72.2105263158, 3.1740890688);
}
a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(243, 91, 4, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #07B55B;
}
a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: rgb(5.1010638298, 131.8989361702, 66.3138297872);
}
a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(7, 181, 91, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #097DE2;
}
a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  background-color: rgb(7.0468085106, 97.8723404255, 176.9531914894);
}
a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(9, 125, 226, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #FFB405;
}
a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: rgb(209, 146.3, 0);
}
a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 180, 5, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #E03128;
}
a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: rgb(186.1585365854, 34.6341463415, 26.8414634146);
}
a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(224, 49, 40, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #C3CAD9;
}
a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: rgb(163.7755102041, 174.4183673469, 197.2244897959);
}
a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(195, 202, 217, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #333333;
}
a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  background-color: rgb(25.5, 25.5, 25.5);
}
a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(51, 51, 51, 0.5);
}

.badge-fake-white {
  color: #212529;
  background-color: #F5F5F5;
}
a.badge-fake-white:hover, a.badge-fake-white:focus {
  color: #212529;
  background-color: rgb(219.5, 219.5, 219.5);
}
a.badge-fake-white:focus, a.badge-fake-white.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(245, 245, 245, 0.5);
}

.badge-xtremlight {
  color: #212529;
  background-color: #F3F3F9;
}
a.badge-xtremlight:hover, a.badge-xtremlight:focus {
  color: #212529;
  background-color: #d1d1e8;
}
a.badge-xtremlight:focus, a.badge-xtremlight.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(243, 243, 249, 0.5);
}

.badge-extralight {
  color: #212529;
  background-color: #E6E6E6;
}
a.badge-extralight:hover, a.badge-extralight:focus {
  color: #212529;
  background-color: rgb(204.5, 204.5, 204.5);
}
a.badge-extralight:focus, a.badge-extralight.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(230, 230, 230, 0.5);
}

.badge-extramedium {
  color: #fff;
  background-color: #444444;
}
a.badge-extramedium:hover, a.badge-extramedium:focus {
  color: #fff;
  background-color: rgb(42.5, 42.5, 42.5);
}
a.badge-extramedium:focus, a.badge-extramedium.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(68, 68, 68, 0.5);
}

.badge-title {
  color: #fff;
  background-color: #2E3333;
}
a.badge-title:hover, a.badge-title:focus {
  color: #fff;
  background-color: rgb(21.8144329897, 24.1855670103, 24.1855670103);
}
a.badge-title:focus, a.badge-title.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(46, 51, 51, 0.5);
}

.badge-facebook {
  color: #fff;
  background-color: #176CF1;
}
a.badge-facebook:hover, a.badge-facebook:focus {
  color: #fff;
  background-color: rgb(12.1219512195, 85.7195121951, 200.8780487805);
}
a.badge-facebook:focus, a.badge-facebook.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 108, 241, 0.5);
}

.badge-turquoise {
  color: #fff;
  background-color: #3574a5;
}
a.badge-turquoise:hover, a.badge-turquoise:focus {
  color: #fff;
  background-color: rgb(40.6009174312, 88.8623853211, 126.3990825688);
}
a.badge-turquoise:focus, a.badge-turquoise.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(53, 116, 165, 0.5);
}

.badge-medium {
  color: #fff;
  background-color: #8e8e8e;
}
a.badge-medium:hover, a.badge-medium:focus {
  color: #fff;
  background-color: rgb(116.5, 116.5, 116.5);
}
a.badge-medium:focus, a.badge-medium.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(142, 142, 142, 0.5);
}

.badge-purple {
  color: #212529;
  background-color: #e3e4fc;
}
a.badge-purple:hover, a.badge-purple:focus {
  color: #212529;
  background-color: rgb(180.935483871, 183.5806451613, 247.064516129);
}
a.badge-purple:focus, a.badge-purple.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(227, 228, 252, 0.5);
}

.badge-purple-shadow {
  color: #fff;
  background-color: #7b7eb5;
}
a.badge-purple-shadow:hover, a.badge-purple-shadow:focus {
  color: #fff;
  background-color: rgb(90.8834951456, 94.567961165, 162.1165048544);
}
a.badge-purple-shadow:focus, a.badge-purple-shadow.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(123, 126, 181, 0.5);
}

.badge-course-fr {
  color: #212529;
  background-color: #e5f2fc;
}
a.badge-course-fr:hover, a.badge-course-fr:focus {
  color: #212529;
  background-color: rgb(183.275862069, 219.1379310345, 246.724137931);
}
a.badge-course-fr:focus, a.badge-course-fr.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(229, 242, 252, 0.5);
}

.badge-trophy-unknow {
  color: #fff;
  background-color: #cd0000;
}
a.badge-trophy-unknow:hover, a.badge-trophy-unknow:focus {
  color: #fff;
  background-color: #9a0000;
}
a.badge-trophy-unknow:focus, a.badge-trophy-unknow.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(205, 0, 0, 0.5);
}

.badge-trophy-bronze {
  color: #fff;
  background-color: #614E1A;
}
a.badge-trophy-bronze:hover, a.badge-trophy-bronze:focus {
  color: #fff;
  background-color: rgb(56.7804878049, 45.6585365854, 15.2195121951);
}
a.badge-trophy-bronze:focus, a.badge-trophy-bronze.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(97, 78, 26, 0.5);
}

.badge-trophy-silver {
  color: #212529;
  background-color: #DADADA;
}
a.badge-trophy-silver:hover, a.badge-trophy-silver:focus {
  color: #212529;
  background-color: rgb(192.5, 192.5, 192.5);
}
a.badge-trophy-silver:focus, a.badge-trophy-silver.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(218, 218, 218, 0.5);
}

.badge-trophy-gold {
  color: #212529;
  background-color: #D79A10;
}
a.badge-trophy-gold:hover, a.badge-trophy-gold:focus {
  color: #212529;
  background-color: rgb(167.5324675325, 120, 12.4675324675);
}
a.badge-trophy-gold:focus, a.badge-trophy-gold.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(215, 154, 16, 0.5);
}

.badge-trophy-jade {
  color: #212529;
  background-color: #85B83F;
}
a.badge-trophy-jade:hover, a.badge-trophy-jade:focus {
  color: #212529;
  background-color: rgb(105.5384615385, 146.008097166, 49.991902834);
}
a.badge-trophy-jade:focus, a.badge-trophy-jade.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(133, 184, 63, 0.5);
}

.badge-bluesky {
  color: #212529;
  background-color: #7FBDF2;
}
a.badge-bluesky:hover, a.badge-bluesky:focus {
  color: #212529;
  background-color: rgb(80.7021276596, 165.1276595745, 237.2978723404);
}
a.badge-bluesky:focus, a.badge-bluesky.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(127, 189, 242, 0.5);
}

.badge-darklight {
  color: #fff;
  background-color: #707070;
}
a.badge-darklight:hover, a.badge-darklight:focus {
  color: #fff;
  background-color: rgb(86.5, 86.5, 86.5);
}
a.badge-darklight:focus, a.badge-darklight.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(112, 112, 112, 0.5);
}

.badge-extradark {
  color: #fff;
  background-color: #1C1C1C;
}
a.badge-extradark:hover, a.badge-extradark:focus {
  color: #fff;
  background-color: rgb(2.5, 2.5, 2.5);
}
a.badge-extradark:focus, a.badge-extradark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(28, 28, 28, 0.5);
}

.badge-pro-primary {
  color: #fff;
  background-color: #ec4a72;
}
a.badge-pro-primary:hover, a.badge-pro-primary:focus {
  color: #fff;
  background-color: rgb(231.155, 27.845, 78.045);
}
a.badge-pro-primary:focus, a.badge-pro-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(236, 74, 114, 0.5);
}

.badge-pro-secondary {
  color: #fff;
  background-color: #7f6ce3;
}
a.badge-pro-secondary:hover, a.badge-pro-secondary:focus {
  color: #fff;
  background-color: rgb(89.6971428571, 65.16, 218.84);
}
a.badge-pro-secondary:focus, a.badge-pro-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(127, 108, 227, 0.5);
}

.badge-pro-medium {
  color: #212529;
  background-color: #aeb1bb;
}
a.badge-pro-medium:hover, a.badge-pro-medium:focus {
  color: #212529;
  background-color: rgb(146.2751677852, 150.3020134228, 163.7248322148);
}
a.badge-pro-medium:focus, a.badge-pro-medium.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(174, 177, 187, 0.5);
}

.badge-light-purple {
  color: #212529;
  background-color: #a29bfe;
}
a.badge-light-purple:hover, a.badge-light-purple:focus {
  color: #212529;
  background-color: rgb(115.0396039604, 104.504950495, 253.495049505);
}
a.badge-light-purple:focus, a.badge-light-purple.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(162, 155, 254, 0.5);
}

.badge-dark-purple {
  color: #fff;
  background-color: #6c62e7;
}
a.badge-dark-purple:hover, a.badge-dark-purple:focus {
  color: #fff;
  background-color: rgb(66.5801104972, 53.7624309392, 224.2375690608);
}
a.badge-dark-purple:focus, a.badge-dark-purple.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 98, 231, 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: rgb(18.2, 24.96, 65.52);
  background-color: rgb(211, 213.6, 229.2);
  border-color: rgb(193.4, 197.04, 218.88);
}
.alert-primary hr {
  border-top-color: rgb(177.3255014327, 181.9153581662, 209.4544985673);
}
.alert-primary .alert-link {
  color: rgb(7.1130434783, 9.7550310559, 25.6069565217);
}

.alert-secondary {
  color: rgb(126.36, 47.32, 2.08);
  background-color: rgb(252.6, 222.2, 204.8);
  border-color: rgb(251.64, 209.08, 184.72);
}
.alert-secondary hr {
  border-top-color: rgb(250.4765019011, 193.1788593156, 160.3834980989);
}
.alert-secondary .alert-link {
  color: rgb(76.1859109312, 28.5305263158, 1.2540890688);
}

.alert-success {
  color: rgb(3.64, 94.12, 47.32);
  background-color: rgb(205.4, 240.2, 222.2);
  border-color: rgb(185.56, 234.28, 209.08);
}
.alert-success hr {
  border-top-color: rgb(165.9202484472, 228.4197515528, 196.0924223602);
}
.alert-success .alert-link {
  color: rgb(1.7410638298, 45.0189361702, 22.6338297872);
}

.alert-info {
  color: rgb(4.68, 65, 117.52);
  background-color: rgb(205.8, 229, 249.2);
  border-color: rgb(186.12, 218.6, 246.88);
}
.alert-info hr {
  border-top-color: rgb(163.3090909091, 206.5454545455, 244.1909090909);
}
.alert-info .alert-link {
  color: rgb(2.7268085106, 37.8723404255, 68.4731914894);
}

.alert-warning {
  color: rgb(132.6, 93.6, 2.6);
  background-color: #fff0cd;
  border-color: #ffeab9;
}
.alert-warning hr {
  border-top-color: rgb(255, 226.35, 159.5);
}
.alert-warning .alert-link {
  color: rgb(82.5807692308, 58.2923076923, 1.6192307692);
}

.alert-danger {
  color: rgb(116.48, 25.48, 20.8);
  background-color: rgb(248.8, 213.8, 212);
  border-color: rgb(246.32, 197.32, 194.8);
}
.alert-danger hr {
  border-top-color: rgb(243.1065853659, 175.9663414634, 172.5134146341);
}
.alert-danger .alert-link {
  color: rgb(73.2072727273, 16.0140909091, 13.0727272727);
}

.alert-light {
  color: rgb(101.4, 105.04, 112.84);
  background-color: rgb(243, 244.4, 247.4);
  border-color: rgb(238.2, 240.16, 244.36);
}
.alert-light hr {
  border-top-color: rgb(222.587755102, 226.3691836735, 234.472244898);
}
.alert-light .alert-link {
  color: rgb(77.2616504854, 80.0351456311, 85.9783495146);
}

.alert-dark {
  color: rgb(26.52, 26.52, 26.52);
  background-color: rgb(214.2, 214.2, 214.2);
  border-color: rgb(197.88, 197.88, 197.88);
}
.alert-dark hr {
  border-top-color: rgb(185.13, 185.13, 185.13);
}
.alert-dark .alert-link {
  color: rgb(1.02, 1.02, 1.02);
}

.alert-fake-white {
  color: rgb(127.4, 127.4, 127.4);
  background-color: #fdfdfd;
  border-color: rgb(252.2, 252.2, 252.2);
}
.alert-fake-white hr {
  border-top-color: rgb(239.45, 239.45, 239.45);
}
.alert-fake-white .alert-link {
  color: rgb(101.9, 101.9, 101.9);
}

.alert-xtremlight {
  color: rgb(126.36, 126.36, 129.48);
  background-color: rgb(252.6, 252.6, 253.8);
  border-color: rgb(251.64, 251.64, 253.32);
}
.alert-xtremlight hr {
  border-top-color: rgb(234.64, 234.64, 244.82);
}
.alert-xtremlight .alert-link {
  color: rgb(101.1627195467, 101.1627195467, 103.6772804533);
}

.alert-extralight {
  color: rgb(119.6, 119.6, 119.6);
  background-color: #fafafa;
  border-color: #f8f8f8;
}
.alert-extralight hr {
  border-top-color: rgb(235.25, 235.25, 235.25);
}
.alert-extralight .alert-link {
  color: rgb(94.1, 94.1, 94.1);
}

.alert-extramedium {
  color: rgb(35.36, 35.36, 35.36);
  background-color: rgb(217.6, 217.6, 217.6);
  border-color: rgb(202.64, 202.64, 202.64);
}
.alert-extramedium hr {
  border-top-color: rgb(189.89, 189.89, 189.89);
}
.alert-extramedium .alert-link {
  color: rgb(9.86, 9.86, 9.86);
}

.alert-title {
  color: rgb(23.92, 26.52, 26.52);
  background-color: rgb(213.2, 214.2, 214.2);
  border-color: rgb(196.48, 197.88, 197.88);
}
.alert-title hr {
  border-top-color: rgb(183.5756416465, 185.2843583535, 185.2843583535);
}
.alert-title .alert-link {
  color: black;
}

.alert-facebook {
  color: rgb(11.96, 56.16, 125.32);
  background-color: rgb(208.6, 225.6, 252.2);
  border-color: rgb(190.04, 213.84, 251.08);
}
.alert-facebook hr {
  border-top-color: rgb(165.9912195122, 198.602195122, 249.6287804878);
}
.alert-facebook .alert-link {
  color: rgb(7.5168181818, 35.2963636364, 78.7631818182);
}

.alert-turquoise {
  color: rgb(27.56, 60.32, 85.8);
  background-color: rgb(214.6, 227.2, 237);
  border-color: rgb(198.44, 216.08, 229.8);
}
.alert-turquoise hr {
  border-top-color: rgb(180.7995890411, 203.9413013699, 221.9404109589);
}
.alert-turquoise .alert-link {
  color: rgb(15.1609174312, 33.1823853211, 47.1990825688);
}

.alert-medium {
  color: rgb(73.84, 73.84, 73.84);
  background-color: rgb(232.4, 232.4, 232.4);
  border-color: rgb(223.36, 223.36, 223.36);
}
.alert-medium hr {
  border-top-color: rgb(210.61, 210.61, 210.61);
}
.alert-medium .alert-link {
  color: rgb(48.34, 48.34, 48.34);
}

.alert-purple {
  color: rgb(118.04, 118.56, 131.04);
  background-color: rgb(249.4, 249.6, 254.4);
  border-color: rgb(247.16, 247.44, 254.16);
}
.alert-purple hr {
  border-top-color: rgb(224.1277419355, 225.2303225806, 251.6922580645);
}
.alert-purple .alert-link {
  color: rgb(93.8708977035, 94.2844258873, 104.2091022965);
}

.alert-purple-shadow {
  color: rgb(63.96, 65.52, 94.12);
  background-color: rgb(228.6, 229.2, 240.2);
  border-color: rgb(218.04, 218.88, 234.28);
}
.alert-purple-shadow hr {
  border-top-color: rgb(201.7001941748, 202.9115533981, 225.1198058252);
}
.alert-purple-shadow .alert-link {
  color: rgb(43.3251315789, 44.3818421053, 63.7548684211);
}

.alert-course-fr {
  color: rgb(119.08, 125.84, 131.04);
  background-color: rgb(249.8, 252.4, 254.4);
  border-color: rgb(247.72, 251.36, 254.16);
}
.alert-course-fr hr {
  border-top-color: rgb(224.8579310345, 239.9289655172, 251.5220689655);
}
.alert-course-fr .alert-link {
  color: rgb(94.7993347193, 100.180956341, 104.3206652807);
}

.alert-trophy-unknow {
  color: rgb(106.6, 0, 0);
  background-color: #f5cccc;
  border-color: rgb(241, 183.6, 183.6);
}
.alert-trophy-unknow hr {
  border-top-color: rgb(236.8196721311, 162.2803278689, 162.2803278689);
}
.alert-trophy-unknow .alert-link {
  color: rgb(55.6, 0, 0);
}

.alert-trophy-bronze {
  color: rgb(50.44, 40.56, 13.52);
  background-color: rgb(223.4, 219.6, 209.2);
  border-color: rgb(210.76, 205.44, 190.88);
}
.alert-trophy-bronze hr {
  border-top-color: rgb(200.3491472868, 193.7772093023, 175.7908527132);
}
.alert-trophy-bronze .alert-link {
  color: rgb(10.2204878049, 8.2185365854, 2.7395121951);
}

.alert-trophy-silver {
  color: rgb(113.36, 113.36, 113.36);
  background-color: rgb(247.6, 247.6, 247.6);
  border-color: rgb(244.64, 244.64, 244.64);
}
.alert-trophy-silver hr {
  border-top-color: rgb(231.89, 231.89, 231.89);
}
.alert-trophy-silver .alert-link {
  color: rgb(87.86, 87.86, 87.86);
}

.alert-trophy-gold {
  color: rgb(111.8, 80.08, 8.32);
  background-color: rgb(247, 234.8, 207.2);
  border-color: rgb(243.8, 226.72, 188.08);
}
.alert-trophy-gold hr {
  border-top-color: rgb(240.1440860215, 217.4888172043, 166.2359139785);
}
.alert-trophy-gold .alert-link {
  color: rgb(64.3324675325, 46.08, 4.7875324675);
}

.alert-trophy-jade {
  color: rgb(69.16, 95.68, 32.76);
  background-color: rgb(230.6, 240.8, 216.6);
  border-color: rgb(220.84, 235.12, 201.24);
}
.alert-trophy-jade hr {
  border-top-color: rgb(209.0111026616, 228.2359695817, 182.6240304183);
}
.alert-trophy-jade .alert-link {
  color: rgb(41.6984615385, 57.688097166, 19.751902834);
}

.alert-bluesky {
  color: rgb(66.04, 98.28, 125.84);
  background-color: rgb(229.4, 241.8, 252.4);
  border-color: rgb(219.16, 236.52, 251.36);
}
.alert-bluesky hr {
  border-top-color: rgb(196.0110638298, 224.5838297872, 249.0089361702);
}
.alert-bluesky .alert-link {
  color: rgb(48.4871544715, 72.1580487805, 92.3928455285);
}

.alert-darklight {
  color: rgb(58.24, 58.24, 58.24);
  background-color: rgb(226.4, 226.4, 226.4);
  border-color: rgb(214.96, 214.96, 214.96);
}
.alert-darklight hr {
  border-top-color: rgb(202.21, 202.21, 202.21);
}
.alert-darklight .alert-link {
  color: rgb(32.74, 32.74, 32.74);
}

.alert-extradark {
  color: rgb(14.56, 14.56, 14.56);
  background-color: rgb(209.6, 209.6, 209.6);
  border-color: rgb(191.44, 191.44, 191.44);
}
.alert-extradark hr {
  border-top-color: rgb(178.69, 178.69, 178.69);
}
.alert-extradark .alert-link {
  color: black;
}

.alert-pro-primary {
  color: rgb(122.72, 38.48, 59.28);
  background-color: rgb(251.2, 218.8, 226.8);
  border-color: rgb(249.68, 204.32, 215.52);
}
.alert-pro-primary hr {
  border-top-color: rgb(247.2575, 181.2425, 197.5425);
}
.alert-pro-primary .alert-link {
  color: rgb(83.8941935484, 26.3058064516, 40.5251612903);
}

.alert-pro-secondary {
  color: rgb(66.04, 56.16, 118.04);
  background-color: rgb(229.4, 225.6, 249.4);
  border-color: rgb(219.16, 213.84, 247.16);
}
.alert-pro-secondary hr {
  border-top-color: rgb(200.5085714286, 192.42, 243.08);
}
.alert-pro-secondary .alert-link {
  color: rgb(46.7056716418, 39.7182089552, 83.4817910448);
}

.alert-pro-medium {
  color: rgb(90.48, 92.04, 97.24);
  background-color: rgb(238.8, 239.4, 241.4);
  border-color: rgb(232.32, 233.16, 235.96);
}
.alert-pro-medium hr {
  border-top-color: rgb(218.4575838926, 219.8110067114, 224.3224161074);
}
.alert-pro-medium .alert-link {
  color: rgb(65.8982825485, 67.0344598338, 70.8217174515);
}

.alert-light-purple {
  color: rgb(84.24, 80.6, 132.08);
  background-color: rgb(236.4, 235, 254.8);
  border-color: rgb(228.96, 227, 254.72);
}
.alert-light-purple hr {
  border-top-color: rgb(205.4798019802, 201.7524752475, 254.4675247525);
}
.alert-light-purple .alert-link {
  color: rgb(64.0395110024, 61.2723716381, 100.4076283619);
}

.alert-dark-purple {
  color: rgb(56.16, 50.96, 120.12);
  background-color: rgb(225.6, 223.6, 250.2);
  border-color: rgb(213.84, 211.04, 248.28);
}
.alert-dark-purple hr {
  border-top-color: rgb(193.1300552486, 188.9212154696, 244.8987845304);
}
.alert-dark-purple .alert-link {
  color: rgb(39.4183586626, 35.7685106383, 84.3114893617);
}

@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: #23307e;
  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: #23307e;
  border-color: #23307e;
}
.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;
  }
}
.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: rgb(18.2, 24.96, 65.52);
  background-color: rgb(193.4, 197.04, 218.88);
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: rgb(18.2, 24.96, 65.52);
  background-color: rgb(177.3255014327, 181.9153581662, 209.4544985673);
}
.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: rgb(18.2, 24.96, 65.52);
  border-color: rgb(18.2, 24.96, 65.52);
}

.list-group-item-secondary {
  color: rgb(126.36, 47.32, 2.08);
  background-color: rgb(251.64, 209.08, 184.72);
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: rgb(126.36, 47.32, 2.08);
  background-color: rgb(250.4765019011, 193.1788593156, 160.3834980989);
}
.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: rgb(126.36, 47.32, 2.08);
  border-color: rgb(126.36, 47.32, 2.08);
}

.list-group-item-success {
  color: rgb(3.64, 94.12, 47.32);
  background-color: rgb(185.56, 234.28, 209.08);
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: rgb(3.64, 94.12, 47.32);
  background-color: rgb(165.9202484472, 228.4197515528, 196.0924223602);
}
.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: rgb(3.64, 94.12, 47.32);
  border-color: rgb(3.64, 94.12, 47.32);
}

.list-group-item-info {
  color: rgb(4.68, 65, 117.52);
  background-color: rgb(186.12, 218.6, 246.88);
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: rgb(4.68, 65, 117.52);
  background-color: rgb(163.3090909091, 206.5454545455, 244.1909090909);
}
.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: rgb(4.68, 65, 117.52);
  border-color: rgb(4.68, 65, 117.52);
}

.list-group-item-warning {
  color: rgb(132.6, 93.6, 2.6);
  background-color: #ffeab9;
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: rgb(132.6, 93.6, 2.6);
  background-color: rgb(255, 226.35, 159.5);
}
.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: rgb(132.6, 93.6, 2.6);
  border-color: rgb(132.6, 93.6, 2.6);
}

.list-group-item-danger {
  color: rgb(116.48, 25.48, 20.8);
  background-color: rgb(246.32, 197.32, 194.8);
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: rgb(116.48, 25.48, 20.8);
  background-color: rgb(243.1065853659, 175.9663414634, 172.5134146341);
}
.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: rgb(116.48, 25.48, 20.8);
  border-color: rgb(116.48, 25.48, 20.8);
}

.list-group-item-light {
  color: rgb(101.4, 105.04, 112.84);
  background-color: rgb(238.2, 240.16, 244.36);
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: rgb(101.4, 105.04, 112.84);
  background-color: rgb(222.587755102, 226.3691836735, 234.472244898);
}
.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: rgb(101.4, 105.04, 112.84);
  border-color: rgb(101.4, 105.04, 112.84);
}

.list-group-item-dark {
  color: rgb(26.52, 26.52, 26.52);
  background-color: rgb(197.88, 197.88, 197.88);
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: rgb(26.52, 26.52, 26.52);
  background-color: rgb(185.13, 185.13, 185.13);
}
.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: rgb(26.52, 26.52, 26.52);
  border-color: rgb(26.52, 26.52, 26.52);
}

.list-group-item-fake-white {
  color: rgb(127.4, 127.4, 127.4);
  background-color: rgb(252.2, 252.2, 252.2);
}
.list-group-item-fake-white.list-group-item-action:hover, .list-group-item-fake-white.list-group-item-action:focus {
  color: rgb(127.4, 127.4, 127.4);
  background-color: rgb(239.45, 239.45, 239.45);
}
.list-group-item-fake-white.list-group-item-action.active {
  color: #fff;
  background-color: rgb(127.4, 127.4, 127.4);
  border-color: rgb(127.4, 127.4, 127.4);
}

.list-group-item-xtremlight {
  color: rgb(126.36, 126.36, 129.48);
  background-color: rgb(251.64, 251.64, 253.32);
}
.list-group-item-xtremlight.list-group-item-action:hover, .list-group-item-xtremlight.list-group-item-action:focus {
  color: rgb(126.36, 126.36, 129.48);
  background-color: rgb(234.64, 234.64, 244.82);
}
.list-group-item-xtremlight.list-group-item-action.active {
  color: #fff;
  background-color: rgb(126.36, 126.36, 129.48);
  border-color: rgb(126.36, 126.36, 129.48);
}

.list-group-item-extralight {
  color: rgb(119.6, 119.6, 119.6);
  background-color: #f8f8f8;
}
.list-group-item-extralight.list-group-item-action:hover, .list-group-item-extralight.list-group-item-action:focus {
  color: rgb(119.6, 119.6, 119.6);
  background-color: rgb(235.25, 235.25, 235.25);
}
.list-group-item-extralight.list-group-item-action.active {
  color: #fff;
  background-color: rgb(119.6, 119.6, 119.6);
  border-color: rgb(119.6, 119.6, 119.6);
}

.list-group-item-extramedium {
  color: rgb(35.36, 35.36, 35.36);
  background-color: rgb(202.64, 202.64, 202.64);
}
.list-group-item-extramedium.list-group-item-action:hover, .list-group-item-extramedium.list-group-item-action:focus {
  color: rgb(35.36, 35.36, 35.36);
  background-color: rgb(189.89, 189.89, 189.89);
}
.list-group-item-extramedium.list-group-item-action.active {
  color: #fff;
  background-color: rgb(35.36, 35.36, 35.36);
  border-color: rgb(35.36, 35.36, 35.36);
}

.list-group-item-title {
  color: rgb(23.92, 26.52, 26.52);
  background-color: rgb(196.48, 197.88, 197.88);
}
.list-group-item-title.list-group-item-action:hover, .list-group-item-title.list-group-item-action:focus {
  color: rgb(23.92, 26.52, 26.52);
  background-color: rgb(183.5756416465, 185.2843583535, 185.2843583535);
}
.list-group-item-title.list-group-item-action.active {
  color: #fff;
  background-color: rgb(23.92, 26.52, 26.52);
  border-color: rgb(23.92, 26.52, 26.52);
}

.list-group-item-facebook {
  color: rgb(11.96, 56.16, 125.32);
  background-color: rgb(190.04, 213.84, 251.08);
}
.list-group-item-facebook.list-group-item-action:hover, .list-group-item-facebook.list-group-item-action:focus {
  color: rgb(11.96, 56.16, 125.32);
  background-color: rgb(165.9912195122, 198.602195122, 249.6287804878);
}
.list-group-item-facebook.list-group-item-action.active {
  color: #fff;
  background-color: rgb(11.96, 56.16, 125.32);
  border-color: rgb(11.96, 56.16, 125.32);
}

.list-group-item-turquoise {
  color: rgb(27.56, 60.32, 85.8);
  background-color: rgb(198.44, 216.08, 229.8);
}
.list-group-item-turquoise.list-group-item-action:hover, .list-group-item-turquoise.list-group-item-action:focus {
  color: rgb(27.56, 60.32, 85.8);
  background-color: rgb(180.7995890411, 203.9413013699, 221.9404109589);
}
.list-group-item-turquoise.list-group-item-action.active {
  color: #fff;
  background-color: rgb(27.56, 60.32, 85.8);
  border-color: rgb(27.56, 60.32, 85.8);
}

.list-group-item-medium {
  color: rgb(73.84, 73.84, 73.84);
  background-color: rgb(223.36, 223.36, 223.36);
}
.list-group-item-medium.list-group-item-action:hover, .list-group-item-medium.list-group-item-action:focus {
  color: rgb(73.84, 73.84, 73.84);
  background-color: rgb(210.61, 210.61, 210.61);
}
.list-group-item-medium.list-group-item-action.active {
  color: #fff;
  background-color: rgb(73.84, 73.84, 73.84);
  border-color: rgb(73.84, 73.84, 73.84);
}

.list-group-item-purple {
  color: rgb(118.04, 118.56, 131.04);
  background-color: rgb(247.16, 247.44, 254.16);
}
.list-group-item-purple.list-group-item-action:hover, .list-group-item-purple.list-group-item-action:focus {
  color: rgb(118.04, 118.56, 131.04);
  background-color: rgb(224.1277419355, 225.2303225806, 251.6922580645);
}
.list-group-item-purple.list-group-item-action.active {
  color: #fff;
  background-color: rgb(118.04, 118.56, 131.04);
  border-color: rgb(118.04, 118.56, 131.04);
}

.list-group-item-purple-shadow {
  color: rgb(63.96, 65.52, 94.12);
  background-color: rgb(218.04, 218.88, 234.28);
}
.list-group-item-purple-shadow.list-group-item-action:hover, .list-group-item-purple-shadow.list-group-item-action:focus {
  color: rgb(63.96, 65.52, 94.12);
  background-color: rgb(201.7001941748, 202.9115533981, 225.1198058252);
}
.list-group-item-purple-shadow.list-group-item-action.active {
  color: #fff;
  background-color: rgb(63.96, 65.52, 94.12);
  border-color: rgb(63.96, 65.52, 94.12);
}

.list-group-item-course-fr {
  color: rgb(119.08, 125.84, 131.04);
  background-color: rgb(247.72, 251.36, 254.16);
}
.list-group-item-course-fr.list-group-item-action:hover, .list-group-item-course-fr.list-group-item-action:focus {
  color: rgb(119.08, 125.84, 131.04);
  background-color: rgb(224.8579310345, 239.9289655172, 251.5220689655);
}
.list-group-item-course-fr.list-group-item-action.active {
  color: #fff;
  background-color: rgb(119.08, 125.84, 131.04);
  border-color: rgb(119.08, 125.84, 131.04);
}

.list-group-item-trophy-unknow {
  color: rgb(106.6, 0, 0);
  background-color: rgb(241, 183.6, 183.6);
}
.list-group-item-trophy-unknow.list-group-item-action:hover, .list-group-item-trophy-unknow.list-group-item-action:focus {
  color: rgb(106.6, 0, 0);
  background-color: rgb(236.8196721311, 162.2803278689, 162.2803278689);
}
.list-group-item-trophy-unknow.list-group-item-action.active {
  color: #fff;
  background-color: rgb(106.6, 0, 0);
  border-color: rgb(106.6, 0, 0);
}

.list-group-item-trophy-bronze {
  color: rgb(50.44, 40.56, 13.52);
  background-color: rgb(210.76, 205.44, 190.88);
}
.list-group-item-trophy-bronze.list-group-item-action:hover, .list-group-item-trophy-bronze.list-group-item-action:focus {
  color: rgb(50.44, 40.56, 13.52);
  background-color: rgb(200.3491472868, 193.7772093023, 175.7908527132);
}
.list-group-item-trophy-bronze.list-group-item-action.active {
  color: #fff;
  background-color: rgb(50.44, 40.56, 13.52);
  border-color: rgb(50.44, 40.56, 13.52);
}

.list-group-item-trophy-silver {
  color: rgb(113.36, 113.36, 113.36);
  background-color: rgb(244.64, 244.64, 244.64);
}
.list-group-item-trophy-silver.list-group-item-action:hover, .list-group-item-trophy-silver.list-group-item-action:focus {
  color: rgb(113.36, 113.36, 113.36);
  background-color: rgb(231.89, 231.89, 231.89);
}
.list-group-item-trophy-silver.list-group-item-action.active {
  color: #fff;
  background-color: rgb(113.36, 113.36, 113.36);
  border-color: rgb(113.36, 113.36, 113.36);
}

.list-group-item-trophy-gold {
  color: rgb(111.8, 80.08, 8.32);
  background-color: rgb(243.8, 226.72, 188.08);
}
.list-group-item-trophy-gold.list-group-item-action:hover, .list-group-item-trophy-gold.list-group-item-action:focus {
  color: rgb(111.8, 80.08, 8.32);
  background-color: rgb(240.1440860215, 217.4888172043, 166.2359139785);
}
.list-group-item-trophy-gold.list-group-item-action.active {
  color: #fff;
  background-color: rgb(111.8, 80.08, 8.32);
  border-color: rgb(111.8, 80.08, 8.32);
}

.list-group-item-trophy-jade {
  color: rgb(69.16, 95.68, 32.76);
  background-color: rgb(220.84, 235.12, 201.24);
}
.list-group-item-trophy-jade.list-group-item-action:hover, .list-group-item-trophy-jade.list-group-item-action:focus {
  color: rgb(69.16, 95.68, 32.76);
  background-color: rgb(209.0111026616, 228.2359695817, 182.6240304183);
}
.list-group-item-trophy-jade.list-group-item-action.active {
  color: #fff;
  background-color: rgb(69.16, 95.68, 32.76);
  border-color: rgb(69.16, 95.68, 32.76);
}

.list-group-item-bluesky {
  color: rgb(66.04, 98.28, 125.84);
  background-color: rgb(219.16, 236.52, 251.36);
}
.list-group-item-bluesky.list-group-item-action:hover, .list-group-item-bluesky.list-group-item-action:focus {
  color: rgb(66.04, 98.28, 125.84);
  background-color: rgb(196.0110638298, 224.5838297872, 249.0089361702);
}
.list-group-item-bluesky.list-group-item-action.active {
  color: #fff;
  background-color: rgb(66.04, 98.28, 125.84);
  border-color: rgb(66.04, 98.28, 125.84);
}

.list-group-item-darklight {
  color: rgb(58.24, 58.24, 58.24);
  background-color: rgb(214.96, 214.96, 214.96);
}
.list-group-item-darklight.list-group-item-action:hover, .list-group-item-darklight.list-group-item-action:focus {
  color: rgb(58.24, 58.24, 58.24);
  background-color: rgb(202.21, 202.21, 202.21);
}
.list-group-item-darklight.list-group-item-action.active {
  color: #fff;
  background-color: rgb(58.24, 58.24, 58.24);
  border-color: rgb(58.24, 58.24, 58.24);
}

.list-group-item-extradark {
  color: rgb(14.56, 14.56, 14.56);
  background-color: rgb(191.44, 191.44, 191.44);
}
.list-group-item-extradark.list-group-item-action:hover, .list-group-item-extradark.list-group-item-action:focus {
  color: rgb(14.56, 14.56, 14.56);
  background-color: rgb(178.69, 178.69, 178.69);
}
.list-group-item-extradark.list-group-item-action.active {
  color: #fff;
  background-color: rgb(14.56, 14.56, 14.56);
  border-color: rgb(14.56, 14.56, 14.56);
}

.list-group-item-pro-primary {
  color: rgb(122.72, 38.48, 59.28);
  background-color: rgb(249.68, 204.32, 215.52);
}
.list-group-item-pro-primary.list-group-item-action:hover, .list-group-item-pro-primary.list-group-item-action:focus {
  color: rgb(122.72, 38.48, 59.28);
  background-color: rgb(247.2575, 181.2425, 197.5425);
}
.list-group-item-pro-primary.list-group-item-action.active {
  color: #fff;
  background-color: rgb(122.72, 38.48, 59.28);
  border-color: rgb(122.72, 38.48, 59.28);
}

.list-group-item-pro-secondary {
  color: rgb(66.04, 56.16, 118.04);
  background-color: rgb(219.16, 213.84, 247.16);
}
.list-group-item-pro-secondary.list-group-item-action:hover, .list-group-item-pro-secondary.list-group-item-action:focus {
  color: rgb(66.04, 56.16, 118.04);
  background-color: rgb(200.5085714286, 192.42, 243.08);
}
.list-group-item-pro-secondary.list-group-item-action.active {
  color: #fff;
  background-color: rgb(66.04, 56.16, 118.04);
  border-color: rgb(66.04, 56.16, 118.04);
}

.list-group-item-pro-medium {
  color: rgb(90.48, 92.04, 97.24);
  background-color: rgb(232.32, 233.16, 235.96);
}
.list-group-item-pro-medium.list-group-item-action:hover, .list-group-item-pro-medium.list-group-item-action:focus {
  color: rgb(90.48, 92.04, 97.24);
  background-color: rgb(218.4575838926, 219.8110067114, 224.3224161074);
}
.list-group-item-pro-medium.list-group-item-action.active {
  color: #fff;
  background-color: rgb(90.48, 92.04, 97.24);
  border-color: rgb(90.48, 92.04, 97.24);
}

.list-group-item-light-purple {
  color: rgb(84.24, 80.6, 132.08);
  background-color: rgb(228.96, 227, 254.72);
}
.list-group-item-light-purple.list-group-item-action:hover, .list-group-item-light-purple.list-group-item-action:focus {
  color: rgb(84.24, 80.6, 132.08);
  background-color: rgb(205.4798019802, 201.7524752475, 254.4675247525);
}
.list-group-item-light-purple.list-group-item-action.active {
  color: #fff;
  background-color: rgb(84.24, 80.6, 132.08);
  border-color: rgb(84.24, 80.6, 132.08);
}

.list-group-item-dark-purple {
  color: rgb(56.16, 50.96, 120.12);
  background-color: rgb(213.84, 211.04, 248.28);
}
.list-group-item-dark-purple.list-group-item-action:hover, .list-group-item-dark-purple.list-group-item-action:focus {
  color: rgb(56.16, 50.96, 120.12);
  background-color: rgb(193.1300552486, 188.9212154696, 244.8987845304);
}
.list-group-item-dark-purple.list-group-item-action.active {
  color: #fff;
  background-color: rgb(56.16, 50.96, 120.12);
  border-color: rgb(56.16, 50.96, 120.12);
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.5;
}
.close:hover {
  color: #000;
  text-decoration: none;
}
.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: 0.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;
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.fade .modal-dialog {
  transform: translate(0, -50px);
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  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 rgb(247.35, 247.35, 247.35);
}

.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: rgb(247.35, 247.35, 247.35);
  border-bottom: 1px solid rgb(234.6, 234.6, 234.6);
  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: 0.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: 0.75s linear infinite spinner-border;
}

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

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

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

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    animation-duration: 1.5s;
  }
}
.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: #23307e !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: rgb(23.9130434783, 32.7950310559, 86.0869565217) !important;
}

.bg-secondary {
  background-color: #F35B04 !important;
}

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: rgb(192.8259109312, 72.2105263158, 3.1740890688) !important;
}

.bg-success {
  background-color: #07B55B !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: rgb(5.1010638298, 131.8989361702, 66.3138297872) !important;
}

.bg-info {
  background-color: #097DE2 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: rgb(7.0468085106, 97.8723404255, 176.9531914894) !important;
}

.bg-warning {
  background-color: #FFB405 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: rgb(209, 146.3, 0) !important;
}

.bg-danger {
  background-color: #E03128 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: rgb(186.1585365854, 34.6341463415, 26.8414634146) !important;
}

.bg-light {
  background-color: #C3CAD9 !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: rgb(163.7755102041, 174.4183673469, 197.2244897959) !important;
}

.bg-dark {
  background-color: #333333 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: rgb(25.5, 25.5, 25.5) !important;
}

.bg-fake-white {
  background-color: #F5F5F5 !important;
}

a.bg-fake-white:hover, a.bg-fake-white:focus,
button.bg-fake-white:hover,
button.bg-fake-white:focus {
  background-color: rgb(219.5, 219.5, 219.5) !important;
}

.bg-xtremlight {
  background-color: #F3F3F9 !important;
}

a.bg-xtremlight:hover, a.bg-xtremlight:focus,
button.bg-xtremlight:hover,
button.bg-xtremlight:focus {
  background-color: #d1d1e8 !important;
}

.bg-extralight {
  background-color: #E6E6E6 !important;
}

a.bg-extralight:hover, a.bg-extralight:focus,
button.bg-extralight:hover,
button.bg-extralight:focus {
  background-color: rgb(204.5, 204.5, 204.5) !important;
}

.bg-extramedium {
  background-color: #444444 !important;
}

a.bg-extramedium:hover, a.bg-extramedium:focus,
button.bg-extramedium:hover,
button.bg-extramedium:focus {
  background-color: rgb(42.5, 42.5, 42.5) !important;
}

.bg-title {
  background-color: #2E3333 !important;
}

a.bg-title:hover, a.bg-title:focus,
button.bg-title:hover,
button.bg-title:focus {
  background-color: rgb(21.8144329897, 24.1855670103, 24.1855670103) !important;
}

.bg-facebook {
  background-color: #176CF1 !important;
}

a.bg-facebook:hover, a.bg-facebook:focus,
button.bg-facebook:hover,
button.bg-facebook:focus {
  background-color: rgb(12.1219512195, 85.7195121951, 200.8780487805) !important;
}

.bg-turquoise {
  background-color: #3574a5 !important;
}

a.bg-turquoise:hover, a.bg-turquoise:focus,
button.bg-turquoise:hover,
button.bg-turquoise:focus {
  background-color: rgb(40.6009174312, 88.8623853211, 126.3990825688) !important;
}

.bg-medium {
  background-color: #8e8e8e !important;
}

a.bg-medium:hover, a.bg-medium:focus,
button.bg-medium:hover,
button.bg-medium:focus {
  background-color: rgb(116.5, 116.5, 116.5) !important;
}

.bg-purple {
  background-color: #e3e4fc !important;
}

a.bg-purple:hover, a.bg-purple:focus,
button.bg-purple:hover,
button.bg-purple:focus {
  background-color: rgb(180.935483871, 183.5806451613, 247.064516129) !important;
}

.bg-purple-shadow {
  background-color: #7b7eb5 !important;
}

a.bg-purple-shadow:hover, a.bg-purple-shadow:focus,
button.bg-purple-shadow:hover,
button.bg-purple-shadow:focus {
  background-color: rgb(90.8834951456, 94.567961165, 162.1165048544) !important;
}

.bg-course-fr {
  background-color: #e5f2fc !important;
}

a.bg-course-fr:hover, a.bg-course-fr:focus,
button.bg-course-fr:hover,
button.bg-course-fr:focus {
  background-color: rgb(183.275862069, 219.1379310345, 246.724137931) !important;
}

.bg-trophy-unknow {
  background-color: #cd0000 !important;
}

a.bg-trophy-unknow:hover, a.bg-trophy-unknow:focus,
button.bg-trophy-unknow:hover,
button.bg-trophy-unknow:focus {
  background-color: #9a0000 !important;
}

.bg-trophy-bronze {
  background-color: #614E1A !important;
}

a.bg-trophy-bronze:hover, a.bg-trophy-bronze:focus,
button.bg-trophy-bronze:hover,
button.bg-trophy-bronze:focus {
  background-color: rgb(56.7804878049, 45.6585365854, 15.2195121951) !important;
}

.bg-trophy-silver {
  background-color: #DADADA !important;
}

a.bg-trophy-silver:hover, a.bg-trophy-silver:focus,
button.bg-trophy-silver:hover,
button.bg-trophy-silver:focus {
  background-color: rgb(192.5, 192.5, 192.5) !important;
}

.bg-trophy-gold {
  background-color: #D79A10 !important;
}

a.bg-trophy-gold:hover, a.bg-trophy-gold:focus,
button.bg-trophy-gold:hover,
button.bg-trophy-gold:focus {
  background-color: rgb(167.5324675325, 120, 12.4675324675) !important;
}

.bg-trophy-jade {
  background-color: #85B83F !important;
}

a.bg-trophy-jade:hover, a.bg-trophy-jade:focus,
button.bg-trophy-jade:hover,
button.bg-trophy-jade:focus {
  background-color: rgb(105.5384615385, 146.008097166, 49.991902834) !important;
}

.bg-bluesky {
  background-color: #7FBDF2 !important;
}

a.bg-bluesky:hover, a.bg-bluesky:focus,
button.bg-bluesky:hover,
button.bg-bluesky:focus {
  background-color: rgb(80.7021276596, 165.1276595745, 237.2978723404) !important;
}

.bg-darklight {
  background-color: #707070 !important;
}

a.bg-darklight:hover, a.bg-darklight:focus,
button.bg-darklight:hover,
button.bg-darklight:focus {
  background-color: rgb(86.5, 86.5, 86.5) !important;
}

.bg-extradark {
  background-color: #1C1C1C !important;
}

a.bg-extradark:hover, a.bg-extradark:focus,
button.bg-extradark:hover,
button.bg-extradark:focus {
  background-color: rgb(2.5, 2.5, 2.5) !important;
}

.bg-pro-primary {
  background-color: #ec4a72 !important;
}

a.bg-pro-primary:hover, a.bg-pro-primary:focus,
button.bg-pro-primary:hover,
button.bg-pro-primary:focus {
  background-color: rgb(231.155, 27.845, 78.045) !important;
}

.bg-pro-secondary {
  background-color: #7f6ce3 !important;
}

a.bg-pro-secondary:hover, a.bg-pro-secondary:focus,
button.bg-pro-secondary:hover,
button.bg-pro-secondary:focus {
  background-color: rgb(89.6971428571, 65.16, 218.84) !important;
}

.bg-pro-medium {
  background-color: #aeb1bb !important;
}

a.bg-pro-medium:hover, a.bg-pro-medium:focus,
button.bg-pro-medium:hover,
button.bg-pro-medium:focus {
  background-color: rgb(146.2751677852, 150.3020134228, 163.7248322148) !important;
}

.bg-light-purple {
  background-color: #a29bfe !important;
}

a.bg-light-purple:hover, a.bg-light-purple:focus,
button.bg-light-purple:hover,
button.bg-light-purple:focus {
  background-color: rgb(115.0396039604, 104.504950495, 253.495049505) !important;
}

.bg-dark-purple {
  background-color: #6c62e7 !important;
}

a.bg-dark-purple:hover, a.bg-dark-purple:focus,
button.bg-dark-purple:hover,
button.bg-dark-purple:focus {
  background-color: rgb(66.5801104972, 53.7624309392, 224.2375690608) !important;
}

.bg-white {
  background-color: #fff !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: #23307e !important;
}

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

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

.border-info {
  border-color: #097DE2 !important;
}

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

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

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

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

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

.border-xtremlight {
  border-color: #F3F3F9 !important;
}

.border-extralight {
  border-color: #E6E6E6 !important;
}

.border-extramedium {
  border-color: #444444 !important;
}

.border-title {
  border-color: #2E3333 !important;
}

.border-facebook {
  border-color: #176CF1 !important;
}

.border-turquoise {
  border-color: #3574a5 !important;
}

.border-medium {
  border-color: #8e8e8e !important;
}

.border-purple {
  border-color: #e3e4fc !important;
}

.border-purple-shadow {
  border-color: #7b7eb5 !important;
}

.border-course-fr {
  border-color: #e5f2fc !important;
}

.border-trophy-unknow {
  border-color: #cd0000 !important;
}

.border-trophy-bronze {
  border-color: #614E1A !important;
}

.border-trophy-silver {
  border-color: #DADADA !important;
}

.border-trophy-gold {
  border-color: #D79A10 !important;
}

.border-trophy-jade {
  border-color: #85B83F !important;
}

.border-bluesky {
  border-color: #7FBDF2 !important;
}

.border-darklight {
  border-color: #707070 !important;
}

.border-extradark {
  border-color: #1C1C1C !important;
}

.border-pro-primary {
  border-color: #ec4a72 !important;
}

.border-pro-secondary {
  border-color: #7f6ce3 !important;
}

.border-pro-medium {
  border-color: #aeb1bb !important;
}

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

.border-dark-purple {
  border-color: #6c62e7 !important;
}

.border-white {
  border-color: #fff !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 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.85714286%;
}

.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;
  }
}
.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;
  }
}
.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;
  }
}
.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;
  }
}
.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: #fff !important;
}

.text-primary {
  color: #23307e !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: rgb(18.3695652174, 25.1925465839, 66.1304347826) !important;
}

.text-secondary {
  color: #F35B04 !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: rgb(167.7388663968, 62.8157894737, 2.7611336032) !important;
}

.text-success {
  color: #07B55B !important;
}

a.text-success:hover, a.text-success:focus {
  color: rgb(4.1515957447, 107.3484042553, 53.9707446809) !important;
}

.text-info {
  color: #097DE2 !important;
}

a.text-info:hover, a.text-info:focus {
  color: rgb(6.070212766, 84.3085106383, 152.429787234) !important;
}

.text-warning {
  color: #FFB405 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: rgb(183.5, 128.45, 0) !important;
}

.text-danger {
  color: #E03128 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: rgb(163.8719512195, 30.487804878, 23.6280487805) !important;
}

.text-light {
  color: #C3CAD9 !important;
}

a.text-light:hover, a.text-light:focus {
  color: rgb(148.1632653061, 160.6275510204, 187.3367346939) !important;
}

.text-dark {
  color: #333333 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: rgb(12.75, 12.75, 12.75) !important;
}

.text-fake-white {
  color: #F5F5F5 !important;
}

a.text-fake-white:hover, a.text-fake-white:focus {
  color: rgb(206.75, 206.75, 206.75) !important;
}

.text-xtremlight {
  color: #F3F3F9 !important;
}

a.text-xtremlight:hover, a.text-xtremlight:focus {
  color: rgb(192, 192, 223.5) !important;
}

.text-extralight {
  color: #E6E6E6 !important;
}

a.text-extralight:hover, a.text-extralight:focus {
  color: rgb(191.75, 191.75, 191.75) !important;
}

.text-extramedium {
  color: #444444 !important;
}

a.text-extramedium:hover, a.text-extramedium:focus {
  color: rgb(29.75, 29.75, 29.75) !important;
}

.text-title {
  color: #2E3333 !important;
}

a.text-title:hover, a.text-title:focus {
  color: rgb(9.7216494845, 10.7783505155, 10.7783505155) !important;
}

.text-facebook {
  color: #176CF1 !important;
}

a.text-facebook:hover, a.text-facebook:focus {
  color: rgb(10.6707317073, 75.4573170732, 176.8292682927) !important;
}

.text-turquoise {
  color: #3574a5 !important;
}

a.text-turquoise:hover, a.text-turquoise:focus {
  color: rgb(34.4013761468, 75.2935779817, 107.0986238532) !important;
}

.text-medium {
  color: #8e8e8e !important;
}

a.text-medium:hover, a.text-medium:focus {
  color: rgb(103.75, 103.75, 103.75) !important;
}

.text-purple {
  color: #e3e4fc !important;
}

a.text-purple:hover, a.text-purple:focus {
  color: rgb(157.9032258065, 161.3709677419, 244.5967741935) !important;
}

.text-purple-shadow {
  color: #7b7eb5 !important;
}

a.text-purple-shadow:hover, a.text-purple-shadow:focus {
  color: rgb(81.7233009709, 85.036407767, 145.7766990291) !important;
}

.text-course-fr {
  color: #e5f2fc !important;
}

a.text-course-fr:hover, a.text-course-fr:focus {
  color: rgb(160.4137931034, 207.7068965517, 244.0862068966) !important;
}

.text-trophy-unknow {
  color: #cd0000 !important;
}

a.text-trophy-unknow:hover, a.text-trophy-unknow:focus {
  color: rgb(128.5, 0, 0) !important;
}

.text-trophy-bronze {
  color: #614E1A !important;
}

a.text-trophy-bronze:hover, a.text-trophy-bronze:focus {
  color: rgb(36.6707317073, 29.487804878, 9.8292682927) !important;
}

.text-trophy-silver {
  color: #DADADA !important;
}

a.text-trophy-silver:hover, a.text-trophy-silver:focus {
  color: rgb(179.75, 179.75, 179.75) !important;
}

.text-trophy-gold {
  color: #D79A10 !important;
}

a.text-trophy-gold:hover, a.text-trophy-gold:focus {
  color: rgb(143.7987012987, 103, 10.7012987013) !important;
}

.text-trophy-jade {
  color: #85B83F !important;
}

a.text-trophy-jade:hover, a.text-trophy-jade:focus {
  color: rgb(91.8076923077, 127.012145749, 43.487854251) !important;
}

.text-bluesky {
  color: #7FBDF2 !important;
}

a.text-bluesky:hover, a.text-bluesky:focus {
  color: rgb(57.5531914894, 153.1914893617, 234.9468085106) !important;
}

.text-darklight {
  color: #707070 !important;
}

a.text-darklight:hover, a.text-darklight:focus {
  color: rgb(73.75, 73.75, 73.75) !important;
}

.text-extradark {
  color: #1C1C1C !important;
}

a.text-extradark:hover, a.text-extradark:focus {
  color: black !important;
}

.text-pro-primary {
  color: #ec4a72 !important;
}

a.text-pro-primary:hover, a.text-pro-primary:focus {
  color: rgb(211.3175, 22.1825, 68.8825) !important;
}

.text-pro-secondary {
  color: #7f6ce3 !important;
}

a.text-pro-secondary:hover, a.text-pro-secondary:focus {
  color: rgb(71.0457142857, 43.74, 214.76) !important;
}

.text-pro-medium {
  color: #aeb1bb !important;
}

a.text-pro-medium:hover, a.text-pro-medium:focus {
  color: rgb(132.4127516779, 136.9530201342, 152.0872483221) !important;
}

.text-light-purple {
  color: #a29bfe !important;
}

a.text-light-purple:hover, a.text-light-purple:focus {
  color: rgb(91.5594059406, 79.2574257426, 253.2425742574) !important;
}

.text-dark-purple {
  color: #6c62e7 !important;
}

a.text-dark-purple:hover, a.text-dark-purple:focus {
  color: rgb(47.4309392265, 33.4806629834, 219.0193370166) !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: #fff !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;
  }
}
.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;
}

@media (min-width: 576px) {
  .position-sm-static {
    position: static !important;
  }
  .position-sm-relative {
    position: relative !important;
  }
  .position-sm-absolute {
    position: absolute !important;
  }
  .position-sm-fixed {
    position: fixed !important;
  }
  .position-sm-sticky {
    position: sticky !important;
  }
}
@media (min-width: 768px) {
  .position-md-static {
    position: static !important;
  }
  .position-md-relative {
    position: relative !important;
  }
  .position-md-absolute {
    position: absolute !important;
  }
  .position-md-fixed {
    position: fixed !important;
  }
  .position-md-sticky {
    position: sticky !important;
  }
}
@media (min-width: 992px) {
  .position-lg-static {
    position: static !important;
  }
  .position-lg-relative {
    position: relative !important;
  }
  .position-lg-absolute {
    position: absolute !important;
  }
  .position-lg-fixed {
    position: fixed !important;
  }
  .position-lg-sticky {
    position: sticky !important;
  }
}
@media (min-width: 1200px) {
  .position-xl-static {
    position: static !important;
  }
  .position-xl-relative {
    position: relative !important;
  }
  .position-xl-absolute {
    position: absolute !important;
  }
  .position-xl-fixed {
    position: fixed !important;
  }
  .position-xl-sticky {
    position: sticky !important;
  }
}
@font-face {
  font-family: "Material Icons";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(/build/fonts/MaterialIcons-Regular.0ffc720f.eot); /* For IE6-8 */
  src: local("Material Icons"), local("MaterialIcons-Regular"), url(/build/fonts/MaterialIcons-Regular.a0cf4179.woff2) format("woff2"), url(/build/fonts/MaterialIcons-Regular.61bf3cad.woff) format("woff"), url(/build/fonts/MaterialIcons-Regular.fbbc0163.ttf) format("truetype");
}
.material-icons, .material-icons-two-tone, .material-icons-sharp, .material-icons-round, .material-icons-outlined {
  font-family: "Material Icons";
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;
  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;
  /* Support for IE. */
  font-feature-settings: "liga";
}

@font-face {
  font-family: "Material Icons Outlined";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(/build/fonts/MaterialIconsOutlined-Regular.6e408e47.eot); /* For IE6-8 */
  src: local("Material Icons Outlined"), local("MaterialIconsOutlined-Regular"), url(/build/fonts/MaterialIconsOutlined-Regular.1c89d582.woff2) format("woff2"), url(/build/fonts/MaterialIconsOutlined-Regular.3dfc3dd2.woff) format("woff"), url(/build/fonts/MaterialIconsOutlined-Regular.94f5fdef.otf) format("opentype");
}
.material-icons-outlined {
  font-family: "Material Icons Outlined";
}

@font-face {
  font-family: "Material Icons Round";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(/build/fonts/MaterialIconsRound-Regular.f38c5a57.eot); /* For IE6-8 */
  src: local("Material Icons Round"), local("MaterialIconsRound-Regular"), url(/build/fonts/MaterialIconsRound-Regular.6240b67b.woff2) format("woff2"), url(/build/fonts/MaterialIconsRound-Regular.7ebd6258.woff) format("woff"), url(/build/fonts/MaterialIconsRound-Regular.eef5282a.otf) format("opentype");
}
.material-icons-round {
  font-family: "Material Icons Round";
}

@font-face {
  font-family: "Material Icons Sharp";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(/build/fonts/MaterialIconsSharp-Regular.cbc22e96.eot); /* For IE6-8 */
  src: local("Material Icons Sharp"), local("MaterialIconsSharp-Regular"), url(/build/fonts/MaterialIconsSharp-Regular.f78429ed.woff2) format("woff2"), url(/build/fonts/MaterialIconsSharp-Regular.7d6bf000.woff) format("woff"), url(/build/fonts/MaterialIconsSharp-Regular.0af28946.otf) format("opentype");
}
.material-icons-sharp {
  font-family: "Material Icons Sharp";
}

@font-face {
  font-family: "Material Icons Two Tone";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(/build/fonts/MaterialIconsTwoTone-Regular.dae0d67b.eot); /* For IE6-8 */
  src: local("Material Icons Two Tone"), local("MaterialIconsTwoTone-Regular"), url(/build/fonts/MaterialIconsTwoTone-Regular.2c890347.woff2) format("woff2"), url(/build/fonts/MaterialIconsTwoTone-Regular.b49c708c.woff) format("woff"), url(/build/fonts/MaterialIconsTwoTone-Regular.1ac124f8.otf) format("opentype");
}
.material-icons-two-tone {
  font-family: "Material Icons Two Tone";
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url(/build/images/ajax-loader.fb6f3c23.gif) center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url(/build/fonts/slick.a4e97f5a.eot);
  src: url(/build/fonts/slick.a4e97f5a.eot) format("embedded-opentype"), url(/build/fonts/slick.29518378.woff) format("woff"), url(/build/fonts/slick.c94f7671.ttf) format("truetype"), url(/build/images/slick.2630a3e3.svg) format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}
[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

/*************/
/** Element **/
/*************/
* {
  margin: 0;
  padding: 0;
  user-select: none;
  transition: all 0.3s ease-in-out;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
a {
  user-select: text !important;
}

h1 {
  text-wrap: balance;
}

h3,
p {
  margin-bottom: 0;
}

body {
  font-family: "OpenSans", sans-serif;
  font-weight: 400;
  color: var(--dark);
  max-width: 100dvw;
  min-height: calc(100dvh - 70px);
  padding-top: 70px;
  overflow-x: hidden;
  overflow-y: scroll;
  scroll-behavior: smooth;
}

.select-none {
  user-select: none !important;
}

a:link {
  text-decoration: none;
}

.icon-lg {
  font-size: 35px;
  line-height: 35px;
}

.icon-md {
  font-size: 25px;
  line-height: 25px;
}

.icon-sm {
  font-size: 20px;
  line-height: 20px;
}

.icon-xl {
  font-size: 64px;
  line-height: 64px;
}

.text-xs {
  font-size: 0.75rem;
  line-height: 0.75rem;
}

.text-sm {
  font-size: 0.85rem;
  line-height: 0.85rem;
}

.text-md {
  font-size: 0.95rem;
  line-height: 0.95rem;
}

.text-lg {
  font-size: 1.2rem;
  line-height: 1.4rem;
}

.text-xlg {
  font-size: 1.4rem;
  line-height: 1.6rem;
}

.text-xl {
  font-size: 1.8rem;
  line-height: 2rem;
}

.text-2xl {
  font-size: 2.5rem;
  line-height: 3.2rem;
}
@media (max-width: 575.98px) {
  .text-2xl {
    font-size: 1.6rem !important;
    line-height: 1.8rem !important;
  }
}

.text-3xl {
  font-size: 3rem;
  line-height: 3.5rem;
}
@media (max-width: 575.98px) {
  .text-3xl {
    font-size: 1.8rem !important;
    line-height: 2rem !important;
  }
}

.text-light-primary {
  color: #3989E2;
}

.text-underline {
  text-decoration: underline !important;
}

.text-crossed {
  text-decoration: line-through;
}

.text-nowrap {
  text-wrap: nowrap;
}

.sniglet {
  font-family: "Sniglet", system-ui;
}

.font-light {
  font-weight: 300;
}

.font-regular {
  font-weight: 400;
}

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

.letter-spacing {
  letter-spacing: 0.07rem;
}

.text-shadow {
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
}

.gap-1 {
  gap: 10px;
}

.gap-2 {
  gap: 30px;
}

.gap-3 {
  gap: 80px;
}

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

.btn-primary {
  background: linear-gradient(90deg, #40A3FF 0%, var(--primary) 100%);
  color: var(--white);
  text-decoration: none !important;
  padding: 5px 15px;
  border-radius: 25px;
  user-select: none !important;
  cursor: pointer;
}
@media (max-width: 575.98px) {
  .btn-primary {
    padding: 15px 30px;
    font-weight: 700;
  }
}

.btn-secondary {
  background: linear-gradient(var(--secondary) 0%, var(--secondary) 100%);
  color: var(--white);
  text-decoration: none !important;
  padding: 12px 25px;
  border-radius: 50px;
  user-select: none !important;
  cursor: pointer;
  transition: all 0.3s !important;
}
@media (max-width: 575.98px) {
  .btn-secondary {
    padding: 15px 30px;
    font-weight: 700;
  }
}
.btn-secondary:hover {
  background: linear-gradient(rgba(243, 91, 4, 0.35) 0%, var(--secondary) 100%);
}

.btn-white {
  background: var(--white);
  color: var(--primary);
  text-decoration: none !important;
  padding: 10px 25px;
  border-radius: 25px;
  user-select: none !important;
  cursor: pointer;
}
@media (max-width: 575.98px) {
  .btn-white {
    padding: 15px 30px;
    font-weight: 700;
  }
}

.card-primary {
  background: linear-gradient(180deg, rgba(68, 187, 249, 0.7) 0%, rgba(48, 131, 185, 0.95) 100%);
  border-radius: 50px;
  margin: auto;
  color: white;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}

.card-secondary {
  background: linear-gradient(180deg, rgba(238, 91, 4, 0.5) 0%, rgba(238, 91, 4, 0.7) 40%, rgb(238, 91, 4) 100%);
  border-radius: 50px;
  margin: auto;
  color: white;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}

.card-white {
  background-color: white;
  border-radius: 50px;
  margin: auto;
  color: white;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}

#headline-background {
  left: -20%;
  top: -30%;
  filter: blur(50px);
  z-index: -10;
  height: 65em;
}
@media (max-width: 767.98px) {
  #headline-background {
    top: -40%;
    left: -15%;
    height: 40em;
  }
}

.bg-none {
  background: none;
}

.bg-primary-gradient {
  background: linear-gradient(90deg, #3a8fe9 0%, var(--primary) 100%);
}

.bg-secondary-gradient {
  background: #F54F7A;
  background: linear-gradient(146deg, rgb(245, 79, 122) 0%, rgb(243, 91, 4) 50%, rgb(255, 158, 5) 100%);
}

.bg-secondary-radial-top {
  background: radial-gradient(300% 110% at 50% 120%, #fff 0, #fff 30%, #F6CEB7 60%, #F35B04 100%);
}

.bg-primary-radial-top {
  background: radial-gradient(300% 110% at 50% 120%, #fff 0, #fff 30%, #3e92e9 60%, #22307e 100%);
}

.bg-primary-radial-left {
  background: radial-gradient(90% 180% at 84.29% 53.01%, #FFF 0%, #FFF 41.42%, #3E92E9 59.64%, #22307E 91.96%);
}
@media (max-width: 991.98px) {
  .bg-primary-radial-left {
    background: radial-gradient(180% 90% at 56.53% 13.83%, #FFF 0%, #FFF 57.92%, #3E92E9 77.41%, #22307E 100%);
  }
}

.bg-primary-radial-md-left {
  background: radial-gradient(90% 180% at 84.29% 53.01%, #FFF 0%, #FFF 41.42%, #3E92E9 59.64%, #22307E 91.96%);
}
@media (max-width: 991.98px) {
  .bg-primary-radial-md-left {
    background: none;
  }
}

.bg-primary-radial-left-2 {
  background: radial-gradient(125% 250% at 120% 53.01%, #FFF 0%, #FFF 41.42%, #3E92E9 59.64%, #22307E 91.96%);
}
@media (max-width: 991.98px) {
  .bg-primary-radial-left-2 {
    background: radial-gradient(200% 100% at 56.53% -20%, #fff 0, #fff 40%, #3e92e9 70%, #22307e 100%);
  }
}

.bg-primary-radial-left-3 {
  background: radial-gradient(90% 180% at 84.29% 53.01%, #FFF 0%, #FFF 41.42%, #3E92E9 59.64%, #22307E 91.96%);
}
@media (max-width: 991.98px) {
  .bg-primary-radial-left-3 {
    background: radial-gradient(300% 100% at 50% 100%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 100%);
  }
}

.bg-primary-radial-right {
  background: radial-gradient(90% 180% at 10% 53.01%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 90%);
}
@media (max-width: 991.98px) {
  .bg-primary-radial-right {
    background: radial-gradient(180% 90% at 56.53% 13.83%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 100%);
  }
}

.bg-primary-radial-right-2 {
  background: radial-gradient(100% 250% at 20% 50%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 90%);
}
@media (max-width: 991.98px) {
  .bg-primary-radial-right-2 {
    background: radial-gradient(300% 120% at 50% 80%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 100%);
  }
}

.bg-primary-md-radial-right-2 {
  background: radial-gradient(100% 250% at 20% 50%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 90%);
}
@media (max-width: 991.98px) {
  .bg-primary-md-radial-right-2 {
    background: none;
  }
}

@media (max-width: 991.98px) {
  .bg-primary-mobile-radial-up {
    background: radial-gradient(300% 120% at 50% -10%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 90%);
  }
}

@media (max-width: 991.98px) {
  .bg-primary-mobile-radial-down {
    background: radial-gradient(300% 120% at 50% 110%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 90%);
  }
}

.bg-primary-radial-right-3 {
  background: radial-gradient(120% 360% at 20% 50%, #fff 0, #fff 30%, #3e92e9 45%, #22307e 80%);
}
@media (max-width: 991.98px) {
  .bg-primary-radial-right-3 {
    background: radial-gradient(300% 120% at 50% 75%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 100%);
  }
}

.bg-primary-radial-right-4 {
  background: radial-gradient(150% 360% at 20% 50%, #fff 0, #fff 30%, #3e92e9 40%, #22307e 60%);
}
@media (max-width: 991.98px) {
  .bg-primary-radial-right-4 {
    background: radial-gradient(300% 120% at 50% 75%, #FFF 0%, #FFF 30%, #3E92E9 45%, #22307E 100%);
  }
}

.bg-secondary-radial-right-3 {
  background: radial-gradient(120% 360% at 20% 50%, #fff 0, #fff 30%, #FBC378 45%, #F76B1A 80%);
}
@media (max-width: 991.98px) {
  .bg-secondary-radial-right-3 {
    background: radial-gradient(300% 120% at 50% 75%, #FFF 0%, #FFF 30%, #FBC378 45%, #F76B1A 100%);
  }
}

.bg-secondary-radial-right {
  background: radial-gradient(90% 180% at 10% 53.01%, #FFF 0%, #FFF 41.42%, #FBC378 59.64%, #F76B1A 91.96%);
}
@media (max-width: 991.98px) {
  .bg-secondary-radial-right {
    background: radial-gradient(180% 90% at 56.53% 13.83%, #FFF 0%, #FFF 57.92%, #FBC378 77.41%, #F76B1A 100%);
  }
}

.bg-secondary-radial-left {
  background: radial-gradient(90% 180% at 84.29% 53.01%, #FFF 0%, #FFF 41.42%, #FBC378 59.64%, #F76B1A 91.96%);
}
@media (max-width: 991.98px) {
  .bg-secondary-radial-left {
    background: radial-gradient(300% 120% at 50% 110%, #FFF 0%, #FFF 57.92%, #FBC378 77.41%, #F76B1A 100%);
  }
}

.bg-secondary-md-radial-left {
  background: radial-gradient(90% 180% at 84.29% 53.01%, #FFF 0%, #FFF 41.42%, #FBC378 59.64%, #F76B1A 91.96%);
}
@media (max-width: 991.98px) {
  .bg-secondary-md-radial-left {
    background: none;
  }
}

@media (max-width: 991.98px) {
  .bg-secondary-mobile-radial-up {
    background: radial-gradient(300% 120% at 50% -10%, #FFF 0%, #FFF 40%, #FBC378 55%, #F76B1A 100%);
  }
}

.shadow {
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1) !important;
}

.shadow-negative {
  box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1);
}

.shadow-internal {
  box-shadow: inset 0px 2px 0.3em 0 rgba(0, 0, 0, 0.25);
  border: none !important;
}

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

.rounded {
  border-radius: 15px !important;
}

.rounded-30 {
  border-radius: 30px;
}

.rounded-50 {
  border-radius: 50px;
}

.rounded-full {
  border-radius: 100%;
}

.img-rounded {
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: 50%;
  overflow: hidden;
}

.opacity-0 {
  opacity: 0;
}

.opacity-25 {
  opacity: 0.25;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-80 {
  opacity: 0.8;
}

.opacity-1 {
  opacity: 1;
}

.z-1 {
  z-index: 1;
}

.z-10 {
  z-index: 10;
}

.z-100 {
  z-index: 100;
}

.w-10 {
  width: 10%;
}

.w-33 {
  width: 33%;
}

.w-40 {
  width: 40%;
}

.w-60 {
  width: 60%;
}

.w-66 {
  width: 66%;
}

.w-90 {
  width: 90%;
}

.min-h-screen {
  min-height: 100dvh;
}

.min-h-70 {
  min-height: 70dvh;
}

.max-w-fit {
  max-width: fit-content;
}

.max-w-container {
  max-width: 2000px;
}

:focus {
  outline: unset !important;
}

.container-md-50 {
  width: 50% !important;
}
@media (max-width: 991.98px) {
  .container-md-50 {
    width: 100% !important;
  }
}

.container-md-75 {
  width: 75% !important;
}
@media (max-width: 991.98px) {
  .container-md-75 {
    width: 100% !important;
  }
}

.dropdown-toggle:after {
  content: none !important;
}

.form-control {
  background-color: var(--extralight) !important;
  border: none;
}

.input-group :focus {
  box-shadow: none !important;
}

.pointer {
  cursor: pointer;
}

.cursor-default {
  cursor: default;
}

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

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

.shadow-info {
  box-shadow: 0px 30px 40px var(--purple);
}

.separator {
  display: block;
  height: 30px;
  width: 1px;
  background-color: #8e8e8e;
}

.light-card {
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 25px;
  margin: auto;
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
  z-index: -8;
}

.btn {
  border: none;
}

.headline .mascotte {
  max-width: 400px;
}

.scroll-up {
  position: fixed;
  z-index: 100;
  bottom: 40px;
  left: 50%;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  transition: all 0.2s ease-in-out;
}
@media (max-width: 767.98px) {
  .scroll-up {
    right: 20px;
    bottom: 20px;
  }
}
.scroll-up .chevron {
  width: 20px;
  transform: rotate(180deg);
}

/************/
/** Contact **/
/************/
#www-form .icon,
.www-form .icon {
  width: 50px;
}
#www-form label,
.www-form label {
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 8px;
}
#www-form .form-button,
.www-form .form-button {
  padding: 10px 20px;
}

.form-www {
  border-radius: 50px;
  padding: 10px 25px;
  background-color: white !important;
  box-shadow: inset 0 3px 10px rgba(0, 0, 0, 0.2);
  border: none;
  display: block;
  width: 100%;
  line-height: 1.5;
}
.form-www.message-input {
  border-radius: 15px !important;
  padding: 15px 25px;
}

/**********/
/* Header */
/**********/
.header nav {
  height: 70px;
}
.header nav .logo {
  width: 180px;
}
@media (max-width: 767.98px) {
  .header nav .logo {
    width: 90px;
  }
}
.header nav .navigation li {
  position: relative;
}
.header nav .navigation li a:hover {
  text-decoration: none;
  color: var(--primary);
}
.header nav .navigation li .bottom-line {
  position: absolute;
  bottom: -10px;
  height: 2px;
  border-radius: 100px;
}
.header nav .navigation li .bottom-line-anim {
  width: 0% !important;
  transition: width 0.2s;
}
.header nav .navigation li:hover .bottom-line-anim {
  width: 45% !important;
}
.header .dropdown-menu a:last-child {
  border-bottom: none !important;
}
.header .btn-primary {
  padding: 5px 15px;
}
.header .lang .flag {
  width: 25px;
  transition: transform 0.2s;
}
.header .lang:hover .flag {
  transform: scale(1.15);
}
.header .offer .icon {
  width: 50px;
  transition: transform 0.2s;
}
.header .offer:hover .icon {
  transform: scale(1.15);
}

/*****************/
/** Modal Right **/
/*****************/
.modal-right {
  padding: 0 !important;
}

.modal-right .modal-dialog {
  width: 100%;
  max-width: none;
  height: 100%;
  margin: 0;
}
@media (min-width: 650px) {
  .modal-right .modal-dialog {
    width: 50%;
    left: 50%;
  }
}

.modal-right .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}

.modal-right .modal-body {
  overflow-y: auto;
}

.right-menu-modal .logo {
  width: 90px;
}
.right-menu-modal .cross {
  width: 35px;
  transform: rotate(45deg);
}
.right-menu-modal .dropdown a {
  text-decoration: none;
}
.right-menu-modal .dropdown .flag {
  width: 40px;
}
.right-menu-modal .dropdown .offer-icon {
  width: 70px;
}
.right-menu-modal .dropdown .chevron {
  width: 30px;
}
.right-menu-modal .dropdown.show .chevron {
  transform: rotate(-180deg);
}
.right-menu-modal .store-link {
  width: 150px;
}
.right-menu-modal .icon-social {
  width: 35px;
}

/************/
/** Footer **/
/************/
footer {
  box-shadow: inset 0px 2px 10px rgba(0, 0, 0, 0.25);
}
footer * {
  color: #6c757d !important;
}
footer .lpm-logo {
  width: 70px;
}
footer img.store-link {
  max-width: 180px;
}
@media (max-width: 991.98px) {
  footer img.store-link {
    max-width: 150px;
  }
}
footer .lang-footer {
  text-decoration: none !important;
}
footer .lang-footer .flag-footer {
  width: 25px !important;
  transition: transform 0.1s ease-in-out !important;
}
footer .lang-footer.available:hover .flag-footer {
  transform: scale(1.1);
}
footer .globe {
  width: 15px;
}
footer .logo {
  width: 100px;
}
footer .icon-social {
  width: 30px;
}
footer .separator {
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--extralight);
  margin: 20px 0;
}

/***********/
/** Index **/
/***********/
#index-headline .mockup {
  width: 100%;
  max-width: 600px;
  height: auto;
}

#index-offers {
  background: linear-gradient(93deg, #40A3FF -4.29%, var(--primary) 80.19%);
}
#index-offers img {
  width: 100%;
  max-width: 300px;
}

#index-goal img {
  width: 100%;
  max-width: 500px;
}

#index-about .max-w-card {
  max-width: 550px;
}
#index-about .about-card {
  padding: 0;
  box-shadow: 5px 5px 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 25px;
  border-bottom-right-radius: 0px;
  overflow: hidden;
}
#index-about .about-card h3 {
  font-size: 20px;
}
@media (max-width: 575.98px) {
  #index-about .about-card h3 {
    font-size: 17px;
  }
}
#index-about .about-card .card-headline::before {
  content: "";
  background: linear-gradient(rgba(243, 91, 4, 0.35) 0%, rgb(243, 91, 4) 75%);
  width: 105%;
  height: 125%;
  position: absolute;
  top: -10px;
  left: -10px;
  transform: rotate(1deg);
  z-index: 0;
}
#index-about .about-card .card-headline * {
  z-index: 1;
}
#index-about .about-card .chevron {
  width: 30px;
}
#index-about .about-card[aria-expanded=true] {
  border-bottom-right-radius: 25px;
}
#index-about .about-card[aria-expanded=true] .chevron {
  transform: rotate(-180deg);
}
#index-about .about-card .card-content img {
  max-width: 120px;
}
#index-about .about-card .card-content p {
  font-size: 16px;
}

#index-certification img {
  width: 100%;
  max-width: 350px;
}
#index-certification .card-desktop img,
#index-certification .card-mobile img {
  height: 90px;
  width: auto;
}
#index-certification .card-desktop p,
#index-certification .card-mobile p {
  font-size: 16px;
}
#index-certification .card-desktop {
  width: 100%;
}
#index-certification .card-desktop .card-banner {
  width: 90%;
  max-width: 350px;
  height: 250px;
  left: 50%;
  transform: translateX(-50%);
}
#index-certification .card-desktop .card-content {
  width: 100%;
  transform: translateY(30px);
}
#index-certification .card-desktop.active .card-banner {
  opacity: 0;
}
#index-certification .card-desktop.active .card-content {
  opacity: 1;
  transform: translateY(0px);
}
#index-certification .card-mobile {
  max-width: 350px;
}
#index-certification .carousel-certification {
  max-width: 500px;
}
#index-certification .slick-dots li button::before {
  display: block;
  position: relative;
  content: "";
  background: var(--extralight);
  width: 10px;
  height: 10px;
  opacity: 1;
  box-shadow: 0;
  border-radius: 50%;
  transition: all 0.3s ease-in-out;
}
#index-certification .slick-dots li.slick-active {
  position: relative;
  margin-right: 40px;
}
#index-certification .slick-dots li.slick-active button::before {
  background: var(--secondary);
  width: 50px;
  border-radius: 25px;
}
#index-certification .slick-prev,
#index-certification .slick-next {
  transform: translateY(-20px);
}
#index-certification .slick-prev::before,
#index-certification .slick-next::before {
  opacity: 1;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 575.98px) {
  #index-certification .slick-prev::before,
  #index-certification .slick-next::before {
    display: none;
  }
}
#index-certification .slick-prev::before {
  content: url(/build/images/chevron-secondary-left.c167d5b7.svg);
}
#index-certification .slick-next::before {
  content: url(/build/images/chevron-secondary-right.230aae57.svg);
}
#index-certification .slick-disabled::before {
  filter: grayscale(1);
  opacity: 0.3;
  cursor: default;
}

#index-skills {
  height: 1400px;
}
@media (max-width: 991.98px) {
  #index-skills {
    height: auto;
  }
}
#index-skills .main-skill {
  position: absolute;
  top: 430px;
  width: 300px;
}
#index-skills .main-skill p {
  font-size: 14px;
}
#index-skills .main-skill.globby {
  top: 550px;
}
#index-skills .main-skill .skill-bg {
  position: absolute;
  max-width: 300px;
}
#index-skills .main-skill .gif {
  max-height: 300px;
  z-index: 1;
}
#index-skills .skill {
  position: absolute;
  width: 250px;
  border-radius: 15px;
}
#index-skills .skill .skill-image {
  max-width: 220px;
}
@media (max-width: 991.98px) {
  #index-skills .skill .skill-image {
    width: 50%;
  }
}
@media (max-width: 575.98px) {
  #index-skills .skill .skill-image {
    width: 100%;
  }
}
#index-skills .skill .skill-image .play-img {
  width: 45px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#index-skills .skill#skill-expression {
  top: 100px;
}
#index-skills .skill#skill-comprehension {
  top: 210px;
  transform: translateX(-320px);
}
#index-skills .skill#skill-lecture {
  top: 210px;
  transform: translateX(320px);
}
#index-skills .skill#skill-grammaire {
  top: 570px;
  transform: translateX(-350px);
}
#index-skills .skill#skill-ecriture {
  top: 570px;
  transform: translateX(350px);
}
#index-skills .skill#skill-prononciation {
  top: 950px;
  transform: translateX(-170px);
}
#index-skills .skill#skill-vocabulaire {
  top: 950px;
  transform: translateX(170px);
}

@media (min-width: 992px) {
  #index-learning .max-w-600 {
    max-width: 600px;
  }
}
#index-learning .card-learning {
  max-width: 700px;
}
#index-learning .card-learning .chevron {
  width: 30px;
}
#index-learning .card-learning[aria-expanded=true] .chevron {
  transform: rotate(-180deg);
}
#index-learning .card-learning p {
  font-size: 16px;
}

#index-faq {
  background: linear-gradient(#f79b66 0%, #f35b04 40%, #f35b04 70%, #f79b66 100%);
}
#index-faq .faq-container {
  column-count: 3;
  column-gap: 20px;
  break-inside: avoid;
}
@media (max-width: 1199.98px) {
  #index-faq .faq-container {
    column-count: 2;
  }
}
@media (max-width: 767.98px) {
  #index-faq .faq-container {
    column-count: 1;
  }
}
#index-faq .faq-container .faq-item {
  position: relative;
  page-break-inside: avoid;
  margin-bottom: 15px;
  border-radius: 15px;
  border-bottom-right-radius: 0px;
}
#index-faq .faq-container .faq-item img {
  width: 20px;
}
#index-faq .faq-container .faq-item[aria-expanded=true] img {
  transform: rotate(45deg);
}
#index-faq .accordion p {
  font-size: 16px;
}

.faq-item {
  position: relative;
  page-break-inside: avoid;
  margin-bottom: 15px;
  border-radius: 15px;
  border-bottom-right-radius: 0px;
}
.faq-item img {
  width: 20px;
}
.faq-item[aria-expanded=true] img {
  transform: rotate(45deg);
}

/**************/
/** Learning **/
/**************/
#learning-headline .mockup {
  max-width: 500px;
  height: auto;
}
@media (max-width: 575.98px) {
  #learning-headline .mockup {
    max-width: 300px;
  }
}

#learning-navigation .icon {
  width: 50px;
}
#learning-navigation .chevron {
  width: 15px;
}
#learning-navigation .cocon-navigation {
  overflow-x: auto;
  white-space: nowrap;
}
#learning-navigation .cocon-navigation::-webkit-scrollbar {
  display: none;
}
#learning-navigation .grabbing {
  cursor: grabbing;
}
#learning-navigation #navigation-next,
#learning-navigation #navigation-back {
  width: 40px;
}
@media (max-width: 575.98px) {
  #learning-navigation #navigation-next,
  #learning-navigation #navigation-back {
    max-width: 30px;
  }
}

#learning-advantages img {
  max-width: 500px;
}
@media (max-width: 575.98px) {
  #learning-advantages img {
    max-width: 300px;
  }
}

#learning-method .banner {
  padding: 50px 0 120px 0;
}
#learning-method .content {
  transform: translateY(-80px);
}
#learning-method img {
  max-width: 400px;
}
#learning-method .card-method:hover img {
  transform: scale(1.1);
}

#learning-courses .mascotte {
  max-width: 350px;
}
#learning-courses .mockup {
  max-width: 350px;
}
#learning-courses .mockup:hover {
  transform: scale(1.2);
}

#learning-time img {
  max-width: 600px;
}
@media (max-width: 575.98px) {
  #learning-time img {
    max-width: 400px;
  }
}

#learning-advices img {
  max-width: 400px;
}
@media (max-width: 575.98px) {
  #learning-advices img {
    max-width: 300px;
  }
}

#learning-download .mockup {
  width: 100%;
  max-width: 400px;
}
#learning-download .store img {
  max-width: 200px;
}
@media (max-width: 575.98px) {
  #learning-download .store img {
    max-width: 160px;
  }
}

#banner .banner {
  max-width: 1200px;
  border-radius: 30px;
}
#banner .banner .orange-lg-left {
  width: 220px;
  top: 45%;
  left: -130px;
}
@media (max-width: 767.98px) {
  #banner .banner .orange-lg-left {
    width: 120px;
    top: auto;
    left: -10px;
    bottom: 25%;
  }
}
#banner .banner .orange-lg-right {
  width: 280px;
  bottom: 30%;
  right: -200px;
}
@media (max-width: 767.98px) {
  #banner .banner .orange-lg-right {
    width: 100px;
    bottom: 15%;
    right: -30px;
  }
}
#banner .banner .orange-sm-left {
  width: 95px;
  top: 95%;
  left: -50px;
}
@media (max-width: 767.98px) {
  #banner .banner .orange-sm-left {
    width: 50px;
    left: 70px;
    top: auto;
    bottom: 15%;
  }
}
#banner .banner .orange-sm-right {
  width: 150px;
  top: -30%;
  right: -30px;
}
@media (max-width: 767.98px) {
  #banner .banner .orange-sm-right {
    width: 60px;
    top: auto;
    bottom: 15%;
    right: 60px;
  }
}
#banner .banner .blue-left {
  width: 140px;
  top: 90%;
  left: 70px;
}
@media (max-width: 767.98px) {
  #banner .banner .blue-left {
    width: 90px;
    top: auto;
    bottom: 15%;
    left: -20px;
  }
}
#banner .banner .blue-right {
  width: 80px;
  bottom: 90%;
  right: 120px;
}
@media (max-width: 767.98px) {
  #banner .banner .blue-right {
    width: 100px;
    bottom: 25%;
    right: -10px;
  }
}
#banner .banner:hover .orange-lg-left {
  transform: translate(-40px, -20px);
}
#banner .banner:hover .orange-lg-right {
  transform: translate(20px, 10px);
}
#banner .banner:hover .orange-sm-left {
  transform: translate(-20px, 30px);
}
#banner .banner:hover .orange-sm-right {
  transform: translate(40px, -40px);
}
#banner .banner:hover .blue-left {
  transform: translate(30px, 30px);
}
#banner .banner:hover .blue-right {
  transform: translate(0, -50px);
}

/************/
/** Cocons **/
/************/
#cocon-headline .illustration {
  max-width: 500px;
}

@media (min-width: 768px) {
  #cocon-content .cocon-resume {
    position: sticky;
    top: 50px;
    z-index: 1;
  }
}
#cocon-content .cocon-resume a {
  color: var(--dark);
}
#cocon-content .cocon-container {
  box-shadow: -10px 0 5px -5px rgba(0, 0, 0, 0.1);
}
#cocon-content .chevron {
  width: 20px;
  rotate: -90deg;
}
#cocon-content .main-flag {
  width: 50px;
}

/**********/
/** Blog **/
/**********/
@media (min-width: 576px) {
  #blog-index .categories-listing {
    position: sticky;
    top: 100px;
    z-index: 1;
  }
}
#blog-index .categories-listing a {
  color: var(--dark);
}

#blog-article .article-headline {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
#blog-article .back-button {
  top: 0;
  left: 5%;
}

#blog-category .back-button,
#blog-author .back-button,
#blog-tag .back-button {
  top: 0;
  left: 5px;
}

#blog-all .back-button {
  top: 0;
  left: 5%;
}

/****************/
/** Individual **/
/****************/
#individual-headline {
  background: linear-gradient(90deg, #3D9AF5 0%, var(--primary) 100%);
}
#individual-headline .btn-toggle {
  background: linear-gradient(180deg, #F6CEB7 -31.67%, #F35B04 79.07%);
  width: 160px;
  height: 40px;
  left: 0;
}
#individual-headline .btn-monthly,
#individual-headline .btn-annual {
  width: 160px;
  height: 40px;
  color: var(--secondary);
  cursor: pointer;
}
#individual-headline .btn-monthly.active,
#individual-headline .btn-annual.active {
  color: var(--white);
  cursor: default;
}
#individual-headline .carousel-pricing .slick-list {
  padding-right: 60px;
}
@media (max-width: 767.98px) {
  #individual-headline .carousel-pricing .slick-slide {
    transform: translateX(45px);
  }
}
#individual-headline .offer-card {
  width: 100%;
  min-width: 275px;
  max-width: 300px;
  border-radius: 40px;
}
#individual-headline .offer-card .chevron {
  width: 15px;
}
#individual-headline .offer-card[aria-expanded=true] .chevron {
  transform: rotate(-180deg);
}
#individual-headline .offer-card .offer-banner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  color: var(--white);
  z-index: 0;
}
#individual-headline .offer-card .offer-banner::before {
  content: "";
  background: linear-gradient(180deg, #F6CEB7 -31.67%, #F35B04 79.07%);
  width: 105%;
  height: 70px;
  position: absolute;
  top: -10px;
  left: -10px;
  transform: rotate(-5deg);
}
#individual-headline .offer-card .offer-image {
  height: 100px;
  width: auto;
}
#individual-headline .offer-card .offer-price {
  height: 70px;
}
#individual-headline .offer-card .offer-price .price-monthly,
#individual-headline .offer-card .offer-price .price-annual {
  opacity: 0;
}
#individual-headline .offer-card .offer-price .price-monthly.active,
#individual-headline .offer-card .offer-price .price-annual.active {
  opacity: 1;
}
#individual-headline .check,
#individual-headline .wrong {
  width: 15px;
  height: 15px;
}
#individual-headline .wrong {
  opacity: 0.2;
}
#individual-headline .slick-dots li button::before {
  display: block;
  position: relative;
  content: "";
  background: var(--extralight);
  width: 10px;
  height: 10px;
  opacity: 1;
  box-shadow: 0;
  border-radius: 50%;
  transition: all 0.3s ease-in-out;
}
#individual-headline .slick-dots li.slick-active {
  position: relative;
  margin-right: 40px;
}
#individual-headline .slick-dots li.slick-active button::before {
  background: var(--secondary);
  width: 50px;
  border-radius: 25px;
}
#individual-headline .slick-prev,
#individual-headline .slick-next {
  transform: translateY(-20px);
}
#individual-headline .slick-prev::before,
#individual-headline .slick-next::before {
  opacity: 1;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 575.98px) {
  #individual-headline .slick-prev::before,
  #individual-headline .slick-next::before {
    display: none;
  }
}
#individual-headline .slick-prev::before {
  content: url(/build/images/chevron-secondary-left.c167d5b7.svg);
}
#individual-headline .slick-next::before {
  content: url(/build/images/chevron-secondary-right.230aae57.svg);
}
#individual-headline .slick-disabled::before {
  opacity: 0;
  cursor: default;
}

#individual-details .offer-price {
  height: 25px;
}
#individual-details .offer-price .price-monthly,
#individual-details .offer-price .price-annual {
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  text-wrap: nowrap;
}
#individual-details .offer-price .price-monthly.active,
#individual-details .offer-price .price-annual.active {
  opacity: 1;
}
#individual-details .thead-offer {
  border-left: 1px solid var(--extralight);
}
#individual-details .thead-feature {
  border-top: 1px solid var(--extralight);
}
#individual-details td {
  border-top: 1px solid var(--extralight);
  border-left: 1px solid var(--extralight);
}
#individual-details .check,
#individual-details .wrong {
  width: 20px;
  height: 20px;
}
#individual-details .wrong {
  opacity: 0.2;
}

/*******************/
/** School **/
/*******************/
#headline-background-school {
  filter: blur(50px);
  z-index: -10;
  left: -50%;
  top: -35%;
}

.card-pro {
  margin-left: -60px;
}
@media (max-width: 991.98px) {
  .card-pro {
    margin-left: 0;
  }
}

.mockup-pro {
  margin-right: -60px;
  width: 125%;
}

#school-satisfaction-background {
  filter: blur(50px);
  z-index: -10;
  left: 10%;
  top: -80%;
  height: 700px;
}

/*******************/
/** CPF **/
/*******************/
.formations-container {
  max-width: 1400px;
}
.formations-container .flag {
  width: 25px;
}

.steps-container {
  max-width: 1000px;
}
.steps-container .steps-line-cpf {
  width: 56%;
  top: 11%;
}

.steps-container-mobile {
  max-width: 350px;
}
.steps-container-mobile .steps-line-cpf-mobile {
  top: 5%;
  width: 80%;
  z-index: 0 !important;
}

/************/
/** Method **/
/************/
#method-headline .mockup {
  width: 100%;
  max-width: 600px;
}

#method-system .mockup-gif {
  max-height: 80dvh;
  width: auto;
}

#method-serious {
  max-width: 1200px !important;
}
#method-serious .card-serious {
  width: 350px;
}
#method-serious .card-serious img {
  height: 60px;
  width: auto;
}

#method-certification {
  max-width: 1500px !important;
}
#method-certification .card-certification {
  max-width: 500px;
}

#history-headline .mascotte {
  width: 100%;
  max-width: 400px;
}

#history-vigdis .vigdis-card img {
  width: 100%;
}
#history-vigdis .vigdis-card:hover img {
  transform: scale(1.1);
}
#history-vigdis .vigdis-card:hover .vigdis-card-text {
  transform: translateX(5px);
}
#history-vigdis .lpm-card img {
  width: 60%;
}
#history-vigdis .lpm-card:hover img {
  transform: scale(1.1);
}
#history-vigdis .lpm-card:hover .lpm-card-text {
  transform: translateX(5px);
}

#history-lpm {
  max-width: 1500px !important;
}
#history-lpm .card-lpm {
  max-width: 500px;
}

#history-success .mockup-gif {
  max-height: 80dvh;
  width: auto;
}

/*******************/
/** Accessibilité **/
/*******************/
#accessibility .material-icons-outlined {
  font-size: 5em;
}

/*******************/
/** About **/
/*******************/
.about-card {
  background-color: rgba(255, 255, 255, 0.5);
  box-shadow: 0 0 7px 5px rgba(35, 48, 126, 0.1);
  border-radius: 50px;
}
.about-card #about-background {
  top: -45%;
  left: -30%;
  filter: blur(30px);
  z-index: -10;
}

#vigdis-mobile {
  height: 220px;
  left: 50%;
  transform: translateX(-50%);
}

#vigdis-desktop {
  height: 200px;
  width: auto;
  aspect-ratio: initial;
  margin-bottom: -30px;
  z-index: 10;
}

#card-vigdis-mobile {
  margin-top: 225px !important;
  padding-top: 50px !important;
}

#mascotte-about {
  z-index: 1000;
  height: 350px;
  top: -25%;
}

#mascotte-about-pad {
  z-index: 1000;
  height: 300px !important;
  left: -20%;
  top: -10%;
}

#mascotte-about-mobile {
  height: 300px;
  left: -10%;
}

#card-mascotte-mobile {
  margin-top: 250px;
  padding-top: 50px;
}

#background-headline-about {
  top: -60%;
  left: -60%;
  filter: blur(50px);
  z-index: -10;
  height: 1200px;
}

#team-background-left {
  top: -30%;
  left: -20%;
  filter: blur(50px);
  z-index: -10;
  height: 1300px;
}

#team-background-right {
  top: 0;
  right: -40%;
  filter: blur(50px);
  z-index: -10;
  height: 1000px;
}

/**********************/
/** Offer B2C banner **/
/**********************/
.offer-top-banner .dropdown .dropdown-toggle {
  background: white;
}
.offer-top-banner .dropdown .flag {
  width: 20px;
}
.offer-top-banner .logo-cpf {
  height: 45px;
}
.offer-top-banner .logo-lpm {
  height: 40px;
}
.offer-top-banner .offer-cpf-banner-img img {
  max-height: 6em;
}
@media (max-width: 767.98px) {
  .offer-top-banner .offer-cpf-banner-img img {
    max-height: 4em;
  }
}
.offer-top-banner .stores-link img {
  height: 30px;
}

/**************************/
/** Mon compte formation **/
/**************************/
#my-training-account .icon-svg {
  max-height: 7em;
}

#how-it-works .step {
  width: 75%;
}
@media (max-width: 991.98px) {
  #how-it-works .step {
    width: 30%;
  }
}
#how-it-works .work-margin {
  margin-top: 2em;
}
@media (min-width: 992px) {
  #how-it-works .work-margin {
    margin-top: 7em;
  }
}
@media (min-width: 992px) {
  #how-it-works .arrow1 {
    right: 0;
    top: 15%;
    margin-right: -4.8em;
    z-index: 1000;
    width: 60%;
  }
  #how-it-works .arrow2 {
    right: 0;
    top: -5%;
    margin-right: -4em;
    z-index: 1000;
    width: 60%;
  }
}
@media (min-width: 1200px) {
  #how-it-works .arrow1 {
    right: 0;
    top: 20%;
    z-index: 1000;
    width: 50%;
  }
  #how-it-works .arrow2 {
    right: 0;
    top: 0;
    margin-right: -5em;
    z-index: 1000;
    width: 60%;
  }
}

#formation .inscription {
  right: 0;
  top: -3em;
  z-index: 1000;
}
#formation .layer {
  background-color: rgba(0, 0, 0, 0.7);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*********/
/** FAQ **/
/*********/
#faq .btn-category {
  background: var(--white);
  color: var(--primary);
  cursor: pointer;
}
#faq .btn-category.active {
  background: var(--primary);
  color: var(--white);
  cursor: default;
}
#faq .btn-category-secondary {
  background: var(--white);
  color: var(--secondary);
  cursor: pointer;
}
#faq .btn-category-secondary.active {
  background: linear-gradient(rgba(243, 91, 4, 0.35) 0%, var(--secondary) 100%);
  color: var(--white);
  cursor: default;
}
#faq .icon-category {
  width: 40px;
}
#faq .categories-accordion .chevron {
  width: 20px;
}
#faq .categories-accordion .chevron-secondary {
  width: 13px;
  transform: rotate(90deg);
}
#faq .categories-accordion .categories-main[aria-expanded=true] .chevron {
  transform: rotate(-180deg);
}
#faq .categories-accordion .categories-main[aria-expanded=true] .chevron-secondary {
  transform: rotate(-90deg);
}
#faq .categories-accordion .categories-main .category-mobile {
  left: 0;
  opacity: 0;
}
#faq .categories-accordion .categories-main .category-mobile.active {
  opacity: 1;
}
#faq .categories-accordion .categories-option .category-mobile.active {
  opacity: 0.5;
}
#faq .categories-accordion .categories-option .category-mobile:last-child {
  padding-bottom: 0 !important;
}

.category-list .category {
  padding-top: 2%;
  border-radius: 15px;
  font-weight: bold;
  box-shadow: 0px 3px 6px #989797;
  background-color: white;
  cursor: pointer;
}
.category-list .category .category-img {
  height: 70px;
  padding-bottom: 10px;
  margin-top: -35%;
}

.faq .faq-border-bottom {
  border-bottom: 1px solid var(--light);
}
.faq .faq-group {
  text-align: left;
}
.faq .faq-group a {
  font-size: 20px;
  display: block;
  text-decoration: none;
}
.faq .faq-group .faq-body {
  color: var(--darklight);
  display: block;
}
.faq .more-less {
  float: right;
}

#faq-blue-background {
  z-index: -100;
  top: -5%;
  left: -20%;
  height: 600px;
}

#faq-medium-blue-background {
  left: -70%;
  top: 0;
  filter: blur(50px);
  z-index: -10;
  height: 1000px;
}

#faq-footer-background-left {
  left: -10%;
  top: -550%;
  filter: blur(50px);
  z-index: -10;
  height: 1000px;
}

#faq-footer-background-right {
  left: 20%;
  top: -550%;
  filter: blur(50px);
  z-index: -10;
  height: 1000px;
}

badge-promo {
  background-color: var(--turquoise);
  margin-top: -3.7em;
  left: 50%;
  transform: translate(-50%);
}

@media only screen and (max-width: 800px) {
  .search-input {
    width: 8em;
  }
}
/************/
/** Header **/
/************/
.langs-img img {
  height: 50px;
}
.langs-img img.available {
  transition: transform 0.2s ease;
}
.langs-img img.available:hover {
  transform: translateY(-5px);
}

.langs-courses {
  height: 20px;
}

/**************************/
/** Not found Error page **/
/**************************/
.error-page .text-404 {
  font-size: 25dvw;
  line-height: 15dvw;
}
@media (max-width: 575.98px) {
  .error-page .text-404 {
    font-size: 40dvw;
  }
}
.error-page .error-mascotte {
  width: 18dvw;
}
@media (max-width: 575.98px) {
  .error-page .error-mascotte {
    width: 30dvw;
  }
}
.error-page .orange-lg-left {
  width: 17dvw;
  top: -15%;
  left: -30%;
  animation: bounce-diagonal-down 10s ease-in-out infinite;
}
@media (max-width: 575.98px) {
  .error-page .orange-lg-left {
    width: 30dvw;
    top: -70%;
    left: -20%;
  }
}
.error-page .orange-right {
  width: 10dvw;
  top: -20%;
  right: -15%;
  animation: bounce-diagonal-up 10s ease-in-out infinite;
}
@media (max-width: 575.98px) {
  .error-page .orange-right {
    width: 18dvw;
    top: -30%;
    right: 0%;
  }
}
.error-page .orange-sm-left {
  width: 7dvw;
  bottom: -15%;
  left: -5%;
  animation: bounce-diagonal-down-revert 10s ease-in-out infinite;
}
@media (max-width: 575.98px) {
  .error-page .orange-sm-left {
    width: 15dvw;
    bottom: -40%;
    left: 0%;
  }
}
.error-page .blue-left {
  width: 12dvw;
  top: 25%;
  left: 0;
  animation: bounce-vertical-down 10s ease-in-out infinite;
}
@media (max-width: 575.98px) {
  .error-page .blue-left {
    width: 21dvw;
    top: 40%;
    left: 10%;
  }
}
.error-page .blue-lg-right {
  width: 16dvw;
  bottom: -10%;
  right: -40%;
  animation: bounce-diagonal-down-revert 10s ease-in-out infinite;
}
@media (max-width: 575.98px) {
  .error-page .blue-lg-right {
    width: 28dvw;
    bottom: -30%;
    right: -30%;
  }
}
.error-page .blue-sm-right {
  width: 6dvw;
  top: 35%;
  right: 0;
  animation: bounce-diagonal-down 10s ease-in-out infinite;
}
@media (max-width: 575.98px) {
  .error-page .blue-sm-right {
    width: 13dvw;
    top: 50%;
    right: 15%;
  }
}
@keyframes bounce-diagonal-down {
  0%, 100% {
    transform: translate(0, 0);
  }
  10%, 90% {
    transform: translate(-2px, -4px);
  }
  40%, 60% {
    transform: translate(25px, 50px);
  }
  50% {
    transform: translate(23px, 46px);
  }
}
@keyframes bounce-diagonal-up {
  0%, 100% {
    transform: translate(0, 0);
  }
  10%, 90% {
    transform: translate(-2px, 6px);
  }
  40%, 60% {
    transform: translate(6px, -18px);
  }
  50% {
    transform: translate(4px, -12px);
  }
}
@keyframes bounce-diagonal-down-revert {
  0%, 100% {
    transform: translate(0, 0);
  }
  10%, 90% {
    transform: translate(2px, 4px);
  }
  40%, 60% {
    transform: translate(-25px, -50px);
  }
  50% {
    transform: translate(-23px, -46px);
  }
}
@keyframes bounce-vertical-down {
  0%, 100% {
    transform: translate(0, 0);
  }
  10%, 90% {
    transform: translate(0, -4px);
  }
  40%, 60% {
    transform: translate(0, 50px);
  }
  50% {
    transform: translate(0, 46px);
  }
}

/************/
/** Images **/
/************/
.img-grayscale {
  filter: gray;
  /* IE6-9 */
  -webkit-filter: grayscale(1);
  /* Google Chrome, Safari 6+ & Opera 15+ */
  filter: grayscale(1);
  /* Microsoft Edge and Firefox 35+ */
}

#cookieConsent {
  background-color: #dfe6e9;
  text-align: center;
  display: none;
  position: fixed;
  z-index: 65000;
  bottom: 0px;
  width: 100%;
  font-size: 14px;
}

#cookieConsent button.cookieAccept {
  background: var(--primary);
  color: white;
  border: none;
  border-radius: 0.2em;
  margin: 0.5em;
  padding: 0.2em 0.5em 0.2em 0.5em;
}

/************/
/** Badges **/
/************/
.badge.badge-es {
  color: var(--warning);
  background-color: var(--extralight);
}
.badge.badge-en {
  background-color: var(--info);
  color: var(--primary);
}
.badge.badge-zh {
  background-color: var(--xtremlight);
  color: var(--secondary);
}
.badge.badge-ru {
  color: var(--dark);
  background-color: var(--darklight);
}
.badge.badge-it {
  color: var(--dark-purple);
  background-color: var(--light-purple);
}
.badge.badge-language {
  color: var(--warning);
  background-color: var(--extralight);
}

.team-icon {
  height: 300px;
  padding-bottom: 100px;
}

.carousel {
  padding: 0 20px;
}

.carousel .card {
  margin-right: 20px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.carousel .card:last-child {
  margin-right: 0;
}

.slick-dots li.slick-active button:before {
  color: var(--secondary);
}

.pricing-card {
  border-radius: 50px;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
  background-color: rgba(255, 255, 255, 0.9);
}

.pricing-item {
  box-shadow: inset 0px 2px 10px rgba(0, 0, 0, 0.25);
  border-radius: 50px;
  cursor: pointer;
  filter: brightness(0.9);
  transition: 0.4s;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.pricing-item:hover {
  filter: brightness(1.1);
}

.pricing-item-mobile {
  min-width: 100% !important;
}

.formula-card {
  max-width: 24%;
}

#background-pricing-left {
  left: -40%;
  top: -55%;
  filter: blur(50px);
  z-index: -10;
  height: 1400px;
}

#background-pricing-right {
  right: -40%;
  top: -40%;
  filter: blur(50px);
  z-index: -10;
  height: 1400px;
}

.mascotte-pricing {
  width: 100%;
}
@media (max-width: 767.98px) {
  .mascotte-pricing {
    height: 250px;
    width: auto;
  }
}
@media (min-width: 1200px) {
  .mascotte-pricing {
    height: 250px;
    width: auto;
  }
}

.pricing-section {
  transition: 0.2s;
}

.bg-secondary-www {
  background: linear-gradient(180deg, rgba(238, 91, 4, 0.5) 0%, rgba(238, 91, 4, 0.7) 40%, rgb(238, 91, 4) 100%);
}

/************/
/** Presse **/
/************/
.presse-item {
  border-bottom: 1px solid #efefef;
}
.presse-item .presse-item-resume {
  line-height: 1.6rem;
}

#img-office {
  margin: auto;
  max-height: 450px;
  border-radius: 25px;
}

#mascotte-office {
  position: absolute;
  max-height: 250px;
}
@media (max-width: 767.98px) {
  #mascotte-office {
    right: -12%;
    max-height: 185px;
  }
}
@media (min-width: 1200px) {
  #mascotte-office {
    right: 16%;
  }
}

.card-primary {
  background: linear-gradient(180deg, rgba(68, 187, 249, 0.7) 0%, rgba(48, 131, 185, 0.95) 100%);
  border-radius: 50px;
  margin: auto;
  color: white;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}

.card-secondary {
  background: linear-gradient(180deg, rgba(238, 91, 4, 0.5) 0%, rgba(238, 91, 4, 0.7) 40%, rgb(238, 91, 4) 100%);
  border-radius: 50px;
  margin: auto;
  color: white;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}

.card-white {
  background-color: white;
  border-radius: 50px;
  margin: auto;
  color: white;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}

/*************/
/** Courses **/
/*************/
#courses-headline .courses-headline-img-mobile {
  position: relative;
  height: 35dvh;
}
#courses-headline .courses-headline-img-mobile svg {
  position: absolute;
  left: 0;
  bottom: -2px;
}

#courses-steps .steps-container {
  max-width: 1000px;
}
#courses-steps .steps-container .steps-line-courses {
  width: 56%;
  top: 8%;
}
#courses-steps .steps-container-mobile {
  max-width: 350px;
}
#courses-steps .steps-container-mobile .steps-line-courses-mobile {
  top: 5%;
  width: 80%;
  z-index: 0 !important;
}

/************/
/** Static **/
/************/
#reviews h2 {
  max-width: 600px;
}
#reviews .carousel-review {
  cursor: grab;
  max-width: 1000px;
}
@media (max-width: 1199.98px) {
  #reviews .carousel-review {
    max-width: 800px;
  }
}
@media (max-width: 991.98px) {
  #reviews .carousel-review {
    max-width: 500px;
  }
}
#reviews .carousel-review .card {
  width: 400px;
  min-height: 230px;
  border: none;
  border-radius: 20px;
  overflow: hidden;
}
@media (max-width: 1199.98px) {
  #reviews .carousel-review .card {
    width: 350px;
  }
}
#reviews .carousel-review .card .stars {
  height: 20px;
  margin: 15px 15px 0 0;
  gap: 5px;
}
#reviews .carousel-review .card .stars .star {
  width: 15px;
  height: 15px;
}
#reviews .carousel-review .card .review-text {
  position: relative;
  font-size: 16px;
}
@media (max-width: 991.98px) {
  #reviews .carousel-review .card .review-text {
    font-size: 15px;
  }
}
#reviews .carousel-review .card .review-text::before {
  content: "“";
  position: absolute;
  top: -15px;
  left: -5px;
  font-size: 35px;
  font-weight: 700;
  font-family: "Sniglet", system-ui;
}
#reviews .carousel-review .card .review-text::after {
  content: "“";
  transform: rotate(180deg);
  position: absolute;
  bottom: -15px;
  right: -5px;
  font-size: 35px;
  font-weight: 700;
  font-family: "Sniglet", system-ui;
}
#reviews .carousel-review .card .footline {
  position: relative;
  bottom: 0;
  left: 0;
  display: flex;
  width: 100%;
  padding: 15px;
}
#reviews .carousel-review .card .footline img,
#reviews .carousel-review .card .footline p,
#reviews .carousel-review .card .footline span {
  position: relative;
  z-index: 1;
}
#reviews .carousel-review .card .footline::before {
  content: "";
  background: linear-gradient(90deg, #40A3FF 0%, #22307E 100%);
  width: 110%;
  height: 90px;
  position: absolute;
  top: 5%;
  left: -10px;
  transform: rotate(3deg);
  z-index: 0;
}
#reviews .carousel-review .card .footline .flag {
  width: 50px;
  height: 50px;
  margin-right: 10px;
}
#reviews .slick-dots li button::before {
  display: block;
  position: relative;
  content: "";
  background: var(--extralight);
  width: 10px;
  height: 10px;
  opacity: 1;
  box-shadow: 0;
  border-radius: 50%;
  transition: all 0.3s ease-in-out;
}
#reviews .slick-dots li.slick-active {
  position: relative;
  margin-right: 40px;
}
#reviews .slick-dots li.slick-active button::before {
  background: var(--secondary);
  width: 50px;
  border-radius: 25px;
}
#reviews .slick-prev,
#reviews .slick-next {
  transform: translateY(-20px);
}
#reviews .slick-prev::before,
#reviews .slick-next::before {
  opacity: 1;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 575.98px) {
  #reviews .slick-prev::before,
  #reviews .slick-next::before {
    display: none;
  }
}
#reviews .slick-prev::before {
  content: url(/build/images/chevron-secondary-left.c167d5b7.svg);
}
#reviews .slick-next::before {
  content: url(/build/images/chevron-secondary-right.230aae57.svg);
}
#reviews .slick-disabled::before {
  filter: grayscale(1);
  opacity: 0.3;
  cursor: default;
}

#blog-suggestion .carousel-blog {
  cursor: grab;
  max-width: 800px;
}
@media (max-width: 767.98px) {
  #blog-suggestion .carousel-blog {
    max-width: 600px;
  }
}
@media (max-width: 575.98px) {
  #blog-suggestion .carousel-blog {
    max-width: 400px;
  }
}
#blog-suggestion .carousel-blog .slick-list {
  padding-right: 60px;
}
@media (max-width: 767.98px) {
  #blog-suggestion .carousel-blog .slick-slide {
    transform: translateX(45px);
  }
}
#blog-suggestion .slick-dots li button::before {
  display: block;
  position: relative;
  content: "";
  background: var(--extralight);
  width: 10px;
  height: 10px;
  opacity: 1;
  box-shadow: 0;
  border-radius: 50%;
  transition: all 0.3s ease-in-out;
}
#blog-suggestion .slick-dots li.slick-active {
  position: relative;
  margin-right: 40px;
}
#blog-suggestion .slick-dots li.slick-active button::before {
  background: var(--secondary);
  width: 50px;
  border-radius: 25px;
}
#blog-suggestion .slick-prev,
#blog-suggestion .slick-next {
  transform: translateY(-20px);
}
#blog-suggestion .slick-prev::before,
#blog-suggestion .slick-next::before {
  opacity: 1;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 575.98px) {
  #blog-suggestion .slick-prev::before,
  #blog-suggestion .slick-next::before {
    display: none;
  }
}
#blog-suggestion .slick-prev::before {
  content: url(/build/images/chevron-secondary-left.c167d5b7.svg);
}
#blog-suggestion .slick-next::before {
  content: url(/build/images/chevron-secondary-right.230aae57.svg);
}
#blog-suggestion .slick-disabled::before {
  filter: grayscale(1);
  opacity: 0.3;
  cursor: default;
}

#languages .lang-target img {
  width: 70px;
  transition: all 0.1s ease-in-out !important;
}
@media (max-width: 575.98px) {
  #languages .lang-target img {
    width: 60px;
  }
}
#languages .lang-target.available:hover {
  cursor: pointer;
}
#languages .lang-target.available:hover img {
  transform: scale(1.1);
}
#languages .lang-target .new-pellet {
  position: absolute;
  top: -10px;
  left: 30%;
}

#languages-full .inactive-flag {
  width: 55px;
  filter: grayscale(1);
}
@media (max-width: 575.98px) {
  #languages-full .inactive-flag {
    width: 45px;
  }
}

#download .mockup {
  width: 100%;
  max-width: 400px;
}
#download .store img {
  max-width: 180px;
}
@media (max-width: 575.98px) {
  #download .store img {
    max-width: 160px;
  }
}

#solutions .card-solution {
  width: 275px;
  height: 350px;
  transition: all 0.3s ease-in-out;
}
#solutions .card-solution .card-title {
  width: 250px;
}
#solutions .card-solution img {
  width: 100%;
  height: auto;
}
#solutions .card-solution p.card-description {
  display: none;
  font-size: 14px;
}
#solutions .card-solution:hover {
  width: 325px;
  height: auto;
  transform: translateY(-50px);
}
#solutions .card-solution:hover p.card-description {
  display: block;
}

.faq-questions {
  max-width: 500px;
}
.faq-questions #blue-circle-1 {
  transition: all 0.1s ease-in-out;
  width: 200px;
  top: 45%;
  left: -130px;
}
@media (max-width: 767.98px) {
  .faq-questions #blue-circle-1 {
    width: 100px;
    top: 60%;
    left: -30px;
  }
}
.faq-questions #blue-circle-2 {
  transition: all 0.1s ease-in-out;
  transform: rotate(180deg);
  width: 230px;
  bottom: 50%;
  right: -130px;
}
@media (max-width: 767.98px) {
  .faq-questions #blue-circle-2 {
    width: 120px;
    bottom: 50%;
    right: -40px;
  }
}
.faq-questions #blue-circle-3 {
  transition: all 0.1s ease-in-out;
  width: 90px;
  top: 85%;
  left: -60px;
}
@media (max-width: 767.98px) {
  .faq-questions #blue-circle-3 {
    width: 50px;
    top: 100%;
    left: 15px;
  }
}
.faq-questions #blue-circle-4 {
  transition: all 0.1s ease-in-out;
  transform: rotate(180deg);
  width: 125px;
  top: -25%;
  right: -20px;
}
@media (max-width: 767.98px) {
  .faq-questions #blue-circle-4 {
    width: 80px;
    top: -20%;
    right: -10px;
  }
}
.faq-questions #blue-circle-5 {
  transition: all 0.1s ease-in-out;
  width: 110px;
  top: 85%;
  left: 35px;
}
@media (max-width: 767.98px) {
  .faq-questions #blue-circle-5 {
    width: 80px;
    top: 90%;
    left: 70px;
  }
}
.faq-questions #blue-circle-6 {
  transition: all 0.1s ease-in-out;
  width: 70px;
  bottom: 85%;
  right: 90px;
}
@media (max-width: 767.98px) {
  .faq-questions #blue-circle-6 {
    width: 40px;
    bottom: 85%;
  }
}
.faq-questions:hover #blue-circle-1 {
  width: 200px;
  top: 50%;
  left: -180px;
}
.faq-questions:hover #blue-circle-2 {
  transform: rotate(180deg);
  width: 230px;
  bottom: 50%;
  right: -190px;
}
.faq-questions:hover #blue-circle-3 {
  width: 90px;
  top: 105%;
  left: -120px;
}
.faq-questions:hover #blue-circle-4 {
  transform: rotate(180deg);
  width: 125px;
  top: -45%;
  right: -50px;
}
.faq-questions:hover #blue-circle-5 {
  width: 110px;
  top: 100%;
  left: 35px;
}
.faq-questions:hover #blue-circle-6 {
  width: 70px;
  bottom: 100%;
  right: 100px;
}

#faq-component {
  background: linear-gradient(#f79b66 0%, #f35b04 40%, #f35b04 70%, #f79b66 100%);
}
#faq-component .faq-item {
  position: relative;
  border-radius: 15px;
  border-bottom-right-radius: 0px;
  max-width: 600px;
}
#faq-component .faq-item img {
  width: 20px;
}
#faq-component .faq-item[aria-expanded=true] img {
  transform: rotate(45deg);
}

#newsletter #newsletter-message {
  position: fixed;
  right: 20px;
  top: 100px;
  z-index: 100;
}
#newsletter .img-newsletter {
  transform: translateY(-100px);
}
@media (max-width: 767.98px) {
  #newsletter .img-newsletter {
    transform: translate(0);
  }
}
#newsletter .chevron {
  width: 20px;
  rotate: -90deg;
}

/****************/
/** Components **/
/****************/
.languages-accordion .languages-main .lang-target {
  left: 0;
  opacity: 0;
}
.languages-accordion .languages-main .lang-target.active {
  opacity: 1;
}
.languages-accordion .languages-option .lang-target.active {
  opacity: 0.5;
  cursor: default !important;
}
.languages-accordion .main-flag {
  width: 60px;
}
.languages-accordion .second-flag {
  width: 25px;
}
.languages-accordion .chevron {
  width: 25px;
}
.languages-accordion .languages-main[aria-expanded=true] .chevron {
  transform: rotate(-180deg);
}

.language-banner .chevron {
  width: 25px;
  rotate: -90deg;
}
.language-banner .main-flag {
  width: 50px;
}

.blog-card {
  overflow: hidden;
  max-width: 350px;
  height: 500px;
}
.blog-card .card-headline-image {
  width: 100%;
  height: 180px;
  object-fit: cover;
  object-position: center;
  display: block;
}
.blog-card .card-headline-image:hover {
  transform: scale(1.05);
}
.blog-card .card-content {
  width: 100%;
  height: 325px;
  padding: 20px 30px;
  display: flex;
  flex-direction: column;
}
.blog-card .card-content .article-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: start;
  gap: 5px;
}
.blog-card .card-content .article-title {
  min-height: 76px;
  margin-bottom: 10px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.blog-card .card-content .article-content {
  min-height: 67px;
  margin-bottom: 15px;
  font-size: 15px;
  color: var(--dark);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.blog-card .card-content .icon {
  width: 25px;
}
.blog-card .card-content .article-link {
  display: flex;
  align-items: end;
  margin-top: auto;
}

.formation-card {
  overflow: hidden;
  width: 400px;
  height: 580px;
}
.formation-card .banner-img {
  height: 15em;
}
.formation-card .banner-img svg {
  position: absolute;
  bottom: -1px;
}
.formation-card .formation-content {
  padding-left: 30px;
  padding-right: 30px;
}
.formation-card .formation-content .flag {
  width: 25px;
}
.formation-card .formation-content .formation-details .icon {
  max-width: 20px;
}
.formation-card .formation-price {
  color: transparent;
  background-clip: text;
}

#formation-headline .flag {
  width: 25px;
}
#formation-headline .icon {
  max-width: 30px;
}
#formation-headline .formation-headline-img {
  position: relative;
  width: 100%;
  min-height: 60dvh;
  border-radius: 0 0 0 50%;
  overflow: hidden;
}
#formation-headline .formation-headline-img-mobile {
  position: relative;
  width: 100%;
  height: 35dvh;
}
#formation-headline .formation-headline-img-mobile svg {
  position: absolute;
  left: 0;
  top: -2px;
  rotate: 180deg;
}

#formations .dropdown-menu a {
  text-decoration: none !important;
}
#formations .dropdown-menu a:last-child {
  border-bottom: none !important;
}
#formations .dropdown-sort .chevron {
  width: 10px;
}
#formations .flag {
  width: 20px;
}
#formations .icon-filter {
  width: 15px;
}
#formations .cross {
  width: 10px;
  rotate: 45deg;
  right: 8px;
}
#formations .pagination-buttons .page-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px !important;
  height: 30px !important;
  padding: 0 !important;
  border-radius: 50%;
  background: linear-gradient(180deg, #F6CEB7 -31.67%, #F35B04 79.07%);
  color: var(--white);
  border: none;
  user-select: none !important;
  cursor: default;
}
#formations .pagination-buttons .page-btn.inactive {
  background: none;
  color: var(--secondary);
  cursor: pointer;
}

.icon-filter {
  width: 20px;
}

#article-headline .icon {
  max-width: 30px;
}
#article-headline .icon-share {
  max-width: 40px;
}
#article-headline .chevron {
  max-width: 8px;
}
#article-headline .article-headline-img {
  position: relative;
  width: 100%;
  min-height: 60dvh;
  border-radius: 0 0 50% 0;
  overflow: hidden;
}
#article-headline .article-headline-img-mobile {
  position: relative;
  width: 100%;
  height: 35dvh;
}
#article-headline .article-headline-img-mobile svg {
  position: absolute;
  left: 0;
  bottom: -2px;
}

.article-author-card {
  max-width: 1200px;
}
.article-author-card img {
  max-width: 200px;
}
.article-author-card .icon-share {
  max-width: 45px;
}
.article-author-card .share-media {
  border-left: 2px solid var(--secondary);
}
@media (max-width: 767.98px) {
  .article-author-card .share-media {
    border-left: none;
  }
}

.article-full .dropdown-toggle .chevron {
  width: 15px;
}
.article-full .dropdown-toggle[aria-expanded=true] .chevron {
  transform: rotate(180deg);
}
.article-full .article-full-content {
  box-shadow: -10px 0 5px -5px rgba(0, 0, 0, 0.1);
}
@media (max-width: 767.98px) {
  .article-full .article-full-content {
    box-shadow: none;
  }
}
.article-full .article-full-content h1,
.article-full .article-full-content h2 {
  font-family: "Sniglet";
  color: var(--primary);
  font-size: 2.5rem;
  line-height: 3.2rem;
  margin: 2rem 0 1.5rem 0;
}
@media (max-width: 575.98px) {
  .article-full .article-full-content h1,
  .article-full .article-full-content h2 {
    font-size: 1.6rem !important;
    line-height: 1.8rem !important;
  }
}
.article-full .article-full-content h3 {
  font-family: "Sniglet";
  color: var(--secondary);
  font-size: 1.4rem;
  line-height: 1.6rem;
  margin: 1.5rem 0 1rem 0;
}
.article-full .article-full-content ul {
  padding-left: 50px;
}

.article-learn-card .orange-lg-left {
  width: 150px;
  bottom: 5%;
  transform: rotate(180deg);
  left: -80px;
}
@media (max-width: 767.98px) {
  .article-learn-card .orange-lg-left {
    width: 120px;
    top: auto;
    left: -30px;
    bottom: 15%;
  }
}
.article-learn-card .orange-lg-right {
  width: 110px;
  bottom: 10%;
  right: -50px;
}
@media (max-width: 767.98px) {
  .article-learn-card .orange-lg-right {
    width: 100px;
    bottom: 0%;
    right: -10px;
  }
}
.article-learn-card .orange-sm-left {
  width: 60px;
  bottom: -3%;
  left: 10px;
}
@media (max-width: 767.98px) {
  .article-learn-card .orange-sm-left {
    width: 50px;
    left: 60px;
    top: auto;
    bottom: 10%;
  }
}
.article-learn-card .blue-left {
  width: 100px;
  bottom: 15%;
  left: -5px;
}
@media (max-width: 767.98px) {
  .article-learn-card .blue-left {
    width: 90px;
    top: auto;
    bottom: 0%;
    left: -10px;
  }
}
.article-learn-card .blue-right {
  width: 80px;
  bottom: 20%;
  right: -15px;
}
@media (max-width: 767.98px) {
  .article-learn-card .blue-right {
    width: 100px;
    bottom: 15%;
    right: -20px;
  }
}
.article-learn-card .blue-right-2 {
  width: 60px;
  bottom: 0;
  right: 0;
}
@media (max-width: 767.98px) {
  .article-learn-card .blue-right-2 {
    width: 60px;
    bottom: 12%;
    right: 60px;
  }
}

.searchbar {
  background-color: white;
  border-radius: 25px;
  width: fit-content;
  vertical-align: center;
  display: flex;
  align-items: center;
  box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.2);
}
.searchbar input {
  border: none;
  background: none;
}
.searchbar button {
  padding: 8px 20px;
}

.pagination {
  gap: 10px;
  padding: 10px;
}
.pagination .page-item .page-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px !important;
  height: 30px !important;
  padding: 0 !important;
  border-radius: 50%;
  background: none;
  color: var(--secondary);
  border: none;
  cursor: pointer;
}
.pagination .page-item.active .page-link {
  background: linear-gradient(180deg, #F6CEB7 -31.67%, #F35B04 79.07%);
  color: var(--white);
  cursor: default;
}

.tags-modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100dvw;
  height: 100dvh;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9999 !important;
  display: flex;
  justify-content: center;
  align-items: center;
}
.tags-modal .tags-modal-content {
  width: 40%;
}
@media (max-width: 767.98px) {
  .tags-modal .tags-modal-content {
    width: 90%;
  }
}
.tags-modal .close-btn {
  position: absolute;
  right: 20px;
  top: 20px;
  width: 30px;
  transform: rotate(45deg);
  cursor: pointer;
}
.tags-modal .close-btn:hover {
  transform: rotate(90deg);
}

#download-support #download-support-modal {
  max-width: 350px;
  position: fixed;
  left: 40px;
  bottom: 40px;
  z-index: 100 !important;
  transform: translateX(-150%);
}
@media (max-width: 767.98px) {
  #download-support #download-support-modal {
    left: 20px;
    bottom: 20px;
  }
}
#download-support #download-support-modal .close-btn {
  position: absolute;
  right: 10px;
  top: 10px;
  cursor: pointer;
}
#download-support #download-support-modal .support {
  background-color: var(--white);
  color: var(--secondary);
  cursor: pointer;
  transition: background-color 0.3s ease-in-out !important;
}
#download-support #download-support-modal .support.active {
  background-color: var(--primary);
  color: var(--white);
  cursor: default;
}
#download-support #download-support-modal .support .item-img {
  width: 70px;
  height: 70px;
  overflow: hidden;
}
#download-support #download-support-modal .chevron {
  width: 10px;
  transform: rotate(-90deg);
}
#download-support #download-support-modal-trigger {
  position: fixed;
  left: 40px;
  bottom: 40px;
  z-index: 100 !important;
}
@media (max-width: 767.98px) {
  #download-support #download-support-modal-trigger {
    left: 20px;
    bottom: 20px;
  }
}
#download-support .arrow-icon {
  width: 15px;
}

@keyframes slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
#customers .logos {
  overflow: hidden;
  background: white;
  white-space: nowrap;
  position: relative;
}
#customers .logos:before,
#customers .logos:after {
  position: absolute;
  top: 0;
  width: 100px;
  height: 100%;
  content: "";
  z-index: 2;
}
#customers .logos:before {
  left: 0;
  background: linear-gradient(to left, rgba(255, 255, 255, 0), white);
}
#customers .logos:after {
  right: 0;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), white);
}
#customers .logos:hover .logos-slide {
  animation-play-state: paused;
}
#customers .logos-slide {
  display: inline-block;
  animation: 35s slide infinite linear;
}
#customers .logos-slide img {
  height: 120px;
  margin: 0 40px;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd3d3LnNjc3MiLCJ3ZWJwYWNrOi8vL2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ib290c3RyYXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yb290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fanVtYm90cm9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ludGVyYWN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ByaW50LnNjc3MiLCJ3ZWJwYWNrOi8vL3Rvb2xzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1pY29ucy9pY29uZm9udC9taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWljb25zL2ljb25mb250L3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtaWNvbnMvaWNvbmZvbnQvbWF0ZXJpYWwtaWNvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay10aGVtZS5zY3NzIiwid2VicGFjazovLy9jb2xvcnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7RUFDRTtFQUNBO0VBQ0E7QURFRjtBQ0NBO0VBQ0U7RUFDQTtFQUNBO0FEQ0Y7QUNFQTtFQUNFO0VBQ0E7RUFDQTtBREFGO0FDR0E7RUFDRTtFQUNBO0VBQ0E7QURERjtBQ0lBO0VBQ0U7RUFDQTtFQUNBO0FERkY7QUNLQTtFQUNFO0VBQ0E7RUFDQTtBREhGO0FDTUE7RUFDRTtFQUNBO0VBQ0E7QURKRjtBQ09BO0VBQ0U7RUFDQTtFQUNBO0FETEY7QUNRQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QURORjtBQ1NBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRFBGO0FDVUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEUkY7QUNXQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QURURjtBRXBFQTs7Ozs7RUFBQTtBQ0FBO0VBR0k7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUtGO0VBQ0E7QUgrR0Y7O0FJOUdBOzs7RUFHRTtBSmlIRjs7QUk5R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBSmlIRjs7QUkzR0E7RUFDRTtBSjhHRjs7QUlwR0E7RUFDRTtFQUNBLHFOQ3NPNEI7RUNqR3hCO0VGbklKLGdCQytPNEI7RUQ5TzVCLGdCQ21QNEI7RURsUDVCLGNDbkNTO0VEb0NUO0VBQ0Esc0JDOUNTO0FMcUpYOztBSTNGQTtFQUNFO0FKOEZGOztBSXJGQTtFQUNFO0VBQ0E7RUFDQTtBSndGRjs7QUkzRUE7RUFDRTtFQUNBLHFCQ2lONEI7QUxuSTlCOztBSXZFQTtFQUNFO0VBQ0EsbUJDb0YwQjtBTFY1Qjs7QUkvREE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSmtFRjs7QUkvREE7RUFDRTtFQUNBO0VBQ0E7QUprRUY7O0FJL0RBOzs7RUFHRTtFQUNBO0FKa0VGOztBSS9EQTs7OztFQUlFO0FKa0VGOztBSS9EQTtFQUNFLGdCQ2tKNEI7QUxoRjlCOztBSS9EQTtFQUNFO0VBQ0E7QUprRUY7O0FJL0RBO0VBQ0U7QUprRUY7O0FJL0RBOztFQUVFLG1CQ3FJNEI7QUxuRTlCOztBSS9EQTtFRUlJO0FOK0RKOztBSTFEQTs7RUFFRTtFRVBFO0VGU0Y7RUFDQTtBSjZERjs7QUkxREE7RUFBTTtBSjhETjs7QUk3REE7RUFBTTtBSmlFTjs7QUkxREE7RUFDRSxjQ1h3QztFRFl4QyxxQkNYd0M7RURZeEM7QUo2REY7QU83T0U7RUhtTEUsdURDZHNDO0VEZXRDLDBCQ2RzQztBTDJFMUM7O0FJcERBO0VBQ0U7RUFDQTtBSnVERjtBT3RQRTtFSGtNRTtFQUNBO0FKdURKOztBSTlDQTs7OztFQUlFLGlHQzBENEI7RUNsSDFCO0FOMEdKOztBSTlDQTtFQUVFO0VBRUE7RUFFQTtFQUdBO0FKNENGOztBSXBDQTtFQUVFO0FKc0NGOztBSTlCQTtFQUNFO0VBQ0E7QUppQ0Y7O0FJOUJBO0VBR0U7RUFDQTtBSitCRjs7QUl2QkE7RUFDRTtBSjBCRjs7QUl2QkE7RUFDRSxvQkM4RTRCO0VEN0U1Qix1QkM2RTRCO0VENUU1QixjQ3RRUztFRHVRVDtFQUNBO0FKMEJGOztBSW5CQTtFQUVFO0VBQ0E7QUpxQkY7O0FJYkE7RUFFRTtFQUNBLHFCQzRKc0M7QUw3SXhDOztBSVRBO0VBRUU7QUpXRjs7QUlIQTtFQUNFO0FKTUY7O0FJSEE7Ozs7O0VBS0U7RUFDQTtFRWhLRTtFRmtLRjtBSk1GOztBSUhBOztFQUVFO0FKTUY7O0FJSEE7O0VBRUU7QUpNRjs7QUlBQTtFQUNFO0FKR0Y7O0FJR0E7RUFDRTtBSkFGOztBSU9BOzs7O0VBSUU7QUpKRjs7QUlhSTs7OztFQUNFO0FKUE47O0FJYUE7Ozs7RUFJRTtFQUNBO0FKVkY7O0FJYUE7O0VBRUU7RUFDQTtBSlZGOztBSWNBO0VBQ0U7RUFFQTtBSlpGOztBSWVBO0VBTUU7RUFFQTtFQUNBO0VBQ0E7QUpsQkY7O0FJdUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRTlPSTtFRmdQSjtFQUNBO0VBQ0E7QUpwQkY7O0FJdUJBO0VBQ0U7QUpwQkY7O0FJd0JBOztFQUVFO0FKckJGOztBSXdCQTtFQUtFO0VBQ0E7QUp6QkY7O0FJZ0NBO0VBQ0U7QUo3QkY7O0FJcUNBO0VBQ0U7RUFDQTtBSmxDRjs7QUl5Q0E7RUFDRTtBSnRDRjs7QUl5Q0E7RUFDRTtFQUNBO0FKdENGOztBSXlDQTtFQUNFO0FKdENGOztBSTJDQTtFQUNFO0FKeENGOztBUXBiQTs7RUFFRSxxQkhzUzRCO0VHcFM1QixnQkhzUzRCO0VHclM1QixnQkhzUzRCO0FMZ0o5Qjs7QVFsYkE7RUZxS007QU5pUk47O0FRcmJBO0VGb0tNO0FOcVJOOztBUXhiQTtFRm1LTTtBTnlSTjs7QVEzYkE7RUZrS007QU42Uk47O0FROWJBO0VGaUtNO0FOaVNOOztBUWpjQTtFRmdLTTtBTnFTTjs7QVFuY0E7RUY4Sk07RUU1SkosZ0JId1M0QjtBTDhKOUI7O0FRbGNBO0VGd0pNO0VFdEpKLGdCSDJSNEI7RUcxUjVCLGdCSGtSNEI7QUxtTDlCOztBUW5jQTtFRm1KTTtFRWpKSixnQkh1UjRCO0VHdFI1QixnQkg2UTRCO0FMeUw5Qjs7QVFwY0E7RUY4SU07RUU1SUosZ0JIbVI0QjtFR2xSNUIsZ0JId1E0QjtBTCtMOUI7O0FRcmNBO0VGeUlNO0VFdklKLGdCSCtRNEI7RUc5UTVCLGdCSG1RNEI7QUxxTTlCOztBUWhjQTtFQUNFLGdCSGdGTztFRy9FUCxtQkgrRU87RUc5RVA7RUFDQTtBUm1jRjs7QVEzYkE7O0VGa0dJO0VFL0ZGLGdCSDJONEI7QUxtTzlCOztBUTNiQTs7RUFFRSxjSG1RNEI7RUdsUTVCLHlCSDJRNEI7QUxtTDlCOztBUXRiQTtFQy9FRTtFQUNBO0FUeWdCRjs7QVF0YkE7RUNwRkU7RUFDQTtBVDhnQkY7O0FReGJBO0VBQ0U7QVIyYkY7QVF6YkU7RUFDRSxvQkhxUDBCO0FMc005Qjs7QVFqYkE7RUYyREk7RUV6REY7QVJvYkY7O0FRaGJBO0VBQ0UsbUJIdUJPO0VDNkNIO0FOZ1hOOztBUWhiQTtFQUNFO0VGK0NFO0VFN0NGLGNIMUdTO0FMNmhCWDtBUWpiRTtFQUNFO0FSbWJKOztBVXRpQkE7RUNJRTtFQUdBO0FYb2lCRjs7QVVyaUJBO0VBQ0UsZ0JMcWdDa0M7RUtwZ0NsQyxzQkxSUztFS1NUO0VFRUU7RURQRjtFQUdBO0FYNmlCRjs7QVUvaEJBO0VBRUU7QVZpaUJGOztBVTloQkE7RUFDRTtFQUNBO0FWaWlCRjs7QVU5aEJBO0VKOEhJO0VJNUhGLGNMM0JTO0FMNGpCWDs7QWF4a0JBO0VQbUtJO0VPaktGLGNSbUNRO0VRbENSO0FiMmtCRjtBYXhrQkU7RUFDRTtBYjBrQko7O0FhcmtCQTtFQUNFO0VQc0pFO0VPcEpGLFdSVFM7RVFVVCx5QlJEUztFT0VQO0Fad2tCSjtBYXJrQkU7RUFDRTtFUDhJQTtFTzVJQSxnQlJ5UTBCO0FMOFQ5Qjs7QWFqa0JBO0VBQ0U7RVBxSUU7RU9uSUYsY1JqQlM7QUxxbEJYO0FhamtCRTtFUGdJRTtFTzlIQTtFQUNBO0FibWtCSjs7QWE5akJBO0VBQ0UsaUJSaWtDa0M7RVFoa0NsQztBYmlrQkY7O0Fjem1CRTs7Ozs7O0VDREE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZm1uQkY7O0FnQmhrQkk7RUZ6Q0U7SUFDRSxnQlQ4TGU7RUwrYXJCO0FBQ0Y7QWdCdGtCSTtFRnpDRTtJQUNFLGdCVDhMZTtFTG9ickI7QUFDRjtBZ0Iza0JJO0VGekNFO0lBQ0UsZ0JUOExlO0VMeWJyQjtBQUNGO0FnQmhsQkk7RUZ6Q0U7SUFDRSxpQlQ4TGU7RUw4YnJCO0FBQ0Y7QWNqbUJFO0VDbkNBO0VBQ0E7RUFDQTtFQUNBO0FmdW9CRjs7QWNqbUJFO0VBQ0U7RUFDQTtBZG9tQko7QWNsbUJJOztFQUVFO0VBQ0E7QWRvbUJOOztBaUIxcEJFOzs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakJrcUJKOztBaUI1b0JNO0VBQ0U7RUFDQTtFQUNBO0FqQitvQlI7O0Flbm5CRTtFQUNFO0VBQ0E7QWZzbkJKOztBZXhuQkU7RUFDRTtFQUNBO0FmMm5CSjs7QWU3bkJFO0VBQ0U7RUFDQTtBZmdvQko7O0FlbG9CRTtFQUNFO0VBQ0E7QWZxb0JKOztBZXZvQkU7RUFDRTtFQUNBO0FmMG9CSjs7QWU1b0JFO0VBQ0U7RUFDQTtBZitvQko7O0FpQmxxQk07RUZDSjtFQUNBO0VBQ0E7QWZxcUJGOztBaUJscUJVO0VGYlI7RUFJQTtBZmdyQkY7O0FpQnZxQlU7RUZiUjtFQUlBO0FmcXJCRjs7QWlCNXFCVTtFRmJSO0VBSUE7QWYwckJGOztBaUJqckJVO0VGYlI7RUFJQTtBZityQkY7O0FpQnRyQlU7RUZiUjtFQUlBO0Fmb3NCRjs7QWlCM3JCVTtFRmJSO0VBSUE7QWZ5c0JGOztBaUJoc0JVO0VGYlI7RUFJQTtBZjhzQkY7O0FpQnJzQlU7RUZiUjtFQUlBO0FmbXRCRjs7QWlCMXNCVTtFRmJSO0VBSUE7QWZ3dEJGOztBaUIvc0JVO0VGYlI7RUFJQTtBZjZ0QkY7O0FpQnB0QlU7RUZiUjtFQUlBO0Fma3VCRjs7QWlCenRCVTtFRmJSO0VBSUE7QWZ1dUJGOztBaUJ4dEJNO0VBQXdCO0FqQjR0QjlCOztBaUIxdEJNO0VBQXVCO0FqQjh0QjdCOztBaUIzdEJRO0VBQXdCLFFBRGI7QWpCZ3VCbkI7O0FpQi90QlE7RUFBd0IsUUFEYjtBakJvdUJuQjs7QWlCbnVCUTtFQUF3QixRQURiO0FqQnd1Qm5COztBaUJ2dUJRO0VBQXdCLFFBRGI7QWpCNHVCbkI7O0FpQjN1QlE7RUFBd0IsUUFEYjtBakJndkJuQjs7QWlCL3VCUTtFQUF3QixRQURiO0FqQm92Qm5COztBaUJudkJRO0VBQXdCLFFBRGI7QWpCd3ZCbkI7O0FpQnZ2QlE7RUFBd0IsUUFEYjtBakI0dkJuQjs7QWlCM3ZCUTtFQUF3QixRQURiO0FqQmd3Qm5COztBaUIvdkJRO0VBQXdCLFFBRGI7QWpCb3dCbkI7O0FpQm53QlE7RUFBd0IsU0FEYjtBakJ3d0JuQjs7QWlCdndCUTtFQUF3QixTQURiO0FqQjR3Qm5COztBaUIzd0JRO0VBQXdCLFNBRGI7QWpCZ3hCbkI7O0FpQnh3Qlk7RUZoQlY7QWY0eEJGOztBaUI1d0JZO0VGaEJWO0FmZ3lCRjs7QWlCaHhCWTtFRmhCVjtBZm95QkY7O0FpQnB4Qlk7RUZoQlY7QWZ3eUJGOztBaUJ4eEJZO0VGaEJWO0FmNHlCRjs7QWlCNXhCWTtFRmhCVjtBZmd6QkY7O0FpQmh5Qlk7RUZoQlY7QWZvekJGOztBaUJweUJZO0VGaEJWO0Fmd3pCRjs7QWlCeHlCWTtFRmhCVjtBZjR6QkY7O0FpQjV5Qlk7RUZoQlY7QWZnMEJGOztBaUJoekJZO0VGaEJWO0FmbzBCRjs7QWdCL3pCSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFakI4MUJOO0VlbDBCQTtJQUNFO0lBQ0E7RWZvMEJGO0VldDBCQTtJQUNFO0lBQ0E7RWZ3MEJGO0VlMTBCQTtJQUNFO0lBQ0E7RWY0MEJGO0VlOTBCQTtJQUNFO0lBQ0E7RWZnMUJGO0VlbDFCQTtJQUNFO0lBQ0E7RWZvMUJGO0VldDFCQTtJQUNFO0lBQ0E7RWZ3MUJGO0VpQjMyQkk7SUZDSjtJQUNBO0lBQ0E7RWY2MkJBO0VpQjEyQlE7SUZiUjtJQUlBO0VmdTNCQTtFaUI5MkJRO0lGYlI7SUFJQTtFZjIzQkE7RWlCbDNCUTtJRmJSO0lBSUE7RWYrM0JBO0VpQnQzQlE7SUZiUjtJQUlBO0VmbTRCQTtFaUIxM0JRO0lGYlI7SUFJQTtFZnU0QkE7RWlCOTNCUTtJRmJSO0lBSUE7RWYyNEJBO0VpQmw0QlE7SUZiUjtJQUlBO0VmKzRCQTtFaUJ0NEJRO0lGYlI7SUFJQTtFZm01QkE7RWlCMTRCUTtJRmJSO0lBSUE7RWZ1NUJBO0VpQjk0QlE7SUZiUjtJQUlBO0VmMjVCQTtFaUJsNUJRO0lGYlI7SUFJQTtFZis1QkE7RWlCdDVCUTtJRmJSO0lBSUE7RWZtNkJBO0VpQnA1Qkk7SUFBd0I7RWpCdTVCNUI7RWlCcjVCSTtJQUF1QjtFakJ3NUIzQjtFaUJyNUJNO0lBQXdCLFFBRGI7RWpCeTVCakI7RWlCeDVCTTtJQUF3QixRQURiO0VqQjQ1QmpCO0VpQjM1Qk07SUFBd0IsUUFEYjtFakIrNUJqQjtFaUI5NUJNO0lBQXdCLFFBRGI7RWpCazZCakI7RWlCajZCTTtJQUF3QixRQURiO0VqQnE2QmpCO0VpQnA2Qk07SUFBd0IsUUFEYjtFakJ3NkJqQjtFaUJ2NkJNO0lBQXdCLFFBRGI7RWpCMjZCakI7RWlCMTZCTTtJQUF3QixRQURiO0VqQjg2QmpCO0VpQjc2Qk07SUFBd0IsUUFEYjtFakJpN0JqQjtFaUJoN0JNO0lBQXdCLFFBRGI7RWpCbzdCakI7RWlCbjdCTTtJQUF3QixTQURiO0VqQnU3QmpCO0VpQnQ3Qk07SUFBd0IsU0FEYjtFakIwN0JqQjtFaUJ6N0JNO0lBQXdCLFNBRGI7RWpCNjdCakI7RWlCcjdCVTtJRmhCVjtFZnc4QkE7RWlCeDdCVTtJRmhCVjtFZjI4QkE7RWlCMzdCVTtJRmhCVjtFZjg4QkE7RWlCOTdCVTtJRmhCVjtFZmk5QkE7RWlCajhCVTtJRmhCVjtFZm85QkE7RWlCcDhCVTtJRmhCVjtFZnU5QkE7RWlCdjhCVTtJRmhCVjtFZjA5QkE7RWlCMThCVTtJRmhCVjtFZjY5QkE7RWlCNzhCVTtJRmhCVjtFZmcrQkE7RWlCaDlCVTtJRmhCVjtFZm0rQkE7RWlCbjlCVTtJRmhCVjtFZnMrQkE7RWlCdDlCVTtJRmhCVjtFZnkrQkE7QUFDRjtBZ0JyK0JJO0VDM0JFO0lBQ0U7SUFDQTtJQUNBO0VqQm1nQ047RWV2K0JBO0lBQ0U7SUFDQTtFZnkrQkY7RWUzK0JBO0lBQ0U7SUFDQTtFZjYrQkY7RWUvK0JBO0lBQ0U7SUFDQTtFZmkvQkY7RWVuL0JBO0lBQ0U7SUFDQTtFZnEvQkY7RWV2L0JBO0lBQ0U7SUFDQTtFZnkvQkY7RWUzL0JBO0lBQ0U7SUFDQTtFZjYvQkY7RWlCaGhDSTtJRkNKO0lBQ0E7SUFDQTtFZmtoQ0E7RWlCL2dDUTtJRmJSO0lBSUE7RWY0aENBO0VpQm5oQ1E7SUZiUjtJQUlBO0VmZ2lDQTtFaUJ2aENRO0lGYlI7SUFJQTtFZm9pQ0E7RWlCM2hDUTtJRmJSO0lBSUE7RWZ3aUNBO0VpQi9oQ1E7SUZiUjtJQUlBO0VmNGlDQTtFaUJuaUNRO0lGYlI7SUFJQTtFZmdqQ0E7RWlCdmlDUTtJRmJSO0lBSUE7RWZvakNBO0VpQjNpQ1E7SUZiUjtJQUlBO0Vmd2pDQTtFaUIvaUNRO0lGYlI7SUFJQTtFZjRqQ0E7RWlCbmpDUTtJRmJSO0lBSUE7RWZna0NBO0VpQnZqQ1E7SUZiUjtJQUlBO0Vmb2tDQTtFaUIzakNRO0lGYlI7SUFJQTtFZndrQ0E7RWlCempDSTtJQUF3QjtFakI0akM1QjtFaUIxakNJO0lBQXVCO0VqQjZqQzNCO0VpQjFqQ007SUFBd0IsUUFEYjtFakI4akNqQjtFaUI3akNNO0lBQXdCLFFBRGI7RWpCaWtDakI7RWlCaGtDTTtJQUF3QixRQURiO0VqQm9rQ2pCO0VpQm5rQ007SUFBd0IsUUFEYjtFakJ1a0NqQjtFaUJ0a0NNO0lBQXdCLFFBRGI7RWpCMGtDakI7RWlCemtDTTtJQUF3QixRQURiO0VqQjZrQ2pCO0VpQjVrQ007SUFBd0IsUUFEYjtFakJnbENqQjtFaUIva0NNO0lBQXdCLFFBRGI7RWpCbWxDakI7RWlCbGxDTTtJQUF3QixRQURiO0VqQnNsQ2pCO0VpQnJsQ007SUFBd0IsUUFEYjtFakJ5bENqQjtFaUJ4bENNO0lBQXdCLFNBRGI7RWpCNGxDakI7RWlCM2xDTTtJQUF3QixTQURiO0VqQitsQ2pCO0VpQjlsQ007SUFBd0IsU0FEYjtFakJrbUNqQjtFaUIxbENVO0lGaEJWO0VmNm1DQTtFaUI3bENVO0lGaEJWO0VmZ25DQTtFaUJobUNVO0lGaEJWO0VmbW5DQTtFaUJubUNVO0lGaEJWO0Vmc25DQTtFaUJ0bUNVO0lGaEJWO0VmeW5DQTtFaUJ6bUNVO0lGaEJWO0VmNG5DQTtFaUI1bUNVO0lGaEJWO0VmK25DQTtFaUIvbUNVO0lGaEJWO0Vma29DQTtFaUJsbkNVO0lGaEJWO0VmcW9DQTtFaUJybkNVO0lGaEJWO0Vmd29DQTtFaUJ4bkNVO0lGaEJWO0VmMm9DQTtFaUIzbkNVO0lGaEJWO0VmOG9DQTtBQUNGO0FnQjFvQ0k7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RWpCd3FDTjtFZTVvQ0E7SUFDRTtJQUNBO0VmOG9DRjtFZWhwQ0E7SUFDRTtJQUNBO0Vma3BDRjtFZXBwQ0E7SUFDRTtJQUNBO0Vmc3BDRjtFZXhwQ0E7SUFDRTtJQUNBO0VmMHBDRjtFZTVwQ0E7SUFDRTtJQUNBO0VmOHBDRjtFZWhxQ0E7SUFDRTtJQUNBO0Vma3FDRjtFaUJyckNJO0lGQ0o7SUFDQTtJQUNBO0VmdXJDQTtFaUJwckNRO0lGYlI7SUFJQTtFZmlzQ0E7RWlCeHJDUTtJRmJSO0lBSUE7RWZxc0NBO0VpQjVyQ1E7SUZiUjtJQUlBO0VmeXNDQTtFaUJoc0NRO0lGYlI7SUFJQTtFZjZzQ0E7RWlCcHNDUTtJRmJSO0lBSUE7RWZpdENBO0VpQnhzQ1E7SUZiUjtJQUlBO0VmcXRDQTtFaUI1c0NRO0lGYlI7SUFJQTtFZnl0Q0E7RWlCaHRDUTtJRmJSO0lBSUE7RWY2dENBO0VpQnB0Q1E7SUZiUjtJQUlBO0VmaXVDQTtFaUJ4dENRO0lGYlI7SUFJQTtFZnF1Q0E7RWlCNXRDUTtJRmJSO0lBSUE7RWZ5dUNBO0VpQmh1Q1E7SUZiUjtJQUlBO0VmNnVDQTtFaUI5dENJO0lBQXdCO0VqQml1QzVCO0VpQi90Q0k7SUFBdUI7RWpCa3VDM0I7RWlCL3RDTTtJQUF3QixRQURiO0VqQm11Q2pCO0VpQmx1Q007SUFBd0IsUUFEYjtFakJzdUNqQjtFaUJydUNNO0lBQXdCLFFBRGI7RWpCeXVDakI7RWlCeHVDTTtJQUF3QixRQURiO0VqQjR1Q2pCO0VpQjN1Q007SUFBd0IsUUFEYjtFakIrdUNqQjtFaUI5dUNNO0lBQXdCLFFBRGI7RWpCa3ZDakI7RWlCanZDTTtJQUF3QixRQURiO0VqQnF2Q2pCO0VpQnB2Q007SUFBd0IsUUFEYjtFakJ3dkNqQjtFaUJ2dkNNO0lBQXdCLFFBRGI7RWpCMnZDakI7RWlCMXZDTTtJQUF3QixRQURiO0VqQjh2Q2pCO0VpQjd2Q007SUFBd0IsU0FEYjtFakJpd0NqQjtFaUJod0NNO0lBQXdCLFNBRGI7RWpCb3dDakI7RWlCbndDTTtJQUF3QixTQURiO0VqQnV3Q2pCO0VpQi92Q1U7SUZoQlY7RWZreENBO0VpQmx3Q1U7SUZoQlY7RWZxeENBO0VpQnJ3Q1U7SUZoQlY7RWZ3eENBO0VpQnh3Q1U7SUZoQlY7RWYyeENBO0VpQjN3Q1U7SUZoQlY7RWY4eENBO0VpQjl3Q1U7SUZoQlY7RWZpeUNBO0VpQmp4Q1U7SUZoQlY7RWZveUNBO0VpQnB4Q1U7SUZoQlY7RWZ1eUNBO0VpQnZ4Q1U7SUZoQlY7RWYweUNBO0VpQjF4Q1U7SUZoQlY7RWY2eUNBO0VpQjd4Q1U7SUZoQlY7RWZnekNBO0VpQmh5Q1U7SUZoQlY7RWZtekNBO0FBQ0Y7QWdCL3lDSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFakI2MENOO0VlanpDQTtJQUNFO0lBQ0E7RWZtekNGO0VlcnpDQTtJQUNFO0lBQ0E7RWZ1ekNGO0VlenpDQTtJQUNFO0lBQ0E7RWYyekNGO0VlN3pDQTtJQUNFO0lBQ0E7RWYrekNGO0VlajBDQTtJQUNFO0lBQ0E7RWZtMENGO0VlcjBDQTtJQUNFO0lBQ0E7RWZ1MENGO0VpQjExQ0k7SUZDSjtJQUNBO0lBQ0E7RWY0MUNBO0VpQnoxQ1E7SUZiUjtJQUlBO0VmczJDQTtFaUI3MUNRO0lGYlI7SUFJQTtFZjAyQ0E7RWlCajJDUTtJRmJSO0lBSUE7RWY4MkNBO0VpQnIyQ1E7SUZiUjtJQUlBO0VmazNDQTtFaUJ6MkNRO0lGYlI7SUFJQTtFZnMzQ0E7RWlCNzJDUTtJRmJSO0lBSUE7RWYwM0NBO0VpQmozQ1E7SUZiUjtJQUlBO0VmODNDQTtFaUJyM0NRO0lGYlI7SUFJQTtFZms0Q0E7RWlCejNDUTtJRmJSO0lBSUE7RWZzNENBO0VpQjczQ1E7SUZiUjtJQUlBO0VmMDRDQTtFaUJqNENRO0lGYlI7SUFJQTtFZjg0Q0E7RWlCcjRDUTtJRmJSO0lBSUE7RWZrNUNBO0VpQm40Q0k7SUFBd0I7RWpCczRDNUI7RWlCcDRDSTtJQUF1QjtFakJ1NEMzQjtFaUJwNENNO0lBQXdCLFFBRGI7RWpCdzRDakI7RWlCdjRDTTtJQUF3QixRQURiO0VqQjI0Q2pCO0VpQjE0Q007SUFBd0IsUUFEYjtFakI4NENqQjtFaUI3NENNO0lBQXdCLFFBRGI7RWpCaTVDakI7RWlCaDVDTTtJQUF3QixRQURiO0VqQm81Q2pCO0VpQm41Q007SUFBd0IsUUFEYjtFakJ1NUNqQjtFaUJ0NUNNO0lBQXdCLFFBRGI7RWpCMDVDakI7RWlCejVDTTtJQUF3QixRQURiO0VqQjY1Q2pCO0VpQjU1Q007SUFBd0IsUUFEYjtFakJnNkNqQjtFaUIvNUNNO0lBQXdCLFFBRGI7RWpCbTZDakI7RWlCbDZDTTtJQUF3QixTQURiO0VqQnM2Q2pCO0VpQnI2Q007SUFBd0IsU0FEYjtFakJ5NkNqQjtFaUJ4NkNNO0lBQXdCLFNBRGI7RWpCNDZDakI7RWlCcDZDVTtJRmhCVjtFZnU3Q0E7RWlCdjZDVTtJRmhCVjtFZjA3Q0E7RWlCMTZDVTtJRmhCVjtFZjY3Q0E7RWlCNzZDVTtJRmhCVjtFZmc4Q0E7RWlCaDdDVTtJRmhCVjtFZm04Q0E7RWlCbjdDVTtJRmhCVjtFZnM4Q0E7RWlCdDdDVTtJRmhCVjtFZnk4Q0E7RWlCejdDVTtJRmhCVjtFZjQ4Q0E7RWlCNTdDVTtJRmhCVjtFZis4Q0E7RWlCLzdDVTtJRmhCVjtFZms5Q0E7RWlCbDhDVTtJRmhCVjtFZnE5Q0E7RWlCcjhDVTtJRmhCVjtFZnc5Q0E7QUFDRjtBa0I1Z0RBO0VBQ0U7RUFDQSxtQmJpSU87RWFoSVAsY2JTUztBTHFnRFg7QWtCM2dERTs7RUFFRSxnQmJtVjBCO0VhbFYxQjtFQUNBO0FsQjZnREo7QWtCMWdERTtFQUNFO0VBQ0E7QWxCNGdESjtBa0J6Z0RFO0VBQ0U7QWxCMmdESjs7QWtCamdERTs7RUFFRSxlYjZUMEI7QUx1c0M5Qjs7QWtCMy9DQTtFQUNFO0FsQjgvQ0Y7QWtCNS9DRTs7RUFFRTtBbEI4L0NKO0FrQjEvQ0k7O0VBRUU7QWxCNC9DTjs7QWtCdC9DRTs7OztFQUlFO0FsQnkvQ0o7O0FrQmgvQ0U7RUFDRSxxQ2J5UjBCO0FMMHRDOUI7O0FPbGpERTtFVzJFSSxjYnZFSztFYXdFTCxzQ2I4UXdCO0FMNnRDOUI7O0FtQjdqREk7OztFQUdFLDRDRDJGK0I7QWxCcStDckM7QW1CNWpETTs7OztFQUlFLHdDRG1GeUU7QWxCMitDakY7O0FPbmtERTtFWWlCTSxxRUFKZTtBbkIwakR2QjtBbUJwakRROztFQUVFLHFFQVJhO0FuQjhqRHZCOztBbUJqbERJOzs7RUFHRSw2Q0QyRitCO0FsQnkvQ3JDO0FtQmhsRE07Ozs7RUFJRSx5Q0RtRnlFO0FsQisvQ2pGOztBT3ZsREU7RVlpQk0scUVBSmU7QW5COGtEdkI7QW1CeGtEUTs7RUFFRSxxRUFSYTtBbkJrbER2Qjs7QW1Ccm1ESTs7O0VBR0UsNkNEMkYrQjtBbEI2Z0RyQztBbUJwbURNOzs7O0VBSUUseUNEbUZ5RTtBbEJtaERqRjs7QU8zbURFO0VZaUJNLHFFQUplO0FuQmttRHZCO0FtQjVsRFE7O0VBRUUscUVBUmE7QW5Cc21EdkI7O0FtQnpuREk7OztFQUdFLDRDRDJGK0I7QWxCaWlEckM7QW1CeG5ETTs7OztFQUlFLHdDRG1GeUU7QWxCdWlEakY7O0FPL25ERTtFWWlCTSxxRUFKZTtBbkJzbkR2QjtBbUJobkRROztFQUVFLHFFQVJhO0FuQjBuRHZCOztBbUI3b0RJOzs7RUFHRSx5QkQyRitCO0FsQnFqRHJDO0FtQjVvRE07Ozs7RUFJRSxxQkRtRnlFO0FsQjJqRGpGOztBT25wREU7RVlpQk0seUNBSmU7QW5CMG9EdkI7QW1CcG9EUTs7RUFFRSx5Q0FSYTtBbkI4b0R2Qjs7QW1CanFESTs7O0VBR0UsNENEMkYrQjtBbEJ5a0RyQztBbUJocURNOzs7O0VBSUUsd0NEbUZ5RTtBbEIra0RqRjs7QU92cURFO0VZaUJNLHFFQUplO0FuQjhwRHZCO0FtQnhwRFE7O0VBRUUscUVBUmE7QW5Ca3FEdkI7O0FtQnJyREk7OztFQUdFLDRDRDJGK0I7QWxCNmxEckM7QW1CcHJETTs7OztFQUlFLHdDRG1GeUU7QWxCbW1EakY7O0FPM3JERTtFWWlCTSxtRUFKZTtBbkJrckR2QjtBbUI1cURROztFQUVFLG1FQVJhO0FuQnNyRHZCOztBbUJ6c0RJOzs7RUFHRSw2Q0QyRitCO0FsQmluRHJDO0FtQnhzRE07Ozs7RUFJRSx5Q0RtRnlFO0FsQnVuRGpGOztBTy9zREU7RVlpQk0sNkNBSmU7QW5Cc3NEdkI7QW1CaHNEUTs7RUFFRSw2Q0FSYTtBbkIwc0R2Qjs7QW1CN3RESTs7O0VBR0UsMENEMkYrQjtBbEJxb0RyQztBbUI1dERNOzs7O0VBSUUsc0NEbUZ5RTtBbEIyb0RqRjs7QU9udURFO0VZaUJNLDZDQUplO0FuQjB0RHZCO0FtQnB0RFE7O0VBRUUsNkNBUmE7QW5COHREdkI7O0FtQmp2REk7OztFQUdFLDZDRDJGK0I7QWxCeXBEckM7QW1CaHZETTs7OztFQUlFLHlDRG1GeUU7QWxCK3BEakY7O0FPdnZERTtFWWlCTSw2Q0FKZTtBbkI4dUR2QjtBbUJ4dURROztFQUVFLDZDQVJhO0FuQmt2RHZCOztBbUJyd0RJOzs7RUFHRSx5QkQyRitCO0FsQjZxRHJDO0FtQnB3RE07Ozs7RUFJRSxxQkRtRnlFO0FsQm1yRGpGOztBTzN3REU7RVlpQk0sNkNBSmU7QW5Ca3dEdkI7QW1CNXZEUTs7RUFFRSw2Q0FSYTtBbkJzd0R2Qjs7QW1CenhESTs7O0VBR0UsNkNEMkYrQjtBbEJpc0RyQztBbUJ4eERNOzs7O0VBSUUseUNEbUZ5RTtBbEJ1c0RqRjs7QU8veERFO0VZaUJNLDZDQUplO0FuQnN4RHZCO0FtQmh4RFE7O0VBRUUsNkNBUmE7QW5CMHhEdkI7O0FtQjd5REk7OztFQUdFLDZDRDJGK0I7QWxCcXREckM7QW1CNXlETTs7OztFQUlFLHlDRG1GeUU7QWxCMnREakY7O0FPbnpERTtFWWlCTSxxRUFKZTtBbkIweUR2QjtBbUJweURROztFQUVFLHFFQVJhO0FuQjh5RHZCOztBbUJqMERJOzs7RUFHRSw2Q0QyRitCO0FsQnl1RHJDO0FtQmgwRE07Ozs7RUFJRSx5Q0RtRnlFO0FsQit1RGpGOztBT3YwREU7RVlpQk0sb0VBSmU7QW5COHpEdkI7QW1CeHpEUTs7RUFFRSxvRUFSYTtBbkJrMER2Qjs7QW1CcjFESTs7O0VBR0UsNENEMkYrQjtBbEI2dkRyQztBbUJwMURNOzs7O0VBSUUsd0NEbUZ5RTtBbEJtd0RqRjs7QU8zMURFO0VZaUJNLHFFQUplO0FuQmsxRHZCO0FtQjUwRFE7O0VBRUUscUVBUmE7QW5CczFEdkI7O0FtQnoyREk7OztFQUdFLDZDRDJGK0I7QWxCaXhEckM7QW1CeDJETTs7OztFQUlFLHlDRG1GeUU7QWxCdXhEakY7O0FPLzJERTtFWWlCTSw2Q0FKZTtBbkJzMkR2QjtBbUJoMkRROztFQUVFLDZDQVJhO0FuQjAyRHZCOztBbUI3M0RJOzs7RUFHRSw2Q0QyRitCO0FsQnF5RHJDO0FtQjUzRE07Ozs7RUFJRSx5Q0RtRnlFO0FsQjJ5RGpGOztBT240REU7RVlpQk0scUVBSmU7QW5CMDNEdkI7QW1CcDNEUTs7RUFFRSxxRUFSYTtBbkI4M0R2Qjs7QW1CajVESTs7O0VBR0UsNkNEMkYrQjtBbEJ5ekRyQztBbUJoNURNOzs7O0VBSUUseUNEbUZ5RTtBbEIrekRqRjs7QU92NURFO0VZaUJNLHFFQUplO0FuQjg0RHZCO0FtQng0RFE7O0VBRUUscUVBUmE7QW5CazVEdkI7O0FtQnI2REk7OztFQUdFLDZDRDJGK0I7QWxCNjBEckM7QW1CcDZETTs7OztFQUlFLHlDRG1GeUU7QWxCbTFEakY7O0FPMzZERTtFWWlCTSxxRUFKZTtBbkJrNkR2QjtBbUI1NURROztFQUVFLHFFQVJhO0FuQnM2RHZCOztBbUJ6N0RJOzs7RUFHRSx3Q0QyRitCO0FsQmkyRHJDO0FtQng3RE07Ozs7RUFJRSxvQ0RtRnlFO0FsQnUyRGpGOztBTy83REU7RVlpQk0scUVBSmU7QW5CczdEdkI7QW1CaDdEUTs7RUFFRSxxRUFSYTtBbkIwN0R2Qjs7QW1CNzhESTs7O0VBR0UsNkNEMkYrQjtBbEJxM0RyQztBbUI1OERNOzs7O0VBSUUseUNEbUZ5RTtBbEIyM0RqRjs7QU9uOURFO0VZaUJNLHFFQUplO0FuQjA4RHZCO0FtQnA4RFE7O0VBRUUscUVBUmE7QW5CODhEdkI7O0FtQmorREk7OztFQUdFLDZDRDJGK0I7QWxCeTREckM7QW1CaCtETTs7OztFQUlFLHlDRG1GeUU7QWxCKzREakY7O0FPditERTtFWWlCTSw2Q0FKZTtBbkI4OUR2QjtBbUJ4OURROztFQUVFLDZDQVJhO0FuQmsrRHZCOztBbUJyL0RJOzs7RUFHRSw0Q0QyRitCO0FsQjY1RHJDO0FtQnAvRE07Ozs7RUFJRSx3Q0RtRnlFO0FsQm02RGpGOztBTzMvREU7RVlpQk0scUVBSmU7QW5Cay9EdkI7QW1CNStEUTs7RUFFRSxxRUFSYTtBbkJzL0R2Qjs7QW1CemdFSTs7O0VBR0UsNkNEMkYrQjtBbEJpN0RyQztBbUJ4Z0VNOzs7O0VBSUUseUNEbUZ5RTtBbEJ1N0RqRjs7QU8vZ0VFO0VZaUJNLHFFQUplO0FuQnNnRXZCO0FtQmhnRVE7O0VBRUUscUVBUmE7QW5CMGdFdkI7O0FtQjdoRUk7OztFQUdFLDZDRDJGK0I7QWxCcThEckM7QW1CNWhFTTs7OztFQUlFLHlDRG1GeUU7QWxCMjhEakY7O0FPbmlFRTtFWWlCTSxxRUFKZTtBbkIwaEV2QjtBbUJwaEVROztFQUVFLHFFQVJhO0FuQjhoRXZCOztBbUJqakVJOzs7RUFHRSw2Q0QyRitCO0FsQnk5RHJDO0FtQmhqRU07Ozs7RUFJRSx5Q0RtRnlFO0FsQis5RGpGOztBT3ZqRUU7RVlpQk0sNkNBSmU7QW5COGlFdkI7QW1CeGlFUTs7RUFFRSw2Q0FSYTtBbkJrakV2Qjs7QW1CcmtFSTs7O0VBR0UsNkNEMkYrQjtBbEI2K0RyQztBbUJwa0VNOzs7O0VBSUUseUNEbUZ5RTtBbEJtL0RqRjs7QU8za0VFO0VZaUJNLDZDQUplO0FuQmtrRXZCO0FtQjVqRVE7O0VBRUUsNkNBUmE7QW5Cc2tFdkI7O0FtQnpsRUk7OztFQUdFLDZDRDJGK0I7QWxCaWdFckM7QW1CeGxFTTs7OztFQUlFLHlDRG1GeUU7QWxCdWdFakY7O0FPL2xFRTtFWWlCTSxtREFKZTtBbkJzbEV2QjtBbUJobEVROztFQUVFLG1EQVJhO0FuQjBsRXZCOztBbUI3bUVJOzs7RUFHRSw2Q0QyRitCO0FsQnFoRXJDO0FtQjVtRU07Ozs7RUFJRSx5Q0RtRnlFO0FsQjJoRWpGOztBT25uRUU7RVlpQk0scURBSmU7QW5CMG1FdkI7QW1CcG1FUTs7RUFFRSxxREFSYTtBbkI4bUV2Qjs7QW1Cam9FSTs7O0VBR0UsNkNEMkYrQjtBbEJ5aUVyQztBbUJob0VNOzs7O0VBSUUseUNEbUZ5RTtBbEIraUVqRjs7QU92b0VFO0VZaUJNLHFFQUplO0FuQjhuRXZCO0FtQnhuRVE7O0VBRUUscUVBUmE7QW5Ca29FdkI7O0FtQnJwRUk7OztFQUdFLDBDRDJGK0I7QWxCNmpFckM7QW1CcHBFTTs7OztFQUlFLHNDRG1GeUU7QWxCbWtFakY7O0FPM3BFRTtFWWlCTSxxRUFKZTtBbkJrcEV2QjtBbUI1b0VROztFQUVFLHFFQVJhO0FuQnNwRXZCOztBbUJ6cUVJOzs7RUFHRSw2Q0QyRitCO0FsQmlsRXJDO0FtQnhxRU07Ozs7RUFJRSx5Q0RtRnlFO0FsQnVsRWpGOztBTy9xRUU7RVlpQk0scUVBSmU7QW5Cc3FFdkI7QW1CaHFFUTs7RUFFRSxxRUFSYTtBbkIwcUV2Qjs7QW1CN3JFSTs7O0VBR0Usc0NkNlZ3QjtBTG0yRDlCOztBTzdyRUU7RVlpQk0sc0NBSmU7QW5Cb3JFdkI7QW1COXFFUTs7RUFFRSxzQ0FSYTtBbkJ3ckV2Qjs7QWtCaG1FSTtFQUNFLFdiM0dLO0VhNEdMLHlCYnBHSztFYXFHTCx1RGJpUXdCO0FMazJEOUI7QWtCOWxFSTtFQUNFLGNiNUdLO0VhNkdMLHlCYmxISztFYW1ITCxxQmJsSEs7QUxrdEVYOztBa0IzbEVBO0VBQ0UsV2IzSFM7RWE0SFQseUJicEhTO0FMa3RFWDtBa0I1bEVFOzs7RUFHRSx1RGI2TzBCO0FMaTNEOUI7QWtCM2xFRTtFQUNFO0FsQjZsRUo7QWtCemxFSTtFQUNFLDJDYmlPd0I7QUwwM0Q5QjtBT2h1RUU7RVc0SU0sV2JqSkc7RWFrSkgsNENiMk5zQjtBTDQzRDlCOztBZ0J2cUVJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RWxCeWtFTjtFa0J0a0VNO0lBQ0U7RWxCd2tFUjtBQUNGO0FnQm5yRUk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFbEJvbEVOO0VrQmpsRU07SUFDRTtFbEJtbEVSO0FBQ0Y7QWdCOXJFSTtFRWlHQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0VsQitsRU47RWtCNWxFTTtJQUNFO0VsQjhsRVI7QUFDRjtBZ0J6c0VJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RWxCMG1FTjtFa0J2bUVNO0lBQ0U7RWxCeW1FUjtBQUNGO0FrQm5uRUk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBbEJvbkVSO0FrQmpuRVE7RUFDRTtBbEJtbkVWOztBb0JoeUVBO0VBQ0U7RUFDQTtFQUNBLG1DZjJlc0M7RWUxZXRDO0VkMEtJO0VjdktKLGdCZm1SNEI7RWVsUjVCLGdCZnVSNEI7RWV0UjVCLGNmRFM7RWVFVCxzQmZUUztFZVVUO0VBQ0E7RVJBRTtFU0ZFLHdFRFFKO0FwQjh4RUY7QXFCbHlFTTtFRGROO0lDZVE7RXJCcXlFTjtBQUNGO0FvQmh5RUU7RUFDRTtFQUNBO0FwQmt5RUo7QXNCbHpFRTtFQUNFO0VBQ0Esc0JqQlJPO0VpQlNQLDZEakJzZG9DO0VpQnJkcEM7RUFLRSxnRGpCcVh3QjtBTDI3RDlCO0FvQmx5RUU7RUFDRSxjZnhCTztFZTBCUDtBcEJteUVKO0FvQjN4RUU7RUFFRSx5QmZ4Q087RWUwQ1A7QXBCMnhFSjs7QW9CbnhFRTs7OztFQUNFO0FwQnl4RUo7O0FvQm54RUU7RUFDRTtFQUNBO0FwQnN4RUo7QW9CbnhFRTtFQU1FLGNmL0RPO0VlZ0VQLHNCZnZFTztBTHUxRVg7O0FvQjN3RUE7O0VBRUU7RUFDQTtBcEI4d0VGOztBb0Jwd0VBO0VBQ0U7RUFDQTtFQUNBO0VkaUVFO0VjL0RGLGdCZmdNNEI7QUx1a0U5Qjs7QW9CcHdFQTtFQUNFO0VBQ0E7RWQwRUk7RWN4RUosZ0JmNkg0QjtBTDBvRTlCOztBb0Jwd0VBO0VBQ0U7RUFDQTtFZG1FSTtFY2pFSixnQmZ1SDRCO0FMZ3BFOUI7O0FvQjl2RUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFZG9ESTtFY2xESixnQmZtSzRCO0VlbEs1QixjZm5IUztFZW9IVDtFQUNBO0VBQ0E7QXBCaXdFRjtBb0IvdkVFO0VBRUU7RUFDQTtBcEJnd0VKOztBb0JwdkVBO0VBQ0Usa0NmNlZzQztFZTVWdEM7RWQyQkk7RWN6QkosZ0JmK0U0QjtFT3hOMUI7QVppNEVKOztBb0JwdkVBO0VBQ0UsZ0Nmc1ZzQztFZXJWdEM7RWRtQkk7RWNqQkosZ0Jmc0U0QjtFT3ZOMUI7QVp5NEVKOztBb0JsdkVFO0VBRUU7QXBCb3ZFSjs7QW9CaHZFQTtFQUNFO0FwQm12RUY7O0FvQjN1RUE7RUFDRSxtQmYyVXNDO0FMbTZEeEM7O0FvQjN1RUE7RUFDRTtFQUNBLG1CZjRUc0M7QUxrN0R4Qzs7QW9CdHVFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwQnl1RUY7QW9CdnVFRTs7RUFFRTtFQUNBO0FwQnl1RUo7O0FvQmh1RUE7RUFDRTtFQUNBO0VBQ0EscUJmaVNzQztBTGs4RHhDOztBb0JodUVBO0VBQ0U7RUFDQSxrQmY2UnNDO0VlNVJ0QztBcEJtdUVGO0FvQmh1RUU7RUFFRSxjZnpOTztBTDA3RVg7O0FvQjd0RUE7RUFDRTtBcEJndUVGOztBb0I3dEVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJmOFFzQztBTGs5RHhDO0FvQjd0RUU7RUFDRTtFQUNBO0VBQ0EsdUJmeVFvQztFZXhRcEM7QXBCK3RFSjs7QXNCNTZFRTtFQUNFO0VBQ0E7RUFDQSxtQmpCMmNvQztFQ3RWcEM7RWdCbkhBLGNGcU5xQztBcEIwdEV6Qzs7QXNCNTZFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWhCd0hFO0VnQnRIRixnQmpCdU8wQjtFaUJ0TzFCO0VBQ0E7RVY5Q0E7QVo4OUVKO0FzQjM2RUk7RUFFRTtBdEI0NkVOOztBc0J2NkVJOzs7O0VBRUU7QXRCNDZFTjs7QXNCMTlFSTtFQW9ERSxxQkZrTG1DO0VFL0tqQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Qnc2RVI7QXNCcjZFTTtFQUNFLHFCRnVLaUM7RUV0S2pDO0F0QnU2RVI7O0FzQnYrRUk7RUF5RUk7RUFDQTtBdEJrNkVSOztBc0I1K0VJO0VBbUZJLG9DakI2WGdDO0VpQjVYaEM7QXRCNjVFUjs7QXNCai9FSTtFQTJGRSxxQkYySW1DO0VFeElqQztFQUNBO0F0Qnc1RVI7QXNCcjVFTTtFQUNFLHFCRm1JaUM7RUVsSWpDO0F0QnU1RVI7O0FzQmg1RU07RUFDRSxjRjBIaUM7QXBCeXhFekM7QXNCaDVFTTs7O0VBRUU7QXRCbTVFUjs7QXNCNTRFTTtFQUNFLGNGNkdpQztBcEJreUV6QztBc0I3NEVRO0VBQ0UscUJGMEcrQjtBcEJxeUV6QztBc0IxNEVRO0VBQ0U7RUM1Sk4sbUVENkoyQjtBdEI0NEUvQjtBc0J2NEVRO0VBQ0U7QXRCeTRFVjtBc0J0NEVRO0VBQ0UscUJGeUYrQjtBcEIreUV6Qzs7QXNCLzNFTTtFQUNFLHFCRitFaUM7QXBCbXpFekM7QXNCOTNFUTtFQUNFLHFCRjBFK0I7RUV6RS9CO0F0Qmc0RVY7O0FzQmpoRkU7RUFDRTtFQUNBO0VBQ0EsbUJqQjJjb0M7RUN0VnBDO0VnQm5IQSxjRnFOcUM7QXBCK3pFekM7O0FzQmpoRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoQndIRTtFZ0J0SEYsZ0JqQnVPMEI7RWlCdE8xQjtFQUNBO0VWOUNBO0FabWtGSjtBc0JoaEZJO0VBRUU7QXRCaWhGTjs7QXNCNWdGSTs7OztFQUVFO0F0QmloRk47O0FzQi9qRkk7RUFvREUscUJGa0xtQztFRS9LakM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEI2Z0ZSO0FzQjFnRk07RUFDRSxxQkZ1S2lDO0VFdEtqQztBdEI0Z0ZSOztBc0I1a0ZJO0VBeUVJO0VBQ0E7QXRCdWdGUjs7QXNCamxGSTtFQW1GSSxvQ2pCNlhnQztFaUI1WGhDO0F0QmtnRlI7O0FzQnRsRkk7RUEyRkUscUJGMkltQztFRXhJakM7RUFDQTtBdEI2L0VSO0FzQjEvRU07RUFDRSxxQkZtSWlDO0VFbElqQztBdEI0L0VSOztBc0JyL0VNO0VBQ0UsY0YwSGlDO0FwQjgzRXpDO0FzQnIvRU07OztFQUVFO0F0QncvRVI7O0FzQmovRU07RUFDRSxjRjZHaUM7QXBCdTRFekM7QXNCbC9FUTtFQUNFLHFCRjBHK0I7QXBCMDRFekM7QXNCLytFUTtFQUNFO0VDNUpOLG1FRDZKMkI7QXRCaS9FL0I7QXNCNStFUTtFQUNFO0F0QjgrRVY7QXNCMytFUTtFQUNFLHFCRnlGK0I7QXBCbzVFekM7O0FzQnArRU07RUFDRSxxQkYrRWlDO0FwQnc1RXpDO0FzQm4rRVE7RUFDRSxxQkYwRStCO0VFekUvQjtBdEJxK0VWOztBb0JoNUVBO0VBQ0U7RUFDQTtFQUNBO0FwQm01RUY7QW9COTRFRTtFQUNFO0FwQmc1RUo7QWdCL21GSTtFSW9PQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VwQjg0RUo7RW9CMTRFRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXBCNDRFSjtFb0J4NEVFO0lBQ0U7SUFDQTtJQUNBO0VwQjA0RUo7RW9CdDRFRTtJQUNFO0VwQnc0RUo7RW9CcjRFRTs7SUFFRTtFcEJ1NEVKO0VvQmw0RUU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VwQm80RUo7RW9CbDRFRTtJQUNFO0lBQ0E7SUFDQTtJQUNBLHFCZmdMa0M7SWUvS2xDO0VwQm80RUo7RW9CajRFRTtJQUNFO0lBQ0E7RXBCbTRFSjtFb0JqNEVFO0lBQ0U7RXBCbTRFSjtBQUNGOztBd0JydEZBO0VBQ0U7RUFFQSxnQm5CdVI0QjtFbUJ0UjVCLGNuQk1TO0VtQkxUO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUN1RkE7RW5CNEVJO0VtQjFFSixnQnBCMkw0QjtFT25SMUI7RVNGRSxxSUdHSjtBeEJ3dEZGO0FxQnZ0Rk07RUdkTjtJSGVRO0VyQjB0Rk47QUFDRjtBT3B1RkU7RWlCVUUsY25CTk87RW1CT1A7QXhCNnRGSjtBd0IxdEZFO0VBRUU7RUFDQSxnRG5COFcwQjtBTDYyRTlCO0F3QnZ0RkU7RUFFRSxhbkJrWjBCO0FMczBFOUI7QXdCcHRGRTtFQUNFO0F4QnN0Rko7QXdCeHNGQTs7RUFFRTtBeEIwc0ZGOztBd0Jqc0ZFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTDRyRmY7QU81dkZFO0VrQkFFO0VGTkEsa0VFRDJEO0VBUzNELDhEQVRxRztBekJ3d0Z6RztBeUI1dkZFO0VBRUU7RUZiQSxrRUVEMkQ7RUFnQjNELDhEQWhCcUc7RUFxQm5HO0F6Qnl2Rk47QXlCcHZGRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTDRzRmY7QXlCOXVGRTtFQUdFO0VBQ0Esa0VBekMrSTtFQTZDL0ksOERBN0N5TDtBekJ3eEY3TDtBeUJ6dUZJO0VBS0k7QXpCdXVGUjs7QXdCL3RGRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUwwdEZmO0FPMXhGRTtFa0JBRTtFRk5BLGtFRUQyRDtFQVMzRCw4REFUcUc7QXpCc3lGekc7QXlCMXhGRTtFQUVFO0VGYkEsa0VFRDJEO0VBZ0IzRCw4REFoQnFHO0VBcUJuRztBekJ1eEZOO0F5Qmx4RkU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUwwdUZmO0F5QjV3RkU7RUFHRTtFQUNBLGtFQXpDK0k7RUE2Qy9JLDREQTdDeUw7QXpCc3pGN0w7QXlCdndGSTtFQUtJO0F6QnF3RlI7O0F3Qjd2RkU7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMd3ZGZjtBT3h6RkU7RWtCQUU7RUZOQSxrRUVEMkQ7RUFTM0QsOERBVHFHO0F6Qm8wRnpHO0F5Qnh6RkU7RUFFRTtFRmJBLGtFRUQyRDtFQWdCM0QsOERBaEJxRztFQXFCbkc7QXpCcXpGTjtBeUJoekZFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMd3dGZjtBeUIxeUZFO0VBR0U7RUFDQSxrRUF6QytJO0VBNkMvSSw2REE3Q3lMO0F6Qm8xRjdMO0F5QnJ5Rkk7RUFLSTtBekJteUZSOztBd0IzeEZFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTHN4RmY7QU90MUZFO0VrQkFFO0VGTkEsaUVFRDJEO0VBUzNELDhEQVRxRztBekJrMkZ6RztBeUJ0MUZFO0VBRUU7RUZiQSxpRUVEMkQ7RUFnQjNELDhEQWhCcUc7RUFxQm5HO0F6Qm0xRk47QXlCOTBGRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTHN5RmY7QXlCeDBGRTtFQUdFO0VBQ0Esa0VBekMrSTtFQTZDL0ksOERBN0N5TDtBekJrM0Y3TDtBeUJuMEZJO0VBS0k7QXpCaTBGUjs7QXdCenpGRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUxvekZmO0FPcDNGRTtFa0JBRTtFRk5BLHlDRUQyRDtFQVMzRCxnQ0FUcUc7QXpCZzRGekc7QXlCcDNGRTtFQUVFO0VGYkEseUNFRDJEO0VBZ0IzRCxnQ0FoQnFHO0VBcUJuRztBekJpM0ZOO0F5QjUyRkU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUxvMEZmO0F5QnQyRkU7RUFHRTtFQUNBLG9DQXpDK0k7RUE2Qy9JLHFDQTdDeUw7QXpCZzVGN0w7QXlCajJGSTtFQUtJO0F6QisxRlI7O0F3QnYxRkU7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMazFGZjtBT2w1RkU7RWtCQUU7RUZOQSxtRUVEMkQ7RUFTM0QsK0RBVHFHO0F6Qjg1RnpHO0F5Qmw1RkU7RUFFRTtFRmJBLG1FRUQyRDtFQWdCM0QsK0RBaEJxRztFQXFCbkc7QXpCKzRGTjtBeUIxNEZFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMazJGZjtBeUJwNEZFO0VBR0U7RUFDQSxtRUF6QytJO0VBNkMvSSwrREE3Q3lMO0F6Qjg2RjdMO0F5Qi8zRkk7RUFLSTtBekI2M0ZSOztBd0JyM0ZFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTGczRmY7QU9oN0ZFO0VrQkFFO0VGTkEscUVFRDJEO0VBUzNELGlFQVRxRztBekI0N0Z6RztBeUJoN0ZFO0VBRUU7RUZiQSxxRUVEMkQ7RUFnQjNELGlFQWhCcUc7RUFxQm5HO0F6QjY2Rk47QXlCeDZGRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTGc0RmY7QXlCbDZGRTtFQUdFO0VBQ0EscUVBekMrSTtFQTZDL0ksaUVBN0N5TDtBekI0OEY3TDtBeUI3NUZJO0VBS0k7QXpCMjVGUjs7QXdCbjVGRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUw4NEZmO0FPOThGRTtFa0JBRTtFRk5BLDZDRUQyRDtFQVMzRCxtQ0FUcUc7QXpCMDlGekc7QXlCOThGRTtFQUVFO0VGYkEsNkNFRDJEO0VBZ0IzRCxtQ0FoQnFHO0VBcUJuRztBekIyOEZOO0F5QnQ4RkU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUw4NUZmO0F5Qmg4RkU7RUFHRTtFQUNBLHVDQXpDK0k7RUE2Qy9JLHlDQTdDeUw7QXpCMCtGN0w7QXlCMzdGSTtFQUtJO0F6Qnk3RlI7O0F3Qmo3RkU7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMNDZGZjtBTzUrRkU7RWtCQUU7RUZOQSxnREVEMkQ7RUFTM0Qsc0NBVHFHO0F6QncvRnpHO0F5QjUrRkU7RUFFRTtFRmJBLGdERUQyRDtFQWdCM0Qsc0NBaEJxRztFQXFCbkc7QXpCeStGTjtBeUJwK0ZFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMNDdGZjtBeUI5OUZFO0VBR0U7RUFDQSwwQ0F6QytJO0VBNkMvSSw0Q0E3Q3lMO0F6QndnRzdMO0F5Qno5Rkk7RUFLSTtBekJ1OUZSOztBd0IvOEZFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTDA4RmY7QU8xZ0dFO0VrQkFFO0VGTkEsMkNFRDJEO0VBUzNELHFCQVRxRztBekJzaEd6RztBeUIxZ0dFO0VBRUU7RUZiQSwyQ0VEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0F6QnVnR047QXlCbGdHRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTDA5RmY7QXlCNS9GRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0ksdUNBN0N5TDtBekJzaUc3TDtBeUJ2L0ZJO0VBS0k7QXpCcS9GUjs7QXdCNytGRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUx3K0ZmO0FPeGlHRTtFa0JBRTtFRk5BLGdERUQyRDtFQVMzRCxzQ0FUcUc7QXpCb2pHekc7QXlCeGlHRTtFQUVFO0VGYkEsZ0RFRDJEO0VBZ0IzRCxzQ0FoQnFHO0VBcUJuRztBekJxaUdOO0F5QmhpR0U7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUx3L0ZmO0F5QjFoR0U7RUFHRTtFQUNBLDBDQXpDK0k7RUE2Qy9JLDRDQTdDeUw7QXpCb2tHN0w7QXlCcmhHSTtFQUtJO0F6Qm1oR1I7O0F3QjNnR0U7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMc2dHZjtBT3RrR0U7RWtCQUU7RUZOQSw2Q0VEMkQ7RUFTM0QsbUNBVHFHO0F6QmtsR3pHO0F5QnRrR0U7RUFFRTtFRmJBLDZDRUQyRDtFQWdCM0QsbUNBaEJxRztFQXFCbkc7QXpCbWtHTjtBeUI5akdFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMc2hHZjtBeUJ4akdFO0VBR0U7RUFDQSx1Q0F6QytJO0VBNkMvSSx5Q0E3Q3lMO0F6QmttRzdMO0F5Qm5qR0k7RUFLSTtBekJpakdSOztBd0J6aUdFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTG9pR2Y7QU9wbUdFO0VrQkFFO0VGTkEsa0VFRDJEO0VBUzNELDhEQVRxRztBekJnbkd6RztBeUJwbUdFO0VBRUU7RUZiQSxrRUVEMkQ7RUFnQjNELDhEQWhCcUc7RUFxQm5HO0F6QmltR047QXlCNWxHRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTG9qR2Y7QXlCdGxHRTtFQUdFO0VBQ0Esa0VBekMrSTtFQTZDL0ksOERBN0N5TDtBekJnb0c3TDtBeUJqbEdJO0VBS0k7QXpCK2tHUjs7QXdCdmtHRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUxra0dmO0FPbG9HRTtFa0JBRTtFRk5BLG1FRUQyRDtFQVMzRCwrREFUcUc7QXpCOG9Hekc7QXlCbG9HRTtFQUVFO0VGYkEsbUVFRDJEO0VBZ0IzRCwrREFoQnFHO0VBcUJuRztBekIrbkdOO0F5QjFuR0U7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUxrbEdmO0F5QnBuR0U7RUFHRTtFQUNBLG1FQXpDK0k7RUE2Qy9JLCtEQTdDeUw7QXpCOHBHN0w7QXlCL21HSTtFQUtJO0F6QjZtR1I7O0F3QnJtR0U7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMZ21HZjtBT2hxR0U7RWtCQUU7RUZOQSxtRUVEMkQ7RUFTM0QsK0RBVHFHO0F6QjRxR3pHO0F5QmhxR0U7RUFFRTtFRmJBLG1FRUQyRDtFQWdCM0QsK0RBaEJxRztFQXFCbkc7QXpCNnBHTjtBeUJ4cEdFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMZ25HZjtBeUJscEdFO0VBR0U7RUFDQSxtRUF6QytJO0VBNkMvSSw2REE3Q3lMO0F6QjRyRzdMO0F5QjdvR0k7RUFLSTtBekIyb0dSOztBd0Jub0dFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTDhuR2Y7QU85ckdFO0VrQkFFO0VGTkEsZ0RFRDJEO0VBUzNELHNDQVRxRztBekIwc0d6RztBeUI5ckdFO0VBRUU7RUZiQSxnREVEMkQ7RUFnQjNELHNDQWhCcUc7RUFxQm5HO0F6QjJyR047QXlCdHJHRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTDhvR2Y7QXlCaHJHRTtFQUdFO0VBQ0EsMENBekMrSTtFQTZDL0ksNENBN0N5TDtBekIwdEc3TDtBeUIzcUdJO0VBS0k7QXpCeXFHUjs7QXdCanFHRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUw0cEdmO0FPNXRHRTtFa0JBRTtFRk5BLG9FRUQyRDtFQVMzRCwrREFUcUc7QXpCd3VHekc7QXlCNXRHRTtFQUVFO0VGYkEsb0VFRDJEO0VBZ0IzRCwrREFoQnFHO0VBcUJuRztBekJ5dEdOO0F5QnB0R0U7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUw0cUdmO0F5QjlzR0U7RUFHRTtFQUNBLG1FQXpDK0k7RUE2Qy9JLGlFQTdDeUw7QXpCd3ZHN0w7QXlCenNHSTtFQUtJO0F6QnVzR1I7O0F3Qi9yR0U7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMMHJHZjtBTzF2R0U7RWtCQUU7RUZOQSxvRUVEMkQ7RUFTM0QsOERBVHFHO0F6QnN3R3pHO0F5QjF2R0U7RUFFRTtFRmJBLG9FRUQyRDtFQWdCM0QsOERBaEJxRztFQXFCbkc7QXpCdXZHTjtBeUJsdkdFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMMHNHZjtBeUI1dUdFO0VBR0U7RUFDQSxrRUF6QytJO0VBNkMvSSw4REE3Q3lMO0F6QnN4RzdMO0F5QnZ1R0k7RUFLSTtBekJxdUdSOztBd0I3dEdFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTHd0R2Y7QU94eEdFO0VrQkFFO0VGTkEscUVFRDJEO0VBUzNELCtEQVRxRztBekJveUd6RztBeUJ4eEdFO0VBRUU7RUZiQSxxRUVEMkQ7RUFnQjNELCtEQWhCcUc7RUFxQm5HO0F6QnF4R047QXlCaHhHRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTHd1R2Y7QXlCMXdHRTtFQUdFO0VBQ0EsbUVBekMrSTtFQTZDL0ksaUVBN0N5TDtBekJvekc3TDtBeUJyd0dJO0VBS0k7QXpCbXdHUjs7QXdCM3ZHRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUxzdkdmO0FPdHpHRTtFa0JBRTtFRk5BLG1DRUQyRDtFQVMzRCxxQkFUcUc7QXpCazBHekc7QXlCdHpHRTtFQUVFO0VGYkEsbUNFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBekJtekdOO0F5Qjl5R0U7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUxzd0dmO0F5Qnh5R0U7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLCtCQTdDeUw7QXpCazFHN0w7QXlCbnlHSTtFQUtJO0F6Qml5R1I7O0F3Qnp4R0U7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMb3hHZjtBT3AxR0U7RWtCQUU7RUZOQSxpRUVEMkQ7RUFTM0QsOERBVHFHO0F6QmcyR3pHO0F5QnAxR0U7RUFFRTtFRmJBLGlFRUQyRDtFQWdCM0QsOERBaEJxRztFQXFCbkc7QXpCaTFHTjtBeUI1MEdFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMb3lHZjtBeUJ0MEdFO0VBR0U7RUFDQSxrRUF6QytJO0VBNkMvSSw4REE3Q3lMO0F6QmczRzdMO0F5QmowR0k7RUFLSTtBekIrekdSOztBd0J2ekdFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTGt6R2Y7QU9sM0dFO0VrQkFFO0VGTkEsZ0RFRDJEO0VBUzNELHNDQVRxRztBekI4M0d6RztBeUJsM0dFO0VBRUU7RUZiQSxnREVEMkQ7RUFnQjNELHNDQWhCcUc7RUFxQm5HO0F6QisyR047QXlCMTJHRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTGswR2Y7QXlCcDJHRTtFQUdFO0VBQ0EsMENBekMrSTtFQTZDL0ksNENBN0N5TDtBekI4NEc3TDtBeUIvMUdJO0VBS0k7QXpCNjFHUjs7QXdCcjFHRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUxnMUdmO0FPaDVHRTtFa0JBRTtFRk5BLDJERUQyRDtFQVMzRCxxREFUcUc7QXpCNDVHekc7QXlCaDVHRTtFQUVFO0VGYkEsMkRFRDJEO0VBZ0IzRCxxREFoQnFHO0VBcUJuRztBekI2NEdOO0F5Qng0R0U7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUxnMkdmO0F5Qmw0R0U7RUFHRTtFQUNBLHlEQXpDK0k7RUE2Qy9JLHVEQTdDeUw7QXpCNDZHN0w7QXlCNzNHSTtFQUtJO0F6QjIzR1I7O0F3Qm4zR0U7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMODJHZjtBTzk2R0U7RWtCQUU7RUZOQSxvRUVEMkQ7RUFTM0QsOERBVHFHO0F6QjA3R3pHO0F5Qjk2R0U7RUFFRTtFRmJBLG9FRUQyRDtFQWdCM0QsOERBaEJxRztFQXFCbkc7QXpCMjZHTjtBeUJ0NkdFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMODNHZjtBeUJoNkdFO0VBR0U7RUFDQSxrRUF6QytJO0VBNkMvSSwrREE3Q3lMO0F6QjA4RzdMO0F5QjM1R0k7RUFLSTtBekJ5NUdSOztBd0JqNUdFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTDQ0R2Y7QU81OEdFO0VrQkFFO0VGTkEsb0VFRDJEO0VBUzNELGdFQVRxRztBekJ3OUd6RztBeUI1OEdFO0VBRUU7RUZiQSxvRUVEMkQ7RUFnQjNELGdFQWhCcUc7RUFxQm5HO0F6Qnk4R047QXlCcDhHRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTDQ1R2Y7QXlCOTdHRTtFQUdFO0VBQ0Esb0VBekMrSTtFQTZDL0ksZ0VBN0N5TDtBekJ3K0c3TDtBeUJ6N0dJO0VBS0k7QXpCdTdHUjs7QXdCLzZHRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUwwNkdmO0FPMStHRTtFa0JBRTtFRk5BLDZDRUQyRDtFQVMzRCxtQ0FUcUc7QXpCcy9Hekc7QXlCMStHRTtFQUVFO0VGYkEsNkNFRDJEO0VBZ0IzRCxtQ0FoQnFHO0VBcUJuRztBekJ1K0dOO0F5QmwrR0U7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUwwN0dmO0F5QjU5R0U7RUFHRTtFQUNBLHVDQXpDK0k7RUE2Qy9JLHlDQTdDeUw7QXpCc2dIN0w7QXlCdjlHSTtFQUtJO0F6QnE5R1I7O0F3Qjc4R0U7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMdzhHZjtBT3hnSEU7RWtCQUU7RUZOQSwwQ0VEMkQ7RUFTM0QsZ0NBVHFHO0F6Qm9oSHpHO0F5QnhnSEU7RUFFRTtFRmJBLDBDRUQyRDtFQWdCM0QsZ0NBaEJxRztFQXFCbkc7QXpCcWdITjtBeUJoZ0hFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMdzlHZjtBeUIxL0dFO0VBR0U7RUFDQSxvQ0F6QytJO0VBNkMvSSxtQkE3Q3lMO0F6Qm9pSDdMO0F5QnIvR0k7RUFLSTtBekJtL0dSOztBd0IzK0dFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTHMrR2Y7QU90aUhFO0VrQkFFO0VGTkEsb0RFRDJEO0VBUzNELDBDQVRxRztBekJrakh6RztBeUJ0aUhFO0VBRUU7RUZiQSxvREVEMkQ7RUFnQjNELDBDQWhCcUc7RUFxQm5HO0F6Qm1pSE47QXlCOWhIRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTHMvR2Y7QXlCeGhIRTtFQUdFO0VBQ0EsOENBekMrSTtFQTZDL0ksZ0RBN0N5TDtBekJra0g3TDtBeUJuaEhJO0VBS0k7QXpCaWhIUjs7QXdCemdIRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUxvZ0hmO0FPcGtIRTtFa0JBRTtFRk5BLG1ERUQyRDtFQVMzRCwrQ0FUcUc7QXpCZ2xIekc7QXlCcGtIRTtFQUVFO0VGYkEsbURFRDJEO0VBZ0IzRCwrQ0FoQnFHO0VBcUJuRztBekJpa0hOO0F5QjVqSEU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUxvaEhmO0F5QnRqSEU7RUFHRTtFQUNBLG1EQXpDK0k7RUE2Qy9JLDhDQTdDeUw7QXpCZ21IN0w7QXlCampISTtFQUtJO0F6QitpSFI7O0F3QnZpSEU7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMa2lIZjtBT2xtSEU7RWtCQUU7RUZOQSxxRUVEMkQ7RUFTM0QsaUVBVHFHO0F6QjhtSHpHO0F5QmxtSEU7RUFFRTtFRmJBLHFFRUQyRDtFQWdCM0QsaUVBaEJxRztFQXFCbkc7QXpCK2xITjtBeUIxbEhFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMa2pIZjtBeUJwbEhFO0VBR0U7RUFDQSxxRUF6QytJO0VBNkMvSSxpRUE3Q3lMO0F6QjhuSDdMO0F5Qi9rSEk7RUFLSTtBekI2a0hSOztBd0Jya0hFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTGdrSGY7QU9ob0hFO0VrQkFFO0VGTkEscUVFRDJEO0VBUzNELCtEQVRxRztBekI0b0h6RztBeUJob0hFO0VBRUU7RUZiQSxxRUVEMkQ7RUFnQjNELCtEQWhCcUc7RUFxQm5HO0F6QjZuSE47QXlCeG5IRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTGdsSGY7QXlCbG5IRTtFQUdFO0VBQ0EsbUVBekMrSTtFQTZDL0ksZ0VBN0N5TDtBekI0cEg3TDtBeUI3bUhJO0VBS0k7QXpCMm1IUjs7QXdCbm1IRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUw4bEhmO0FPOXBIRTtFa0JBRTtFRk5BLG1FRUQyRDtFQVMzRCwrREFUcUc7QXpCMHFIekc7QXlCOXBIRTtFQUVFO0VGYkEsbUVFRDJEO0VBZ0IzRCwrREFoQnFHO0VBcUJuRztBekIycEhOO0F5QnRwSEU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUw4bUhmO0F5QmhwSEU7RUFHRTtFQUNBLG1FQXpDK0k7RUE2Qy9JLDZEQTdDeUw7QXpCMHJIN0w7QXlCM29ISTtFQUtJO0F6QnlvSFI7O0F3QjNuSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUwybkhmO0FPM3JIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTGdvSGY7QXlCbm9IRTtFQUVFO0F6Qm9vSEo7QXlCam9IRTtFQUVFLGNwQkpXO0VvQktYO0F6QmtvSEo7QXlCL25IRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDRvSGY7QXlCN25ISTtFQUtJO0F6QjJuSFI7O0F3QnBwSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxvcEhmO0FPcHRIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHlwSGY7QXlCNXBIRTtFQUVFO0F6QjZwSEo7QXlCMXBIRTtFQUVFLGNwQkpXO0VvQktYO0F6QjJwSEo7QXlCeHBIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHFxSGY7QXlCdHBISTtFQUtJO0F6Qm9wSFI7O0F3QjdxSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUw2cUhmO0FPN3VIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTGtySGY7QXlCcnJIRTtFQUVFO0F6QnNySEo7QXlCbnJIRTtFQUVFLGNwQkpXO0VvQktYO0F6Qm9ySEo7QXlCanJIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDhySGY7QXlCL3FISTtFQUtJO0F6QjZxSFI7O0F3QnRzSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxzc0hmO0FPdHdIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDJzSGY7QXlCOXNIRTtFQUVFO0F6QitzSEo7QXlCNXNIRTtFQUVFLGNwQkpXO0VvQktYO0F6QjZzSEo7QXlCMXNIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHV0SGY7QXlCeHNISTtFQUtJO0F6QnNzSFI7O0F3Qi90SEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUwrdEhmO0FPL3hIRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTG91SGY7QXlCdnVIRTtFQUVFO0F6Qnd1SEo7QXlCcnVIRTtFQUVFLGNwQkpXO0VvQktYO0F6QnN1SEo7QXlCbnVIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTGd2SGY7QXlCanVISTtFQUtJO0F6Qit0SFI7O0F3Qnh2SEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUx3dkhmO0FPeHpIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDZ2SGY7QXlCaHdIRTtFQUVFO0F6Qml3SEo7QXlCOXZIRTtFQUVFLGNwQkpXO0VvQktYO0F6Qit2SEo7QXlCNXZIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHl3SGY7QXlCMXZISTtFQUtJO0F6Qnd2SFI7O0F3Qmp4SEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxpeEhmO0FPajFIRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHN4SGY7QXlCenhIRTtFQUVFO0F6QjB4SEo7QXlCdnhIRTtFQUVFLGNwQkpXO0VvQktYO0F6Qnd4SEo7QXlCcnhIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTGt5SGY7QXlCbnhISTtFQUtJO0F6Qml4SFI7O0F3QjF5SEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUwweUhmO0FPMTJIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTCt5SGY7QXlCbHpIRTtFQUVFO0F6Qm16SEo7QXlCaHpIRTtFQUVFLGNwQkpXO0VvQktYO0F6Qml6SEo7QXlCOXlIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDJ6SGY7QXlCNXlISTtFQUtJO0F6QjB5SFI7O0F3Qm4wSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxtMEhmO0FPbjRIRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHcwSGY7QXlCMzBIRTtFQUVFO0F6QjQwSEo7QXlCejBIRTtFQUVFLGNwQkpXO0VvQktYO0F6QjAwSEo7QXlCdjBIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTG8xSGY7QXlCcjBISTtFQUtJO0F6Qm0wSFI7O0F3QjUxSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUw0MUhmO0FPNTVIRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTGkySGY7QXlCcDJIRTtFQUVFO0F6QnEySEo7QXlCbDJIRTtFQUVFLGNwQkpXO0VvQktYO0F6Qm0ySEo7QXlCaDJIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDYySGY7QXlCOTFISTtFQUtJO0F6QjQxSFI7O0F3QnIzSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxxM0hmO0FPcjdIRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDAzSGY7QXlCNzNIRTtFQUVFO0F6QjgzSEo7QXlCMzNIRTtFQUVFLGNwQkpXO0VvQktYO0F6QjQzSEo7QXlCejNIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHM0SGY7QXlCdjNISTtFQUtJO0F6QnEzSFI7O0F3Qjk0SEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUw4NEhmO0FPOThIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTG01SGY7QXlCdDVIRTtFQUVFO0F6QnU1SEo7QXlCcDVIRTtFQUVFLGNwQkpXO0VvQktYO0F6QnE1SEo7QXlCbDVIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTCs1SGY7QXlCaDVISTtFQUtJO0F6Qjg0SFI7O0F3QnY2SEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUx1NkhmO0FPditIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDQ2SGY7QXlCLzZIRTtFQUVFO0F6Qmc3SEo7QXlCNzZIRTtFQUVFLGNwQkpXO0VvQktYO0F6Qjg2SEo7QXlCMzZIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHc3SGY7QXlCejZISTtFQUtJO0F6QnU2SFI7O0F3Qmg4SEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxnOEhmO0FPaGdJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHE4SGY7QXlCeDhIRTtFQUVFO0F6Qnk4SEo7QXlCdDhIRTtFQUVFLGNwQkpXO0VvQktYO0F6QnU4SEo7QXlCcDhIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTGk5SGY7QXlCbDhISTtFQUtJO0F6Qmc4SFI7O0F3Qno5SEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUx5OUhmO0FPemhJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDg5SGY7QXlCaitIRTtFQUVFO0F6QmsrSEo7QXlCLzlIRTtFQUVFLGNwQkpXO0VvQktYO0F6QmcrSEo7QXlCNzlIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDArSGY7QXlCMzlISTtFQUtJO0F6Qnk5SFI7O0F3QmwvSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxrL0hmO0FPbGpJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHUvSGY7QXlCMS9IRTtFQUVFO0F6QjIvSEo7QXlCeC9IRTtFQUVFLGNwQkpXO0VvQktYO0F6QnkvSEo7QXlCdC9IRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTG1nSWY7QXlCcC9ISTtFQUtJO0F6QmsvSFI7O0F3QjNnSUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUwyZ0lmO0FPM2tJRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTGdoSWY7QXlCbmhJRTtFQUVFO0F6Qm9oSUo7QXlCamhJRTtFQUVFLGNwQkpXO0VvQktYO0F6QmtoSUo7QXlCL2dJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDRoSWY7QXlCN2dJSTtFQUtJO0F6QjJnSVI7O0F3QnBpSUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxvaUlmO0FPcG1JRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHlpSWY7QXlCNWlJRTtFQUVFO0F6QjZpSUo7QXlCMWlJRTtFQUVFLGNwQkpXO0VvQktYO0F6QjJpSUo7QXlCeGlJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHFqSWY7QXlCdGlJSTtFQUtJO0F6Qm9pSVI7O0F3QjdqSUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUw2aklmO0FPN25JRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTGtrSWY7QXlCcmtJRTtFQUVFO0F6QnNrSUo7QXlCbmtJRTtFQUVFLGNwQkpXO0VvQktYO0F6Qm9rSUo7QXlCamtJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDhrSWY7QXlCL2pJSTtFQUtJO0F6QjZqSVI7O0F3QnRsSUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxzbElmO0FPdHBJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDJsSWY7QXlCOWxJRTtFQUVFO0F6QitsSUo7QXlCNWxJRTtFQUVFLGNwQkpXO0VvQktYO0F6QjZsSUo7QXlCMWxJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHVtSWY7QXlCeGxJSTtFQUtJO0F6QnNsSVI7O0F3Qi9tSUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUwrbUlmO0FPL3FJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTG9uSWY7QXlCdm5JRTtFQUVFO0F6QnduSUo7QXlCcm5JRTtFQUVFLGNwQkpXO0VvQktYO0F6QnNuSUo7QXlCbm5JRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTGdvSWY7QXlCam5JSTtFQUtJO0F6QittSVI7O0F3QnhvSUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUx3b0lmO0FPeHNJRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDZvSWY7QXlCaHBJRTtFQUVFO0F6QmlwSUo7QXlCOW9JRTtFQUVFLGNwQkpXO0VvQktYO0F6QitvSUo7QXlCNW9JRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHlwSWY7QXlCMW9JSTtFQUtJO0F6QndvSVI7O0F3QmpxSUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxpcUlmO0FPanVJRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHNxSWY7QXlCenFJRTtFQUVFO0F6QjBxSUo7QXlCdnFJRTtFQUVFLGNwQkpXO0VvQktYO0F6QndxSUo7QXlCcnFJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTGtySWY7QXlCbnFJSTtFQUtJO0F6QmlxSVI7O0F3QjFySUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUwwcklmO0FPMXZJRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTCtySWY7QXlCbHNJRTtFQUVFO0F6Qm1zSUo7QXlCaHNJRTtFQUVFLGNwQkpXO0VvQktYO0F6QmlzSUo7QXlCOXJJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDJzSWY7QXlCNXJJSTtFQUtJO0F6QjBySVI7O0F3Qm50SUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxtdElmO0FPbnhJRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHd0SWY7QXlCM3RJRTtFQUVFO0F6QjR0SUo7QXlCenRJRTtFQUVFLGNwQkpXO0VvQktYO0F6QjB0SUo7QXlCdnRJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTG91SWY7QXlCcnRJSTtFQUtJO0F6Qm10SVI7O0F3QjV1SUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUw0dUlmO0FPNXlJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTGl2SWY7QXlCcHZJRTtFQUVFO0F6QnF2SUo7QXlCbHZJRTtFQUVFLGNwQkpXO0VvQktYO0F6Qm12SUo7QXlCaHZJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDZ2SWY7QXlCOXVJSTtFQUtJO0F6QjR1SVI7O0F3QnJ3SUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxxd0lmO0FPcjBJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDB3SWY7QXlCN3dJRTtFQUVFO0F6Qjh3SUo7QXlCM3dJRTtFQUVFLGNwQkpXO0VvQktYO0F6QjR3SUo7QXlCendJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHN4SWY7QXlCdndJSTtFQUtJO0F6QnF3SVI7O0F3Qjl4SUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUw4eElmO0FPOTFJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTG15SWY7QXlCdHlJRTtFQUVFO0F6QnV5SUo7QXlCcHlJRTtFQUVFLGNwQkpXO0VvQktYO0F6QnF5SUo7QXlCbHlJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTCt5SWY7QXlCaHlJSTtFQUtJO0F6Qjh4SVI7O0F3QnZ6SUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUx1eklmO0FPdjNJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDR6SWY7QXlCL3pJRTtFQUVFO0F6QmcwSUo7QXlCN3pJRTtFQUVFLGNwQkpXO0VvQktYO0F6Qjh6SUo7QXlCM3pJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHcwSWY7QXlCenpJSTtFQUtJO0F6QnV6SVI7O0F3QmgxSUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxnMUlmO0FPaDVJRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHExSWY7QXlCeDFJRTtFQUVFO0F6QnkxSUo7QXlCdDFJRTtFQUVFLGNwQkpXO0VvQktYO0F6QnUxSUo7QXlCcDFJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTGkySWY7QXlCbDFJSTtFQUtJO0F6QmcxSVI7O0F3QnoySUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUx5MklmO0FPejZJRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDgySWY7QXlCajNJRTtFQUVFO0F6QmszSUo7QXlCLzJJRTtFQUVFLGNwQkpXO0VvQktYO0F6QmczSUo7QXlCNzJJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDAzSWY7QXlCMzJJSTtFQUtJO0F6QnkySVI7O0F3Qmw0SUU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxrNElmO0FPbDhJRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHU0SWY7QXlCMTRJRTtFQUVFO0F6QjI0SUo7QXlCeDRJRTtFQUVFLGNwQkpXO0VvQktYO0F6Qnk0SUo7QXlCdDRJRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTG01SWY7QXlCcDRJSTtFQUtJO0F6Qms0SVI7O0F3Qmg1SUE7RUFDRSxnQm5CNk00QjtFbUI1TTVCLGNuQjJGd0M7RW1CMUZ4QyxxQm5CMkZ3QztBTHd6STFDO0FPNTlJRTtFaUI0RUUsdURuQnlGc0M7RW1CeEZ0QywwQm5CeUZzQztBTDB6STFDO0F3Qmg1SUU7RUFFRSwwQm5Cb0ZzQztBTDZ6STFDO0F3Qjk0SUU7RUFFRSxjbkJ0Rk87RW1CdUZQO0F4Qis0SUo7O0F3QnA0SUE7RUNQRTtFbkI0RUk7RW1CMUVKLGdCcEIrSDRCO0VPdk4xQjtBWncrSUo7O0F3QnY0SUE7RUNYRTtFbkI0RUk7RW1CMUVKLGdCcEJnSTRCO0VPeE4xQjtBWisrSUo7O0F3QnI0SUE7RUFDRTtFQUNBO0F4Qnc0SUY7QXdCcjRJRTtFQUNFLGtCbkJ3VDBCO0FMK2tJOUI7O0F3Qi8zSUU7OztFQUNFO0F4Qm80SUo7O0EwQi9nSkE7RUxnQk0sZ0NLZko7QTFCa2hKRjtBcUIvL0lNO0VLcEJOO0lMcUJRO0VyQmtnSk47QUFDRjtBMEJyaEpFO0VBQ0U7QTFCdWhKSjs7QTBCbGhKRTtFQUNFO0ExQnFoSko7O0EwQmpoSkE7RUFDRTtFQUNBO0VBQ0E7RUxESSw2QktFSjtBMUJvaEpGO0FxQmxoSk07RUtOTjtJTE9RO0VyQnFoSk47QUFDRjtBMEJ2aEpFO0VBQ0U7RUFDQTtFTE5FLDRCS09GO0ExQnloSko7QXFCNWhKTTtFS0FKO0lMQ007RXJCK2hKTjtBQUNGOztBMkJwakpBOzs7O0VBSUU7QTNCdWpKRjs7QTJCcGpKQTtFQUNFO0EzQnVqSkY7QTRCbmlKSTtFQUNFO0VBQ0Esb0J2QitOd0I7RXVCOU54Qix1QnZCNk53QjtFdUI1TnhCO0VBaENKO0VBQ0E7RUFDQTtFQUNBO0E1QnNrSkY7QTRCamhKSTtFQUNFO0E1Qm1oSk47O0EyQjdqSkE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhdEJ5cEJrQztFc0J4cEJsQztFQUNBO0VBQ0EsZ0J0Qml1QmtDO0VzQmh1QmxDO0VBQ0E7RXJCMkpJO0VxQnpKSixjdEJYUztFc0JZVDtFQUNBO0VBQ0Esc0J0QnZCUztFc0J3QlQ7RUFDQTtFZmRFO0FaK2tKSjs7QTJCeGpKSTtFQUNFO0VBQ0E7QTNCMmpKTjs7QTJCeGpKSTtFQUNFO0VBQ0E7QTNCMmpKTjs7QWdCL2lKSTtFV25CQTtJQUNFO0lBQ0E7RTNCc2tKSjtFMkJua0pFO0lBQ0U7SUFDQTtFM0Jxa0pKO0FBQ0Y7QWdCMWpKSTtFV25CQTtJQUNFO0lBQ0E7RTNCZ2xKSjtFMkI3a0pFO0lBQ0U7SUFDQTtFM0Ira0pKO0FBQ0Y7QWdCcGtKSTtFV25CQTtJQUNFO0lBQ0E7RTNCMGxKSjtFMkJ2bEpFO0lBQ0U7SUFDQTtFM0J5bEpKO0FBQ0Y7QWdCOWtKSTtFV25CQTtJQUNFO0lBQ0E7RTNCb21KSjtFMkJqbUpFO0lBQ0U7SUFDQTtFM0JtbUpKO0FBQ0Y7QTJCNWxKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHVCdEIrckJnQztBTCs1SHBDO0E0QjduSkk7RUFDRTtFQUNBLG9CdkIrTndCO0V1QjlOeEIsdUJ2QjZOd0I7RXVCNU54QjtFQXpCSjtFQUNBO0VBQ0E7RUFDQTtBNUJ5cEpGO0E0QjNtSkk7RUFDRTtBNUI2bUpOOztBMkJsbUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxxQnRCaXJCZ0M7QUxvN0hwQztBNEJscEpJO0VBQ0U7RUFDQSxvQnZCK053QjtFdUI5TnhCLHVCdkI2TndCO0V1QjVOeEI7RUFsQko7RUFDQTtFQUNBO0VBQ0E7QTVCdXFKRjtBNEJob0pJO0VBQ0U7QTVCa29KTjtBMkI3bUpJO0VBQ0U7QTNCK21KTjs7QTJCem1KRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0J0QmdxQmdDO0FMNDhIcEM7QTRCMXFKSTtFQUNFO0VBQ0Esb0J2QitOd0I7RXVCOU54Qix1QnZCNk53QjtFdUI1TnhCO0E1QjRxSk47QTRCanFKTTtFQUNFO0E1Qm1xSlI7QTRCaHFKTTtFQUNFO0VBQ0EscUJ2QjRNc0I7RXVCM010Qix1QnZCME1zQjtFdUJ6TXRCO0VBOUJOO0VBQ0E7RUFDQTtBNUJpc0pGO0E0QmhxSkk7RUFDRTtBNUJrcUpOO0EyQjVuSkk7RUFDRTtBM0I4bkpOOztBMkJ0bkpFO0VBSUU7RUFDQTtBM0JzbkpKOztBMkJqbkpBO0VFOUdFO0VBQ0E7RUFDQTtFQUNBO0E3Qm11SkY7O0EyQmpuSkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCdEJpSzRCO0VzQmhLNUIsY3RCaEhTO0VzQmlIVDtFQUVBO0VBQ0E7RUFDQTtBM0JtbkpGO0FPeHVKRTtFb0JvSUUsK0N0Qm9uQmdDO0VzQm5uQmhDO0VKL0lBLHlCbEJHTztBTG92Slg7QTJCcG1KRTtFQUVFLFd0QnBKTztFc0JxSlA7RUp0SkEseUJsQm9QMEI7QUx3Z0o5QjtBMkJsbUpFO0VBRUUsY3RCdEpPO0VzQnVKUDtFQUNBO0EzQm1tSko7O0EyQjNsSkE7RUFDRTtBM0I4bEpGOztBMkIxbEpBO0VBQ0U7RUFDQSxzQnRCaW1Ca0M7RXNCaG1CbEM7RXJCQUk7RXFCRUosY3RCektTO0VzQjBLVDtBM0I2bEpGOztBMkJ6bEpBO0VBQ0U7RUFDQTtFQUNBLGN0QjlLUztBTDB3Slg7O0E4QnZ4SkE7O0VBRUU7RUFDQTtFQUNBO0E5QjB4SkY7QThCeHhKRTs7RUFDRTtFQUNBO0E5QjJ4Sko7QU8xeEpFOztFdUJJSTtBOUIweEpOO0E4Qnh4Skk7Ozs7RUFHRTtBOUIyeEpOOztBOEJyeEpBO0VBQ0U7RUFDQTtFQUNBO0E5Qnd4SkY7QThCdHhKRTtFQUNFO0E5Qnd4Sko7O0E4Qmx4SkU7O0VBRUU7QTlCcXhKSjtBOEJqeEpFOztFbEJYRTtFQUNBO0FaZ3lKSjtBOEJqeEpFOztFbEJGRTtFQUNBO0FadXhKSjs7QThCcHdKQTtFQUNFO0VBQ0E7QTlCdXdKRjtBOEJyd0pFO0VBR0U7QTlCcXdKSjtBOEJsd0pFO0VBQ0U7QTlCb3dKSjs7QThCaHdKQTtFQUNFO0VBQ0E7QTlCbXdKRjs7QThCaHdKQTtFQUNFO0VBQ0E7QTlCbXdKRjs7QThCL3VKQTtFQUNFO0VBQ0E7RUFDQTtBOUJrdkpGO0E4Qmh2SkU7O0VBRUU7QTlCa3ZKSjtBOEIvdUpFOztFQUVFO0E5Qml2Sko7QThCN3VKRTs7RWxCckZFO0VBQ0E7QVpzMEpKO0E4Qjd1SkU7O0VsQnhHRTtFQUNBO0FaeTFKSjs7QThCOXRKRTs7RUFFRTtBOUJpdUpKO0E4Qi90Skk7Ozs7RUFFRTtFQUNBO0VBQ0E7QTlCbXVKTjs7QStCNTNKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CKzNKRjtBK0I3M0pFOzs7O0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0IrM0pKO0ErQjczSkk7Ozs7Ozs7Ozs7OztFQUdFO0EvQnc0Sk47QStCbjRKRTs7O0VBR0U7QS9CcTRKSjtBK0JqNEpFO0VBQ0U7QS9CbTRKSjtBK0I5M0pJOztFbkJJQTtFQUNBO0FaODNKSjtBK0I5M0pFO0VBQ0U7RUFDQTtBL0JnNEpKO0ErQjkzSkk7RW5CbkJBO0VBQ0E7QVpvNUpKO0ErQmg0Skk7RW5CUEE7RUFDQTtBWjA0Sko7QStCaDRKSTs7OztFbkJ6QkE7RUFDQTtBWis1Sko7QStCOTNKSTs7OztFbkJsQ0E7RUFDQTtBWnM2Sko7O0ErQnIzSkE7O0VBRUU7QS9CdzNKRjtBK0JuM0pFOztFQUNFO0VBQ0E7QS9CczNKSjtBK0JwM0pJOztFQUNFO0EvQnUzSk47QStCbjNKRTs7Ozs7Ozs7RUFJRTtBL0J5M0pKOztBK0JyM0pBO0VBQXVCO0EvQnkzSnZCOztBK0J4M0pBO0VBQXNCO0EvQjQzSnRCOztBK0JwM0pBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RXpCMkRJO0V5QnpESixnQjFCcUs0QjtFMEJwSzVCLGdCMUJ5SzRCO0UwQnhLNUIsYzFCL0dTO0UwQmdIVDtFQUNBO0VBQ0EseUIxQnZIUztFMEJ3SFQ7RW5CL0dFO0FadStKSjtBK0JwM0pFOztFQUVFO0EvQnMzSko7O0ErQjUySkE7O0VBRUUsZ0MxQm1Xc0M7QUw0Z0p4Qzs7QStCNTJKQTs7Ozs7O0VBTUU7RXpCd0JJO0V5QnRCSixnQjFCMkU0QjtFT3ZOMUI7QVo0L0pKOztBK0I1MkpBOztFQUVFLGtDMUJpVnNDO0FMOGhKeEM7O0ErQjUySkE7Ozs7OztFQU1FO0V6Qk9JO0V5QkxKLGdCMUIyRDRCO0VPeE4xQjtBWjZnS0o7O0ErQjUySkE7O0VBRUU7QS9CKzJKRjs7QStCcDJKQTs7Ozs7Ozs7RW5COUpJO0VBQ0E7QVo2Z0tKOztBK0JyMkpBOzs7Ozs7RW5CM0pJO0VBQ0E7QVp5Z0tKOztBZ0NqaktBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ29qS0Y7O0FnQ2pqS0E7RUFDRTtFQUNBLGtCM0J5ZnNDO0FMMmpKeEM7O0FnQ2pqS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxXM0JxZnNDO0UyQnBmdEM7RUFDQTtBaENvaktGO0FnQ2xqS0U7RUFDRSxXM0J6Qk87RTJCMEJQLHFCM0J5TjBCO0VrQnBQMUIseUJsQm9QMEI7QUw0MUo5QjtBZ0NoaktFO0VBS0ksZ0QzQmdXd0I7QUw4c0o5QjtBZ0MxaUtFO0VBQ0UsNkQzQnNib0M7QUxzbkp4QztBZ0N6aUtFO0VBQ0UsVzNCN0NPO0UyQjhDUCxxRTNCa2Y0QztFMkJqZjVDLGlFM0JpZjRDO0FMMGpKaEQ7QWdDcGlLSTtFQUNFLGMzQmpESztBTHVsS1g7QWdDcGlLTTtFQUNFLHlCM0J4REc7QUw4bEtYOztBZ0M1aEtBO0VBQ0U7RUFDQTtFQUVBO0FoQzhoS0Y7QWdDMWhLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzNCd2JvQztFMkJ2YnBDLFkzQnVib0M7RTJCdGJwQztFQUNBO0VBQ0Esc0IzQnJGTztFMkJzRlA7QWhDNGhLSjtBZ0N2aEtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXM0J5YW9DO0UyQnhhcEMsWTNCd2FvQztFMkJ2YXBDO0VBQ0E7QWhDeWhLSjs7QWdDL2dLRTtFcEJsR0U7QVpxbktKO0FnQzlnS0k7RUFDRTtBaENnaEtOO0FnQzNnS0k7RUFDRSxxQjNCMEh3QjtFa0JwUDFCLHlCbEJvUDBCO0FMbzVKOUI7QWdDMWdLSTtFQUNFO0FoQzRnS047QWdDdmdLSTtFVHBJQSx3Q2xCeWhCNEM7QUxxbkpoRDtBZ0N2Z0tJO0VUdklBLHdDbEJ5aEI0QztBTHduSmhEOztBZ0MvL0pFO0VBRUUsa0IzQjBaNEM7QUx1bUpoRDtBZ0M3L0pJO0VBQ0U7QWhDKy9KTjtBZ0MxL0pJO0VUOUpBLHdDbEJ5aEI0QztBTGtvSmhEOztBZ0NsL0pBO0VBQ0U7QWhDcS9KRjtBZ0NsL0pJO0VBQ0U7RUFDQSxjM0JrWTBDO0UyQmpZMUM7RUFFQSxxQjNCZ1kwQztBTG1uSmhEO0FnQ2gvSkk7RUFDRTtFQUNBO0VBQ0EsdUIzQjJYMEM7RTJCMVgxQyx3QjNCMFgwQztFMkJ6WDFDLHlCM0JwTEs7RTJCc0xMLHFCM0JzWDBDO0VnQnhpQjFDLHlJV21MQTtBaENpL0pOO0FxQmhxS007RVd1S0Y7SVh0S0k7RXJCbXFLTjtBQUNGO0FnQ2ovSkk7RUFDRSxzQjNCbE1LO0UyQm1NTDtBaENtL0pOO0FnQzkrSkk7RVR6TUEsd0NsQnloQjRDO0FMaXFKaEQ7O0FnQ3ArSkE7RUFDRTtFQUNBO0VBQ0EsbUMzQnFSc0M7RTJCcFJ0QztFMUI1Q0k7RTBCK0NKLGdCM0I2RDRCO0UyQjVENUIsZ0IzQmlFNEI7RTJCaEU1QixjM0J2TlM7RTJCd05UO0VBQ0E7RUFDQTtFcEJ0TkU7RW9CeU5GO0FoQ3ErSkY7QWdDbitKRTtFQUNFLDZEM0J3UG9DO0UyQnZQcEM7RUFLRSxnRDNCbVc4QjtBTDhuSnBDO0FnQzk5Skk7RUFNRSxjM0IvT0s7RTJCZ1BMLHNCM0J2UEs7QUxrdEtYO0FnQ3Y5SkU7RUFFRTtFQUNBLHNCM0IrSDBCO0UyQjlIMUI7QWhDdzlKSjtBZ0NyOUpFO0VBQ0UsYzNCN1BPO0UyQjhQUCx5QjNCbFFPO0FMeXRLWDtBZ0NuOUpFO0VBQ0U7QWhDcTlKSjtBZ0NqOUpFO0VBQ0U7RUFDQTtBaENtOUpKOztBZ0MvOEpBO0VBQ0Usa0MzQjBOc0M7RTJCek50QyxvQjNCaUg0QjtFMkJoSDVCLHVCM0JnSDRCO0UyQi9HNUIsb0IzQmdINEI7RUMxTnhCO0FONmpLTjs7QWdDLzhKQTtFQUNFLGdDM0JtTnNDO0UyQmxOdEMsbUIzQjhHNEI7RTJCN0c1QixzQjNCNkc0QjtFMkI1RzVCLGtCM0I2RzRCO0VDL054QjtBTnFrS047O0FnQzE4SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQzNCaU1zQztFMkJoTXRDO0FoQzY4SkY7O0FnQzE4SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQzNCeUxzQztFMkJ4THRDO0VBQ0E7RUFDQTtBaEM2OEpGO0FnQzM4SkU7RUFDRSw2RDNCcUtvQztFMkJwS3BDLGdEM0J5RTBCO0FMbzRKOUI7QWdDejhKRTtFQUVFLHlCM0IvVE87QUx5d0tYO0FnQ3Q4Skk7RUFDRSxpQjNCMlRhO0FMNm9KbkI7QWdDcDhKRTtFQUNFO0FoQ3M4Sko7O0FnQ2w4SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUMzQndKc0M7RTJCdkp0QztFQUNBO0VBRUEsZ0IzQmhFNEI7RTJCaUU1QixnQjNCNUQ0QjtFMkI2RDVCLGMzQnBWUztFMkJxVlQsc0IzQjVWUztFMkI2VlQ7RXBCbFZFO0FadXhLSjtBZ0NqOEpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNkIzQmlJb0M7RTJCaElwQztFQUNBLGdCM0I1RTBCO0UyQjZFMUIsYzNCcFdPO0UyQnFXUDtFVDdXQSx5QmxCR087RTJCNFdQO0VwQm5XQTtBWnV5S0o7O0FnQ3o3SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQzQ3SkY7QWdDMTdKRTtFQUNFO0FoQzQ3Sko7QWdDeDdKSTtFQUEwQixnRTNCb09lO0FMdXRKN0M7QWdDMTdKSTtFQUEwQixnRTNCbU9lO0FMMHRKN0M7QWdDNTdKSTtFQUEwQixnRTNCa09lO0FMNnRKN0M7QWdDNTdKRTtFQUNFO0FoQzg3Sko7QWdDMzdKRTtFQUNFLFczQm9OeUM7RTJCbk56QyxZM0JtTnlDO0UyQmxOekM7RVRsWkEseUJsQm9QMEI7RTJCZ0sxQixTM0JtTnlDO0VPM2xCekM7RVNGRSw0R1c2WUY7QWhDNDdKSjtBcUJyMEtNO0VXaVlKO0lYaFlNO0VyQncwS047QUFDRjtBZ0N6OEpFO0VBU0U7QWhDbThKSjtBZ0NqOEpJO0VUMVpBLHFFbEI0bUJ5QztBTGt2SjdDO0FnQy83SkU7RUFDRSxXM0I2TGdDO0UyQjVMaEMsYzNCNkxnQztFMkI1TGhDO0VBQ0EsZTNCNExnQztFMkIzTGhDLHlCM0JoYU87RTJCaWFQO0VwQnpaQTtBWjIxS0o7QWdDNzdKRTtFQUNFLFczQnlMeUM7RTJCeEx6QyxZM0J3THlDO0VrQnBtQnpDLHlCbEJvUDBCO0UyQjBMMUIsUzNCeUx5QztFTzNsQnpDO0VTRkUsNEdXdWFGO0FoQzg3Sko7QXFCajJLTTtFVzRaSjtJWDNaTTtFckJvMktOO0FBQ0Y7QWdDMThKRTtFQVFFO0FoQ3E4Sko7QWdDbjhKSTtFVHBiQSxxRWxCNG1CeUM7QUw4d0o3QztBZ0NqOEpFO0VBQ0UsVzNCbUtnQztFMkJsS2hDLGMzQm1LZ0M7RTJCbEtoQztFQUNBLGUzQmtLZ0M7RTJCaktoQyx5QjNCMWJPO0UyQjJiUDtFcEJuYkE7QVp1M0tKO0FnQy83SkU7RUFDRSxXM0IrSnlDO0UyQjlKekMsWTNCOEp5QztFMkI3SnpDO0VBQ0Esb0IzQnJFMEI7RTJCc0UxQixtQjNCdEUwQjtFa0JuWTFCLHlCbEJvUDBCO0UyQnVOMUIsUzNCNEp5QztFTzNsQnpDO0VTRkUsNEdXb2NGO0FoQ2c4Sko7QXFCaDRLTTtFV3NiSjtJWHJiTTtFckJtNEtOO0FBQ0Y7QWdDLzhKRTtFQVdFO0FoQ3U4Sko7QWdDcjhKSTtFVGpkQSxxRWxCNG1CeUM7QUw2eUo3QztBZ0NuOEpFO0VBQ0UsVzNCc0lnQztFMkJySWhDLGMzQnNJZ0M7RTJCckloQztFQUNBLGUzQnFJZ0M7RTJCcEloQztFQUNBO0VBQ0E7QWhDcThKSjtBZ0NqOEpFO0VBQ0UseUIzQjlkTztFT1FQO0FaMDVLSjtBZ0NoOEpFO0VBQ0U7RUFDQSx5QjNCcGVPO0VPUVA7QVorNUtKO0FnQzk3Skk7RUFDRSx5QjNCeGVLO0FMdzZLWDtBZ0M3N0pJO0VBQ0U7QWhDKzdKTjtBZ0M1N0pJO0VBQ0UseUIzQmhmSztBTDg2S1g7QWdDMzdKSTtFQUNFO0FoQzY3Sk47QWdDMTdKSTtFQUNFLHlCM0J4Zks7QUxvN0tYOztBZ0N2N0pBOzs7RVh6Zk0sNEdXNGZKO0FoQzA3SkY7QXFCbDdLTTtFV3FmTjs7O0lYcGZRO0VyQnU3S047QUFDRjs7QWlDeDhLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDMjhLRjs7QWlDeDhLQTtFQUNFO0VBQ0E7QWpDMjhLRjtBTzE4S0U7RTBCR0U7QWpDMDhLSjtBaUN0OEtFO0VBQ0UsYzVCWE87RTRCWVA7RUFDQTtBakN3OEtKOztBaUNoOEtBO0VBQ0U7QWpDbThLRjtBaUNqOEtFO0VBQ0U7RUFDQTtFQUNBO0VyQmJBO0VBQ0E7QVppOUtKO0FPNzlLRTtFMEI2Qkk7RUFDQSxxQzVCaXBCOEI7QUxrekpwQztBaUNoOEtJO0VBQ0UsYzVCckNLO0U0QnNDTDtFQUNBO0FqQ2s4S047QWlDOTdLRTs7RUFFRSxjNUI1Q087RTRCNkNQLHNCNUJwRE87RTRCcURQLGtDNUJzb0JnQztBTDB6SnBDO0FpQzc3S0U7RUFFRTtFckJ0Q0E7RUFDQTtBWnErS0o7O0FpQ3A3S0U7RUFDRTtFQUNBO0VyQjdEQTtBWnEvS0o7QWlDcDdLRTs7RUFFRSxXNUI5RU87RTRCK0VQLHlCNUJvSzBCO0FMa3hLOUI7O0FpQzU2S0U7O0VBRUU7RUFDQTtBakMrNktKOztBaUMxNktFOztFQUVFO0VBQ0E7RUFDQTtBakM2NktKOztBaUNuNktFO0VBQ0U7QWpDczZLSjtBaUNwNktFO0VBQ0U7QWpDczZLSjs7QWtDL2dMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbENraExGO0FrQzlnTEU7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsQ3FoTEo7QWtDamdMQTtFQUNFO0VBQ0Esc0I3QmtxQmtDO0U2QmpxQmxDLHlCN0JpcUJrQztFNkJocUJsQyxrQjdCZ0ZPO0VDNkNIO0U0QjNISjtFQUNBO0FsQ21nTEY7QU83aUxFO0UyQjZDRTtBbENtZ0xKOztBa0MxL0tBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEM2L0tGO0FrQzMvS0U7RUFDRTtFQUNBO0FsQzYvS0o7QWtDMS9LRTtFQUNFO0VBQ0E7QWxDNC9LSjs7QWtDbi9LQTtFQUNFO0VBQ0EsbUI3QnlsQmtDO0U2QnhsQmxDLHNCN0J3bEJrQztBTDg1SnBDOztBa0MxK0tBO0VBQ0U7RUFDQTtFQUdBO0FsQzIrS0Y7O0FrQ3YrS0E7RUFDRTtFNUI4REk7RTRCNURKO0VBQ0E7RUFDQTtFdEJ4R0U7QVptbExKO0FPcmxMRTtFMkI4R0U7QWxDMCtLSjs7QWtDcCtLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN1K0tGOztBa0NwK0tBO0VBQ0UsZ0I3QmdsQmtDO0U2Qi9rQmxDO0FsQ3UrS0Y7O0FnQjdpTEk7RWtCa0ZJOzs7Ozs7SUFDRTtJQUNBO0VsQ28rS1I7QUFDRjtBZ0J0a0xJO0VrQjZGQTtJQW9CSTtJQUNBO0VsQ3k5S047RWtDdjlLTTtJQUNFO0VsQ3k5S1I7RWtDdjlLUTtJQUNFO0VsQ3k5S1Y7RWtDdDlLUTtJQUNFLHFCN0J5aEJ3QjtJNkJ4aEJ4QixvQjdCd2hCd0I7RUxnOEpsQztFa0NuOUtNOzs7Ozs7SUFDRTtFbEMwOUtSO0VrQzU4S007SUFDRTtFbEM4OEtSO0VrQzM4S007SUFDRTtJQUdBO0VsQzI4S1I7RWtDeDhLTTtJQUNFO0VsQzA4S1I7QUFDRjtBZ0IzbExJO0VrQmtGSTs7Ozs7O0lBQ0U7SUFDQTtFbENpaExSO0FBQ0Y7QWdCbm5MSTtFa0I2RkE7SUFvQkk7SUFDQTtFbENzZ0xOO0VrQ3BnTE07SUFDRTtFbENzZ0xSO0VrQ3BnTFE7SUFDRTtFbENzZ0xWO0VrQ25nTFE7SUFDRSxxQjdCeWhCd0I7STZCeGhCeEIsb0I3QndoQndCO0VMNitKbEM7RWtDaGdMTTs7Ozs7O0lBQ0U7RWxDdWdMUjtFa0N6L0tNO0lBQ0U7RWxDMi9LUjtFa0N4L0tNO0lBQ0U7SUFHQTtFbEN3L0tSO0VrQ3IvS007SUFDRTtFbEN1L0tSO0FBQ0Y7QWdCeG9MSTtFa0JrRkk7Ozs7OztJQUNFO0lBQ0E7RWxDOGpMUjtBQUNGO0FnQmhxTEk7RWtCNkZBO0lBb0JJO0lBQ0E7RWxDbWpMTjtFa0NqakxNO0lBQ0U7RWxDbWpMUjtFa0NqakxRO0lBQ0U7RWxDbWpMVjtFa0NoakxRO0lBQ0UscUI3QnloQndCO0k2QnhoQnhCLG9CN0J3aEJ3QjtFTDBoS2xDO0VrQzdpTE07Ozs7OztJQUNFO0VsQ29qTFI7RWtDdGlMTTtJQUNFO0VsQ3dpTFI7RWtDcmlMTTtJQUNFO0lBR0E7RWxDcWlMUjtFa0NsaUxNO0lBQ0U7RWxDb2lMUjtBQUNGO0FnQnJyTEk7RWtCa0ZJOzs7Ozs7SUFDRTtJQUNBO0VsQzJtTFI7QUFDRjtBZ0I3c0xJO0VrQjZGQTtJQW9CSTtJQUNBO0VsQ2dtTE47RWtDOWxMTTtJQUNFO0VsQ2dtTFI7RWtDOWxMUTtJQUNFO0VsQ2dtTFY7RWtDN2xMUTtJQUNFLHFCN0J5aEJ3QjtJNkJ4aEJ4QixvQjdCd2hCd0I7RUx1a0tsQztFa0MxbExNOzs7Ozs7SUFDRTtFbENpbUxSO0VrQ25sTE07SUFDRTtFbENxbExSO0VrQ2xsTE07SUFDRTtJQUdBO0VsQ2tsTFI7RWtDL2tMTTtJQUNFO0VsQ2lsTFI7QUFDRjtBa0NocExROzs7Ozs7RUFDRTtFQUNBO0FsQ3VwTFY7QWtDM3BMSTtFQW9CSTtFQUNBO0FsQzBvTFI7QWtDeG9MUTtFQUNFO0FsQzBvTFY7QWtDeG9MVTtFQUNFO0FsQzBvTFo7QWtDdm9MVTtFQUNFLHFCN0J5aEJ3QjtFNkJ4aEJ4QixvQjdCd2hCd0I7QUxpbktwQztBa0Nwb0xROzs7Ozs7RUFDRTtBbEMyb0xWO0FrQzduTFE7RUFDRTtBbEMrbkxWO0FrQzVuTFE7RUFDRTtFQUdBO0FsQzRuTFY7QWtDem5MUTtFQUNFO0FsQzJuTFY7O0FrQzdtTEU7RUFDRSx5QjdCaWdCZ0M7QUwrbUtwQztBT3gwTEU7RTJCMk5JLHlCN0I4ZjhCO0FMa25LcEM7QWtDM21MSTtFQUNFLHlCN0JzZjhCO0FMdW5LcEM7QU85MExFO0UyQm9PTSx5QjdCb2Y0QjtBTHluS3BDO0FrQzFtTE07RUFDRSx5QjdCa2Y0QjtBTDBuS3BDO0FrQ3htTEk7Ozs7RUFJRSx5QjdCeWU4QjtBTGlvS3BDO0FrQ3RtTEU7RUFDRSx5QjdCa2VnQztFNkJqZWhDLGdDN0JzZWdDO0FMa29LcEM7QWtDcm1MRTtFQUNFO0FsQ3VtTEo7QWtDcG1MRTtFQUNFLHlCN0J5ZGdDO0FMNm9LcEM7QWtDcm1MSTtFQUNFLHlCN0J5ZDhCO0FMOG9LcEM7QU92MkxFO0UyQm1RTSx5QjdCc2Q0QjtBTGlwS3BDOztBa0MvbExFO0VBQ0UsVzdCclJPO0FMdTNMWDtBTzkyTEU7RTJCK1FJLFc3QnhSSztBTDAzTFg7QWtDN2xMSTtFQUNFLCtCN0IyYjhCO0FMb3FLcEM7QU9wM0xFO0UyQndSTSxnQzdCeWI0QjtBTHNxS3BDO0FrQzVsTE07RUFDRSxnQzdCdWI0QjtBTHVxS3BDO0FrQzFsTEk7Ozs7RUFJRSxXN0I3U0s7QUx5NExYO0FrQ3hsTEU7RUFDRSwrQjdCdWFnQztFNkJ0YWhDLHNDN0IyYWdDO0FMK3FLcEM7QWtDdmxMRTtFQUNFO0FsQ3lsTEo7QWtDdGxMRTtFQUNFLCtCN0I4WmdDO0FMMHJLcEM7QWtDdmxMSTtFQUNFLFc3QjdUSztBTHM1TFg7QU83NExFO0UyQnVUTSxXN0JoVUc7QUx5NUxYOztBbUM1NUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBLHNCOUJKUztFOEJLVDtFQUNBO0V2QktFO0FaMDVMSjtBbUM1NUxFO0VBQ0U7RUFDQTtBbkM4NUxKO0FtQzM1TEU7RUFDRTtFQUNBO0FuQzY1TEo7QW1DMzVMSTtFQUNFO0V2QkNGO0VBQ0E7QVo2NUxKO0FtQzM1TEk7RUFDRTtFdkJVRjtFQUNBO0FabzVMSjtBbUN4NUxFOztFQUVFO0FuQzA1TEo7O0FtQ3Q1TEE7RUFHRTtFQUdBO0VBQ0EsZ0I5Qmd4QmtDO0FMcW9LcEM7O0FtQ2o1TEE7RUFDRSxzQjlCMHdCa0M7QUwwb0twQzs7QW1DajVMQTtFQUNFO0VBQ0E7QW5DbzVMRjs7QW1DajVMQTtFQUNFO0FuQ281TEY7O0FPejhMRTtFNEIwREU7QW5DbTVMSjtBbUNoNUxFO0VBQ0Usb0I5Qnl2QmdDO0FMeXBLcEM7O0FtQzE0TEE7RUFDRTtFQUNBO0VBRUEscUM5Qmt2QmtDO0U4Qmp2QmxDO0FuQzQ0TEY7QW1DMTRMRTtFdkJ2RUU7QVpvOUxKOztBbUN4NExBO0VBQ0U7RUFFQSxxQzlCdXVCa0M7RThCdHVCbEM7QW5DMDRMRjtBbUN4NExFO0V2QmxGRTtBWjY5TEo7O0FtQ2o0TEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkNvNExGOztBbUNqNExBO0VBQ0U7RUFDQTtBbkNvNExGOztBbUNoNExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCOUI2c0JrQztFTzV6QmhDO0FabS9MSjs7QW1DaDRMQTs7O0VBR0U7RUFDQTtBbkNtNExGOztBbUNoNExBOztFdkJqSEk7RUFDQTtBWnMvTEo7O0FtQ2o0TEE7O0V2QnhHSTtFQUNBO0FaOCtMSjs7QW1DOTNMRTtFQUNFLG1COUJxckJnQztBTDRzS3BDO0FnQmgrTEk7RW1CNkZKO0lBTUk7SUFDQTtJQUNBO0lBQ0E7RW5DaTRMRjtFbUMvM0xFO0lBRUU7SUFDQSxrQjlCeXFCOEI7SThCeHFCOUI7SUFDQSxpQjlCdXFCOEI7RUx5dEtsQztBQUNGOztBbUNwM0xFO0VBQ0UsbUI5QnlwQmdDO0FMOHRLcEM7QWdCbC9MSTtFbUJ1SEo7SUFRSTtJQUNBO0VuQ3UzTEY7RW1DcDNMRTtJQUVFO0lBQ0E7RW5DcTNMSjtFbUNuM0xJO0lBQ0U7SUFDQTtFbkNxM0xOO0VtQ2gzTE07SXZCektKO0lBQ0E7RVo0aE1GO0VtQ2ozTFE7O0lBR0U7RW5DazNMVjtFbUNoM0xROztJQUdFO0VuQ2kzTFY7RW1DNzJMTTtJdkIxS0o7SUFDQTtFWjBoTUY7RW1DOTJMUTs7SUFHRTtFbkMrMkxWO0VtQzcyTFE7O0lBR0U7RW5DODJMVjtBQUNGOztBbUNqMkxFO0VBQ0Usc0I5QjhrQmdDO0FMc3hLcEM7QWdCNWhNSTtFbUJzTEo7SUFNSSxlOUIybEJnQztJOEIxbEJoQyxtQjlCMmxCZ0M7SThCMWxCaEM7SUFDQTtFbkNvMkxGO0VtQ2wyTEU7SUFDRTtJQUNBO0VuQ28yTEo7QUFDRjs7QW1DMzFMQTtFQUNFO0FuQzgxTEY7QW1DNTFMRTtFQUNFO0FuQzgxTEo7QW1DNTFMSTtFQUNFO0V2QnZPRjtFQUNBO0Fac2tNSjtBbUM1MUxJO0V2QnpQQTtFQUNBO0Fad2xNSjtBbUM1MUxJO0V2QnRRQTtFdUJ3UUU7QW5DODFMTjs7QW9DeG5NQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CL0JxaUNrQztFK0JuaUNsQztFQUNBLHlCL0JFUztFT1NQO0FaZ25NSjs7QW9Dcm5NRTtFQUNFLG9CL0J5aENnQztBTCtsS3BDO0FvQ3RuTUk7RUFDRTtFQUNBLHFCL0JxaEM4QjtFK0JwaEM5QixjL0JOSztFK0JPTDtBcEN3bk1OO0FvQzltTUU7RUFDRTtBcENnbk1KO0FvQzdtTUU7RUFDRTtBcEMrbU1KO0FvQzVtTUU7RUFDRSxjL0IxQk87QUx3b01YOztBcUNycE1BO0VBQ0U7RTVCR0E7RUFDQTtFR2FFO0FaMG9NSjs7QXFDdHBNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUJoQ294QmtDO0VnQ254QmxDLGNoQ21Ld0M7RWdDakt4QyxzQmhDUFM7RWdDUVQ7QXJDd3BNRjtBcUN0cE1FO0VBQ0U7RUFDQSx1RGhDOEpzQztFZ0M3SnRDO0VBQ0EseUJoQ1pPO0VnQ2FQLHFCaENaTztBTG9xTVg7QXFDcnBNRTtFQUNFO0VBQ0EsVWhDNHdCZ0M7RWdDM3dCaEMsZ0RoQytXMEI7QUx3eUw5Qjs7QXFDanBNSTtFQUNFO0V6QmFGO0VBQ0E7QVp3b01KO0FxQ2pwTUk7RXpCTkE7RUFDQTtBWjBwTUo7QXFDaHBNRTtFQUNFO0VBQ0EsV2hDeENPO0VnQ3lDUCx5QmhDME0wQjtFZ0N6TTFCLHFCaEN5TTBCO0FMeThMOUI7QXFDL29NRTtFQUNFLGNoQ3hDTztFZ0N5Q1A7RUFFQTtFQUNBLHNCaENsRE87RWdDbURQLHFCaENoRE87QUxnc01YOztBc0N2c01FO0VBQ0U7RWhDZ0xFO0VnQzlLRixnQmpDbU8wQjtBTHUrTDlCO0FzQ3JzTU07RTFCcUNGO0VBQ0E7QVptcU1KO0FzQ3BzTU07RTFCa0JGO0VBQ0E7QVpxck1KOztBc0NydE1FO0VBQ0U7RWhDZ0xFO0VnQzlLRixnQmpDb08wQjtBTG8vTDlCO0FzQ250TU07RTFCcUNGO0VBQ0E7QVppck1KO0FzQ2x0TU07RTFCa0JGO0VBQ0E7QVptc01KOztBdUNqdU1BO0VBQ0U7RUFDQTtFakM2SkU7RWlDM0pGLGdCbEN3UjRCO0VrQ3ZSNUI7RUFDQTtFQUNBO0VBQ0E7RTNCS0U7RVNGRSxxSWtCREo7QXZDb3VNRjtBcUIvdE1NO0VrQmZOO0lsQmdCUTtFckJrdU1OO0FBQ0Y7QU94dU1FO0VnQ0dJO0F2Q3d1TU47O0F1Q251TUU7RUFDRTtBdkNzdU1KOztBdUNqdU1BO0VBQ0U7RUFDQTtBdkNvdU1GOztBdUM3dE1BO0VBQ0Usb0JsQ2k0QmtDO0VrQ2g0QmxDLG1CbENnNEJrQztFT3Y1QmhDO0Fad3ZNSjs7QXVDeHRNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxtc01mO0FPL3ZNRTtFaUNWSTtFQUNBO0F4QzR3TU47QXdDendNSTtFQUVFO0VBQ0E7QXhDMHdNTjs7QXVDcnVNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxndE1mO0FPNXdNRTtFaUNWSTtFQUNBO0F4Q3l4TU47QXdDdHhNSTtFQUVFO0VBQ0E7QXhDdXhNTjs7QXVDbHZNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUw2dE1mO0FPenhNRTtFaUNWSTtFQUNBO0F4Q3N5TU47QXdDbnlNSTtFQUVFO0VBQ0E7QXhDb3lNTjs7QXVDL3ZNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUwwdU1mO0FPdHlNRTtFaUNWSTtFQUNBO0F4Q216TU47QXdDaHpNSTtFQUVFO0VBQ0E7QXhDaXpNTjs7QXVDNXdNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUx1dk1mO0FPbnpNRTtFaUNWSTtFQUNBO0F4Q2cwTU47QXdDN3pNSTtFQUVFO0VBQ0E7QXhDOHpNTjs7QXVDenhNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxvd01mO0FPaDBNRTtFaUNWSTtFQUNBO0F4QzYwTU47QXdDMTBNSTtFQUVFO0VBQ0E7QXhDMjBNTjs7QXVDdHlNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxpeE1mO0FPNzBNRTtFaUNWSTtFQUNBO0F4QzAxTU47QXdDdjFNSTtFQUVFO0VBQ0E7QXhDdzFNTjs7QXVDbnpNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUw4eE1mO0FPMTFNRTtFaUNWSTtFQUNBO0F4Q3UyTU47QXdDcDJNSTtFQUVFO0VBQ0E7QXhDcTJNTjs7QXVDaDBNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUwyeU1mO0FPdjJNRTtFaUNWSTtFQUNBO0F4Q28zTU47QXdDajNNSTtFQUVFO0VBQ0E7QXhDazNNTjs7QXVDNzBNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUx3ek1mO0FPcDNNRTtFaUNWSTtFQUNBO0F4Q2k0TU47QXdDOTNNSTtFQUVFO0VBQ0E7QXhDKzNNTjs7QXVDMTFNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxxME1mO0FPajRNRTtFaUNWSTtFQUNBO0F4Qzg0TU47QXdDMzRNSTtFQUVFO0VBQ0E7QXhDNDRNTjs7QXVDdjJNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxrMU1mO0FPOTRNRTtFaUNWSTtFQUNBO0F4QzI1TU47QXdDeDVNSTtFQUVFO0VBQ0E7QXhDeTVNTjs7QXVDcDNNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUwrMU1mO0FPMzVNRTtFaUNWSTtFQUNBO0F4Q3c2TU47QXdDcjZNSTtFQUVFO0VBQ0E7QXhDczZNTjs7QXVDajRNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUw0Mk1mO0FPeDZNRTtFaUNWSTtFQUNBO0F4Q3E3TU47QXdDbDdNSTtFQUVFO0VBQ0E7QXhDbTdNTjs7QXVDOTRNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUx5M01mO0FPcjdNRTtFaUNWSTtFQUNBO0F4Q2s4TU47QXdDLzdNSTtFQUVFO0VBQ0E7QXhDZzhNTjs7QXVDMzVNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxzNE1mO0FPbDhNRTtFaUNWSTtFQUNBO0F4Qys4TU47QXdDNThNSTtFQUVFO0VBQ0E7QXhDNjhNTjs7QXVDeDZNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxtNU1mO0FPLzhNRTtFaUNWSTtFQUNBO0F4QzQ5TU47QXdDejlNSTtFQUVFO0VBQ0E7QXhDMDlNTjs7QXVDcjdNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxnNk1mO0FPNTlNRTtFaUNWSTtFQUNBO0F4Q3krTU47QXdDdCtNSTtFQUVFO0VBQ0E7QXhDdStNTjs7QXVDbDhNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUw2Nk1mO0FPeitNRTtFaUNWSTtFQUNBO0F4Q3MvTU47QXdDbi9NSTtFQUVFO0VBQ0E7QXhDby9NTjs7QXVDLzhNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUwwN01mO0FPdC9NRTtFaUNWSTtFQUNBO0F4Q21nTk47QXdDaGdOSTtFQUVFO0VBQ0E7QXhDaWdOTjs7QXVDNTlNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUx1OE1mO0FPbmdORTtFaUNWSTtFQUNBO0F4Q2doTk47QXdDN2dOSTtFQUVFO0VBQ0E7QXhDOGdOTjs7QXVDeitNRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxvOU1mO0FPaGhORTtFaUNWSTtFQUNBO0F4QzZoTk47QXdDMWhOSTtFQUVFO0VBQ0E7QXhDMmhOTjs7QXVDdC9NRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxpK01mO0FPN2hORTtFaUNWSTtFQUNBO0F4QzBpTk47QXdDdmlOSTtFQUVFO0VBQ0E7QXhDd2lOTjs7QXVDbmdORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUw4K01mO0FPMWlORTtFaUNWSTtFQUNBO0F4Q3VqTk47QXdDcGpOSTtFQUVFO0VBQ0E7QXhDcWpOTjs7QXVDaGhORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUwyL01mO0FPdmpORTtFaUNWSTtFQUNBO0F4Q29rTk47QXdDamtOSTtFQUVFO0VBQ0E7QXhDa2tOTjs7QXVDN2hORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUx3Z05mO0FPcGtORTtFaUNWSTtFQUNBO0F4Q2lsTk47QXdDOWtOSTtFQUVFO0VBQ0E7QXhDK2tOTjs7QXVDMWlORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxxaE5mO0FPamxORTtFaUNWSTtFQUNBO0F4QzhsTk47QXdDM2xOSTtFQUVFO0VBQ0E7QXhDNGxOTjs7QXVDdmpORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxraU5mO0FPOWxORTtFaUNWSTtFQUNBO0F4QzJtTk47QXdDeG1OSTtFQUVFO0VBQ0E7QXhDeW1OTjs7QXVDcGtORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUwraU5mO0FPM21ORTtFaUNWSTtFQUNBO0F4Q3duTk47QXdDcm5OSTtFQUVFO0VBQ0E7QXhDc25OTjs7QXVDamxORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUw0ak5mO0FPeG5ORTtFaUNWSTtFQUNBO0F4Q3FvTk47QXdDbG9OSTtFQUVFO0VBQ0E7QXhDbW9OTjs7QXVDOWxORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUx5a05mO0FPcm9ORTtFaUNWSTtFQUNBO0F4Q2twTk47QXdDL29OSTtFQUVFO0VBQ0E7QXhDZ3BOTjs7QXVDM21ORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QUxzbE5mO0FPbHBORTtFaUNWSTtFQUNBO0F4QytwTk47QXdDNXBOSTtFQUVFO0VBQ0E7QXhDNnBOTjs7QXlDMXFOQTtFQUNFO0VBQ0EsbUJwQ3l6QmtDO0VvQ3Z6QmxDLHlCcENLUztFT1NQO0FaK3BOSjtBZ0Jybk5JO0V5QjVESjtJQVFJO0V6QzZxTkY7QUFDRjs7QXlDMXFOQTtFQUNFO0VBQ0E7RTdCSUU7QVowcU5KOztBMEN4ck5BO0VBQ0U7RUFDQTtFQUNBLG1CckN5OUJrQztFcUN4OUJsQztFOUJVRTtBWmtyTko7O0EwQ3ZyTkE7RUFFRTtBMUN5ck5GOztBMENyck5BO0VBQ0UsZ0JyQzZRNEI7QUwyNk05Qjs7QTBDaHJOQTtFQUNFO0ExQ21yTkY7QTBDaHJORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUNrck5KOztBMEN4cU5FO0VDL0NBLDhCRGdEcUg7RW5CM0NuSCx3Q21CMkN1QjtFQzlDekIsd0NEOENxRTtBMUM2cU52RTtBMkN6dE5FO0VBQ0U7QTNDMnROSjtBMkN4dE5FO0VBQ0U7QTNDMHROSjs7QTBDcHJORTtFQy9DQSwrQkRnRHFIO0VuQjNDbkgsMENtQjJDdUI7RUM5Q3pCLHlDRDhDcUU7QTFDeXJOdkU7QTJDcnVORTtFQUNFO0EzQ3V1Tko7QTJDcHVORTtFQUNFO0EzQ3N1Tko7O0EwQ2hzTkU7RUMvQ0EsOEJEZ0RxSDtFbkIzQ25ILDBDbUIyQ3VCO0VDOUN6Qix5Q0Q4Q3FFO0ExQ3FzTnZFO0EyQ2p2TkU7RUFDRTtBM0Ntdk5KO0EyQ2h2TkU7RUFDRTtBM0Nrdk5KOztBMEM1c05FO0VDL0NBLDRCRGdEcUg7RW5CM0NuSCx3Q21CMkN1QjtFQzlDekIsd0NEOENxRTtBMUNpdE52RTtBMkM3dk5FO0VBQ0U7QTNDK3ZOSjtBMkM1dk5FO0VBQ0U7QTNDOHZOSjs7QTBDeHRORTtFQy9DQSw0QkRnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDNnROdkU7QTJDendORTtFQUNFO0EzQzJ3Tko7QTJDeHdORTtFQUNFO0EzQzB3Tko7O0EwQ3B1TkU7RUMvQ0EsK0JEZ0RxSDtFbkIzQ25ILHdDbUIyQ3VCO0VDOUN6Qix3Q0Q4Q3FFO0ExQ3l1TnZFO0EyQ3J4TkU7RUFDRTtBM0N1eE5KO0EyQ3B4TkU7RUFDRTtBM0NzeE5KOztBMENodk5FO0VDL0NBLGlDRGdEcUg7RW5CM0NuSCx3Q21CMkN1QjtFQzlDekIsd0NEOENxRTtBMUNxdk52RTtBMkNqeU5FO0VBQ0U7QTNDbXlOSjtBMkNoeU5FO0VBQ0U7QTNDa3lOSjs7QTBDNXZORTtFQy9DQSwrQkRnRHFIO0VuQjNDbkgsMENtQjJDdUI7RUM5Q3pCLHlDRDhDcUU7QTFDaXdOdkU7QTJDN3lORTtFQUNFO0EzQyt5Tko7QTJDNXlORTtFQUNFO0EzQzh5Tko7O0EwQ3h3TkU7RUMvQ0EsK0JEZ0RxSDtFbkIzQ25ILHlCbUIyQ3VCO0VDOUN6QixzQ0Q4Q3FFO0ExQzZ3TnZFO0EyQ3p6TkU7RUFDRTtBM0Myek5KO0EyQ3h6TkU7RUFDRTtBM0Mwek5KOztBMENweE5FO0VDL0NBLGtDRGdEcUg7RW5CM0NuSCwwQ21CMkN1QjtFQzlDekIseUNEOENxRTtBMUN5eE52RTtBMkNyME5FO0VBQ0U7QTNDdTBOSjtBMkNwME5FO0VBQ0U7QTNDczBOSjs7QTBDaHlORTtFQy9DQSwrQkRnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDcXlOdkU7QTJDajFORTtFQUNFO0EzQ20xTko7QTJDaDFORTtFQUNFO0EzQ2sxTko7O0EwQzV5TkU7RUMvQ0EsK0JEZ0RxSDtFbkIzQ25ILDBDbUIyQ3VCO0VDOUN6Qix5Q0Q4Q3FFO0ExQ2l6TnZFO0EyQzcxTkU7RUFDRTtBM0MrMU5KO0EyQzUxTkU7RUFDRTtBM0M4MU5KOztBMEN4ek5FO0VDL0NBLCtCRGdEcUg7RW5CM0NuSCwwQ21CMkN1QjtFQzlDekIseUNEOENxRTtBMUM2ek52RTtBMkN6Mk5FO0VBQ0U7QTNDMjJOSjtBMkN4Mk5FO0VBQ0U7QTNDMDJOSjs7QTBDcDBORTtFQy9DQSxnQ0RnRHFIO0VuQjNDbkgsMENtQjJDdUI7RUM5Q3pCLHlDRDhDcUU7QTFDeTBOdkU7QTJDcjNORTtFQUNFO0EzQ3UzTko7QTJDcDNORTtFQUNFO0EzQ3MzTko7O0EwQ2gxTkU7RUMvQ0EsOEJEZ0RxSDtFbkIzQ25ILHdDbUIyQ3VCO0VDOUN6Qix3Q0Q4Q3FFO0ExQ3ExTnZFO0EyQ2o0TkU7RUFDRTtBM0NtNE5KO0EyQ2g0TkU7RUFDRTtBM0NrNE5KOztBMEM1MU5FO0VDL0NBLCtCRGdEcUg7RW5CM0NuSCwwQ21CMkN1QjtFQzlDekIseUNEOENxRTtBMUNpMk52RTtBMkM3NE5FO0VBQ0U7QTNDKzROSjtBMkM1NE5FO0VBQ0U7QTNDODROSjs7QTBDeDJORTtFQy9DQSxrQ0RnRHFIO0VuQjNDbkgsMENtQjJDdUI7RUM5Q3pCLHlDRDhDcUU7QTFDNjJOdkU7QTJDejVORTtFQUNFO0EzQzI1Tko7QTJDeDVORTtFQUNFO0EzQzA1Tko7O0EwQ3AzTkU7RUMvQ0EsK0JEZ0RxSDtFbkIzQ25ILDBDbUIyQ3VCO0VDOUN6Qix5Q0Q4Q3FFO0ExQ3kzTnZFO0EyQ3I2TkU7RUFDRTtBM0N1Nk5KO0EyQ3A2TkU7RUFDRTtBM0NzNk5KOztBMENoNE5FO0VDL0NBLGtDRGdEcUg7RW5CM0NuSCwwQ21CMkN1QjtFQzlDekIseUNEOENxRTtBMUNxNE52RTtBMkNqN05FO0VBQ0U7QTNDbTdOSjtBMkNoN05FO0VBQ0U7QTNDazdOSjs7QTBDNTRORTtFQy9DQSx1QkRnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLG9DRDhDcUU7QTFDaTVOdkU7QTJDNzdORTtFQUNFO0EzQys3Tko7QTJDNTdORTtFQUNFO0EzQzg3Tko7O0EwQ3g1TkU7RUMvQ0EsK0JEZ0RxSDtFbkIzQ25ILDBDbUIyQ3VCO0VDOUN6Qix5Q0Q4Q3FFO0ExQzY1TnZFO0EyQ3o4TkU7RUFDRTtBM0MyOE5KO0EyQ3g4TkU7RUFDRTtBM0MwOE5KOztBMENwNk5FO0VDL0NBLGtDRGdEcUg7RW5CM0NuSCwwQ21CMkN1QjtFQzlDekIseUNEOENxRTtBMUN5Nk52RTtBMkNyOU5FO0VBQ0U7QTNDdTlOSjtBMkNwOU5FO0VBQ0U7QTNDczlOSjs7QTBDaDdORTtFQy9DQSw4QkRnRHFIO0VuQjNDbkgsd0NtQjJDdUI7RUM5Q3pCLHdDRDhDcUU7QTFDcTdOdkU7QTJDaitORTtFQUNFO0EzQ20rTko7QTJDaCtORTtFQUNFO0EzQ2srTko7O0EwQzU3TkU7RUMvQ0EsK0JEZ0RxSDtFbkIzQ25ILDBDbUIyQ3VCO0VDOUN6Qix5Q0Q4Q3FFO0ExQ2k4TnZFO0EyQzcrTkU7RUFDRTtBM0MrK05KO0EyQzUrTkU7RUFDRTtBM0M4K05KOztBMEN4OE5FO0VDL0NBLGdDRGdEcUg7RW5CM0NuSCwwQ21CMkN1QjtFQzlDekIseUNEOENxRTtBMUM2OE52RTtBMkN6L05FO0VBQ0U7QTNDMi9OSjtBMkN4L05FO0VBQ0U7QTNDMC9OSjs7QTBDcDlORTtFQy9DQSwrQkRnRHFIO0VuQjNDbkgsMENtQjJDdUI7RUM5Q3pCLHlDRDhDcUU7QTFDeTlOdkU7QTJDcmdPRTtFQUNFO0EzQ3VnT0o7QTJDcGdPRTtFQUNFO0EzQ3NnT0o7O0EwQ2grTkU7RUMvQ0EsK0JEZ0RxSDtFbkIzQ25ILDBDbUIyQ3VCO0VDOUN6Qix5Q0Q4Q3FFO0ExQ3ErTnZFO0EyQ2poT0U7RUFDRTtBM0NtaE9KO0EyQ2hoT0U7RUFDRTtBM0NraE9KOztBMEM1K05FO0VDL0NBLGdDRGdEcUg7RW5CM0NuSCwwQ21CMkN1QjtFQzlDekIseUNEOENxRTtBMUNpL052RTtBMkM3aE9FO0VBQ0U7QTNDK2hPSjtBMkM1aE9FO0VBQ0U7QTNDOGhPSjs7QTBDeC9ORTtFQy9DQSxnQ0RnRHFIO0VuQjNDbkgsMENtQjJDdUI7RUM5Q3pCLHlDRDhDcUU7QTFDNi9OdkU7QTJDemlPRTtFQUNFO0EzQzJpT0o7QTJDeGlPRTtFQUNFO0EzQzBpT0o7O0EwQ3BnT0U7RUMvQ0EsK0JEZ0RxSDtFbkIzQ25ILDBDbUIyQ3VCO0VDOUN6Qix5Q0Q4Q3FFO0ExQ3lnT3ZFO0EyQ3JqT0U7RUFDRTtBM0N1ak9KO0EyQ3BqT0U7RUFDRTtBM0Nzak9KOztBMENoaE9FO0VDL0NBLCtCRGdEcUg7RW5CM0NuSCx3Q21CMkN1QjtFQzlDekIsc0NEOENxRTtBMUNxaE92RTtBMkNqa09FO0VBQ0U7QTNDbWtPSjtBMkNoa09FO0VBQ0U7QTNDa2tPSjs7QTBDNWhPRTtFQy9DQSxnQ0RnRHFIO0VuQjNDbkgsMENtQjJDdUI7RUM5Q3pCLHlDRDhDcUU7QTFDaWlPdkU7QTJDN2tPRTtFQUNFO0EzQytrT0o7QTJDNWtPRTtFQUNFO0EzQzhrT0o7O0E0Q3RsT0U7RUFDRTtJQUFPO0U1QzBsT1Q7RTRDemxPRTtJQUFLO0U1QzRsT1A7QUFDRjtBNEN6bE9BO0VBQ0U7RUFDQSxZdkNrK0JrQztFdUNqK0JsQztFQUNBO0V0Q3dLSTtFc0N0S0oseUJ2Q0xTO0VPU1A7QVp3bE9KOztBNEN2bE9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXdkNqQlM7RXVDa0JUO0VBQ0E7RUFDQSx5QnZDdTlCa0M7RWdCbCtCOUIsMkJ1QllKO0E1QzBsT0Y7QXFCbG1PTTtFdUJETjtJdkJFUTtFckJxbU9OO0FBQ0Y7O0E0QzVsT0E7RXJCWUU7RXFCVkE7QTVDK2xPRjs7QTRDM2xPRTtFQUNFO0E1QzhsT0o7QTRDM2xPTTtFQUpKO0lBS007RTVDOGxPTjtBQUNGOztBNkN6b09BO0VBQ0U7RUFDQTtBN0M0b09GOztBNkN6b09BO0VBQ0U7QTdDNG9PRjs7QThDOW9PQTtFQUNFO0VBQ0E7RUFHQTtFQUNBO0VsQ1FFO0Fad29PSjs7QThDdG9PQTtFQUNFO0VBQ0EsY3pDUlM7RXlDU1Q7QTlDeW9PRjtBT2hwT0U7RXVDV0U7RUFDQSxjekNkTztFeUNlUDtFQUNBLHlCekN0Qk87QUw4cE9YO0E4Q3JvT0U7RUFDRSxjekNsQk87RXlDbUJQLHlCekMxQk87QUxpcU9YOztBOEM5bk9BO0VBQ0U7RUFDQTtFQUNBO0VBR0Esc0J6QzNDUztFeUM0Q1Q7QTlDK25PRjtBOEM3bk9FO0VsQzFCRTtFQUNBO0FaMHBPSjtBOEM3bk9FO0VsQ2hCRTtFQUNBO0FaZ3BPSjtBOEM3bk9FO0VBRUUsY3pDbERPO0V5Q21EUDtFQUNBLHNCekMxRE87QUx3ck9YO0E4QzFuT0U7RUFDRTtFQUNBLFd6Q2hFTztFeUNpRVAseUJ6Q2tMMEI7RXlDakwxQixxQnpDaUwwQjtBTDI4TjlCO0E4Q3puT0U7RUFDRTtBOUMybk9KO0E4Q3puT0k7RUFDRTtFQUNBLHFCekMySndCO0FMZytOOUI7O0E4QzdtT0k7RUFDRTtBOUNnbk9OO0E4QzdtT1E7RWxDMUJKO0VBWkE7QVp1cE9KO0E4QzVtT1E7RWxDM0NKO0VBWUE7QVorb09KO0E4QzNtT1E7RUFDRTtBOUM2bU9WO0E4QzFtT1E7RUFDRSxxQnpDMEhvQjtFeUN6SHBCO0E5QzRtT1Y7QThDMW1PVTtFQUNFO0VBQ0Esc0J6Q3FIa0I7QUx1L045Qjs7QWdCdnFPSTtFOEJtQ0E7SUFDRTtFOUN3b09KO0U4Q3JvT007SWxDMUJKO0lBWkE7RVorcU9GO0U4Q3BvT007SWxDM0NKO0lBWUE7RVp1cU9GO0U4Q25vT007SUFDRTtFOUNxb09SO0U4Q2xvT007SUFDRSxxQnpDMEhvQjtJeUN6SHBCO0U5Q29vT1I7RThDbG9PUTtJQUNFO0lBQ0Esc0J6Q3FIa0I7RUwrZ081QjtBQUNGO0FnQmhzT0k7RThCbUNBO0lBQ0U7RTlDZ3FPSjtFOEM3cE9NO0lsQzFCSjtJQVpBO0VadXNPRjtFOEM1cE9NO0lsQzNDSjtJQVlBO0VaK3JPRjtFOEMzcE9NO0lBQ0U7RTlDNnBPUjtFOEMxcE9NO0lBQ0UscUJ6QzBIb0I7SXlDekhwQjtFOUM0cE9SO0U4QzFwT1E7SUFDRTtJQUNBLHNCekNxSGtCO0VMdWlPNUI7QUFDRjtBZ0J4dE9JO0U4Qm1DQTtJQUNFO0U5Q3dyT0o7RThDcnJPTTtJbEMxQko7SUFaQTtFWit0T0Y7RThDcHJPTTtJbEMzQ0o7SUFZQTtFWnV0T0Y7RThDbnJPTTtJQUNFO0U5Q3FyT1I7RThDbHJPTTtJQUNFLHFCekMwSG9CO0l5Q3pIcEI7RTlDb3JPUjtFOENsck9RO0lBQ0U7SUFDQSxzQnpDcUhrQjtFTCtqTzVCO0FBQ0Y7QWdCaHZPSTtFOEJtQ0E7SUFDRTtFOUNndE9KO0U4QzdzT007SWxDMUJKO0lBWkE7RVp1dk9GO0U4QzVzT007SWxDM0NKO0lBWUE7RVordU9GO0U4QzNzT007SUFDRTtFOUM2c09SO0U4QzFzT007SUFDRSxxQnpDMEhvQjtJeUN6SHBCO0U5QzRzT1I7RThDMXNPUTtJQUNFO0lBQ0Esc0J6Q3FIa0I7RUx1bE81QjtBQUNGO0E4Qy9yT0E7RWxDbkhJO0FacXpPSjtBOEMvck9FO0VBQ0U7QTlDaXNPSjtBOEMvck9JO0VBQ0U7QTlDaXNPTjs7QStDMTBPRTtFQUNFLDhCRG9Kc0U7RUNuSnRFLDRDRG1KdUM7QTlDMHJPM0M7QU9sME9FO0V3Q1BNLDhCRCtJa0U7RUM5SWxFO0EvQzQwT1I7QStDejBPTTtFQUNFLFcxQ1BHO0UwQ1FILHlDRHlJa0U7RUN4SWxFLHFDRHdJa0U7QTlDbXNPMUU7O0ErQ3gxT0U7RUFDRSwrQkRvSnNFO0VDbkp0RSw2Q0RtSnVDO0E5Q3dzTzNDO0FPaDFPRTtFd0NQTSwrQkQrSWtFO0VDOUlsRTtBL0MwMU9SO0ErQ3YxT007RUFDRSxXMUNQRztFMENRSCwwQ0R5SWtFO0VDeElsRSxzQ0R3SWtFO0E5Q2l0TzFFOztBK0N0Mk9FO0VBQ0UsOEJEb0pzRTtFQ25KdEUsNkNEbUp1QztBOUNzdE8zQztBTzkxT0U7RXdDUE0sOEJEK0lrRTtFQzlJbEU7QS9DdzJPUjtBK0NyMk9NO0VBQ0UsVzFDUEc7RTBDUUgseUNEeUlrRTtFQ3hJbEUscUNEd0lrRTtBOUMrdE8xRTs7QStDcDNPRTtFQUNFLDRCRG9Kc0U7RUNuSnRFLDRDRG1KdUM7QTlDb3VPM0M7QU81Mk9FO0V3Q1BNLDRCRCtJa0U7RUM5SWxFO0EvQ3MzT1I7QStDbjNPTTtFQUNFLFcxQ1BHO0UwQ1FILHVDRHlJa0U7RUN4SWxFLG1DRHdJa0U7QTlDNnVPMUU7O0ErQ2w0T0U7RUFDRSw0QkRvSnNFO0VDbkp0RSx5QkRtSnVDO0E5Q2t2TzNDO0FPMTNPRTtFd0NQTSw0QkQrSWtFO0VDOUlsRTtBL0NvNE9SO0ErQ2o0T007RUFDRSxXMUNQRztFMENRSCx1Q0R5SWtFO0VDeElsRSxtQ0R3SWtFO0E5QzJ2TzFFOztBK0NoNU9FO0VBQ0UsK0JEb0pzRTtFQ25KdEUsNENEbUp1QztBOUNnd08zQztBT3g0T0U7RXdDUE0sK0JEK0lrRTtFQzlJbEU7QS9DazVPUjtBK0MvNE9NO0VBQ0UsVzFDUEc7RTBDUUgsMENEeUlrRTtFQ3hJbEUsc0NEd0lrRTtBOUN5d08xRTs7QStDOTVPRTtFQUNFLGlDRG9Kc0U7RUNuSnRFLDRDRG1KdUM7QTlDOHdPM0M7QU90NU9FO0V3Q1BNLGlDRCtJa0U7RUM5SWxFO0EvQ2c2T1I7QStDNzVPTTtFQUNFLFcxQ1BHO0UwQ1FILDRDRHlJa0U7RUN4SWxFLHdDRHdJa0U7QTlDdXhPMUU7O0ErQzU2T0U7RUFDRSwrQkRvSnNFO0VDbkp0RSw2Q0RtSnVDO0E5QzR4TzNDO0FPcDZPRTtFd0NQTSwrQkQrSWtFO0VDOUlsRTtBL0M4Nk9SO0ErQzM2T007RUFDRSxXMUNQRztFMENRSCwwQ0R5SWtFO0VDeElsRSxzQ0R3SWtFO0E5Q3F5TzFFOztBK0MxN09FO0VBQ0UsK0JEb0pzRTtFQ25KdEUsMENEbUp1QztBOUMweU8zQztBT2w3T0U7RXdDUE0sK0JEK0lrRTtFQzlJbEU7QS9DNDdPUjtBK0N6N09NO0VBQ0UsVzFDUEc7RTBDUUgsMENEeUlrRTtFQ3hJbEUsc0NEd0lrRTtBOUNtek8xRTs7QStDeDhPRTtFQUNFLGtDRG9Kc0U7RUNuSnRFLDZDRG1KdUM7QTlDd3pPM0M7QU9oOE9FO0V3Q1BNLGtDRCtJa0U7RUM5SWxFO0EvQzA4T1I7QStDdjhPTTtFQUNFLFcxQ1BHO0UwQ1FILDZDRHlJa0U7RUN4SWxFLHlDRHdJa0U7QTlDaTBPMUU7O0ErQ3Q5T0U7RUFDRSwrQkRvSnNFO0VDbkp0RSx5QkRtSnVDO0E5Q3MwTzNDO0FPOThPRTtFd0NQTSwrQkQrSWtFO0VDOUlsRTtBL0N3OU9SO0ErQ3I5T007RUFDRSxXMUNQRztFMENRSCwwQ0R5SWtFO0VDeElsRSxzQ0R3SWtFO0E5QyswTzFFOztBK0NwK09FO0VBQ0UsK0JEb0pzRTtFQ25KdEUsNkNEbUp1QztBOUNvMU8zQztBTzU5T0U7RXdDUE0sK0JEK0lrRTtFQzlJbEU7QS9DcytPUjtBK0NuK09NO0VBQ0UsVzFDUEc7RTBDUUgsMENEeUlrRTtFQ3hJbEUsc0NEd0lrRTtBOUM2MU8xRTs7QStDbC9PRTtFQUNFLCtCRG9Kc0U7RUNuSnRFLDZDRG1KdUM7QTlDazJPM0M7QU8xK09FO0V3Q1BNLCtCRCtJa0U7RUM5SWxFO0EvQ28vT1I7QStDai9PTTtFQUNFLFcxQ1BHO0UwQ1FILDBDRHlJa0U7RUN4SWxFLHNDRHdJa0U7QTlDMjJPMUU7O0ErQ2hnUEU7RUFDRSxnQ0RvSnNFO0VDbkp0RSw2Q0RtSnVDO0E5Q2czTzNDO0FPeC9PRTtFd0NQTSxnQ0QrSWtFO0VDOUlsRTtBL0NrZ1BSO0ErQy8vT007RUFDRSxXMUNQRztFMENRSCwyQ0R5SWtFO0VDeElsRSx1Q0R3SWtFO0E5Q3kzTzFFOztBK0M5Z1BFO0VBQ0UsOEJEb0pzRTtFQ25KdEUsNENEbUp1QztBOUM4M08zQztBT3RnUEU7RXdDUE0sOEJEK0lrRTtFQzlJbEU7QS9DZ2hQUjtBK0M3Z1BNO0VBQ0UsVzFDUEc7RTBDUUgseUNEeUlrRTtFQ3hJbEUscUNEd0lrRTtBOUN1NE8xRTs7QStDNWhQRTtFQUNFLCtCRG9Kc0U7RUNuSnRFLDZDRG1KdUM7QTlDNDRPM0M7QU9waFBFO0V3Q1BNLCtCRCtJa0U7RUM5SWxFO0EvQzhoUFI7QStDM2hQTTtFQUNFLFcxQ1BHO0UwQ1FILDBDRHlJa0U7RUN4SWxFLHNDRHdJa0U7QTlDcTVPMUU7O0ErQzFpUEU7RUFDRSxrQ0RvSnNFO0VDbkp0RSw2Q0RtSnVDO0E5QzA1TzNDO0FPbGlQRTtFd0NQTSxrQ0QrSWtFO0VDOUlsRTtBL0M0aVBSO0ErQ3ppUE07RUFDRSxXMUNQRztFMENRSCw2Q0R5SWtFO0VDeElsRSx5Q0R3SWtFO0E5Q202TzFFOztBK0N4alBFO0VBQ0UsK0JEb0pzRTtFQ25KdEUsNkNEbUp1QztBOUN3Nk8zQztBT2hqUEU7RXdDUE0sK0JEK0lrRTtFQzlJbEU7QS9DMGpQUjtBK0N2alBNO0VBQ0UsVzFDUEc7RTBDUUgsMENEeUlrRTtFQ3hJbEUsc0NEd0lrRTtBOUNpN08xRTs7QStDdGtQRTtFQUNFLGtDRG9Kc0U7RUNuSnRFLDZDRG1KdUM7QTlDczdPM0M7QU85alBFO0V3Q1BNLGtDRCtJa0U7RUM5SWxFO0EvQ3drUFI7QStDcmtQTTtFQUNFLFcxQ1BHO0UwQ1FILDZDRHlJa0U7RUN4SWxFLHlDRHdJa0U7QTlDKzdPMUU7O0ErQ3BsUEU7RUFDRSx1QkRvSnNFO0VDbkp0RSx3Q0RtSnVDO0E5Q284TzNDO0FPNWtQRTtFd0NQTSx1QkQrSWtFO0VDOUlsRTtBL0NzbFBSO0ErQ25sUE07RUFDRSxXMUNQRztFMENRSCxrQ0R5SWtFO0VDeElsRSw4QkR3SWtFO0E5QzY4TzFFOztBK0NsbVBFO0VBQ0UsK0JEb0pzRTtFQ25KdEUsNkNEbUp1QztBOUNrOU8zQztBTzFsUEU7RXdDUE0sK0JEK0lrRTtFQzlJbEU7QS9Db21QUjtBK0NqbVBNO0VBQ0UsVzFDUEc7RTBDUUgsMENEeUlrRTtFQ3hJbEUsc0NEd0lrRTtBOUMyOU8xRTs7QStDaG5QRTtFQUNFLGtDRG9Kc0U7RUNuSnRFLDZDRG1KdUM7QTlDZytPM0M7QU94bVBFO0V3Q1BNLGtDRCtJa0U7RUM5SWxFO0EvQ2tuUFI7QStDL21QTTtFQUNFLFcxQ1BHO0UwQ1FILDZDRHlJa0U7RUN4SWxFLHlDRHdJa0U7QTlDeStPMUU7O0ErQzluUEU7RUFDRSw4QkRvSnNFO0VDbkp0RSw0Q0RtSnVDO0E5QzgrTzNDO0FPdG5QRTtFd0NQTSw4QkQrSWtFO0VDOUlsRTtBL0Nnb1BSO0ErQzduUE07RUFDRSxXMUNQRztFMENRSCx5Q0R5SWtFO0VDeElsRSxxQ0R3SWtFO0E5Q3UvTzFFOztBK0M1b1BFO0VBQ0UsK0JEb0pzRTtFQ25KdEUsNkNEbUp1QztBOUM0L08zQztBT3BvUEU7RXdDUE0sK0JEK0lrRTtFQzlJbEU7QS9DOG9QUjtBK0Mzb1BNO0VBQ0UsVzFDUEc7RTBDUUgsMENEeUlrRTtFQ3hJbEUsc0NEd0lrRTtBOUNxZ1AxRTs7QStDMXBQRTtFQUNFLGdDRG9Kc0U7RUNuSnRFLDZDRG1KdUM7QTlDMGdQM0M7QU9scFBFO0V3Q1BNLGdDRCtJa0U7RUM5SWxFO0EvQzRwUFI7QStDenBQTTtFQUNFLFcxQ1BHO0UwQ1FILDJDRHlJa0U7RUN4SWxFLHVDRHdJa0U7QTlDbWhQMUU7O0ErQ3hxUEU7RUFDRSwrQkRvSnNFO0VDbkp0RSw2Q0RtSnVDO0E5Q3doUDNDO0FPaHFQRTtFd0NQTSwrQkQrSWtFO0VDOUlsRTtBL0MwcVBSO0ErQ3ZxUE07RUFDRSxXMUNQRztFMENRSCwwQ0R5SWtFO0VDeElsRSxzQ0R3SWtFO0E5Q2lpUDFFOztBK0N0clBFO0VBQ0UsK0JEb0pzRTtFQ25KdEUsNkNEbUp1QztBOUNzaVAzQztBTzlxUEU7RXdDUE0sK0JEK0lrRTtFQzlJbEU7QS9Dd3JQUjtBK0NyclBNO0VBQ0UsVzFDUEc7RTBDUUgsMENEeUlrRTtFQ3hJbEUsc0NEd0lrRTtBOUMraVAxRTs7QStDcHNQRTtFQUNFLGdDRG9Kc0U7RUNuSnRFLDZDRG1KdUM7QTlDb2pQM0M7QU81clBFO0V3Q1BNLGdDRCtJa0U7RUM5SWxFO0EvQ3NzUFI7QStDbnNQTTtFQUNFLFcxQ1BHO0UwQ1FILDJDRHlJa0U7RUN4SWxFLHVDRHdJa0U7QTlDNmpQMUU7O0ErQ2x0UEU7RUFDRSxnQ0RvSnNFO0VDbkp0RSw2Q0RtSnVDO0E5Q2trUDNDO0FPMXNQRTtFd0NQTSxnQ0QrSWtFO0VDOUlsRTtBL0NvdFBSO0ErQ2p0UE07RUFDRSxXMUNQRztFMENRSCwyQ0R5SWtFO0VDeElsRSx1Q0R3SWtFO0E5QzJrUDFFOztBK0NodVBFO0VBQ0UsK0JEb0pzRTtFQ25KdEUsNkNEbUp1QztBOUNnbFAzQztBT3h0UEU7RXdDUE0sK0JEK0lrRTtFQzlJbEU7QS9Da3VQUjtBK0MvdFBNO0VBQ0UsVzFDUEc7RTBDUUgsMENEeUlrRTtFQ3hJbEUsc0NEd0lrRTtBOUN5bFAxRTs7QStDOXVQRTtFQUNFLCtCRG9Kc0U7RUNuSnRFLDBDRG1KdUM7QTlDOGxQM0M7QU90dVBFO0V3Q1BNLCtCRCtJa0U7RUM5SWxFO0EvQ2d2UFI7QStDN3VQTTtFQUNFLFcxQ1BHO0UwQ1FILDBDRHlJa0U7RUN4SWxFLHNDRHdJa0U7QTlDdW1QMUU7O0ErQzV2UEU7RUFDRSxnQ0RvSnNFO0VDbkp0RSw2Q0RtSnVDO0E5QzRtUDNDO0FPcHZQRTtFd0NQTSxnQ0QrSWtFO0VDOUlsRTtBL0M4dlBSO0ErQzN2UE07RUFDRSxXMUNQRztFMENRSCwyQ0R5SWtFO0VDeElsRSx1Q0R3SWtFO0E5Q3FuUDFFOztBZ0Q3d1BBO0VBQ0U7RTFDbUxJO0UwQ2pMSixnQjNDOFI0QjtFMkM3UjVCO0VBQ0EsVzNDWVM7RTJDWFQseUIzQ3lsQ2tDO0UyQ3hsQ2xDO0FoRGd4UEY7QU8zd1BFO0V5Q0RFLFczQ01PO0UyQ0xQO0FoRCt3UEo7QU8zd1BFO0V5Q0NJO0FoRDZ3UE47O0FnRGx3UEE7RUFDRTtFQUNBO0VBQ0E7QWhEcXdQRjs7QWdEL3ZQQTtFQUNFO0FoRGt3UEY7O0FpRHh5UEE7RUFHRSxpQjVDMjRCa0M7RTRDMTRCbEMsZ0I1QzA0QmtDO0VDMXRCOUI7RTJDN0tKLDJDNUM0NEJrQztFNEMzNEJsQztFQUNBO0VBQ0EsZ0Q1QzY0QmtDO0U0QzU0QmxDO0VyQ09FO0Faa3lQSjtBaUR0eVBFO0VBQ0Usc0I1Q2c0QmdDO0FMdzZOcEM7QWlEcnlQRTtFQUNFO0FqRHV5UEo7QWlEcHlQRTtFQUNFO0VBQ0E7QWpEc3lQSjtBaURueVBFO0VBQ0U7QWpEcXlQSjs7QWlEanlQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGM1Q3ZCUztFNEN3QlQsMkM1Q3EzQmtDO0U0Q3AzQmxDO0VBQ0E7RXJDWkU7RUFDQTtBWml6UEo7O0FpRGx5UEE7RUFDRSxnQjVDbTJCa0M7QUxrOE5wQzs7QWtEMzBQQTtFQUVFO0FsRDYwUEY7QWtEMzBQRTtFQUNFO0VBQ0E7QWxENjBQSjs7QWtEeDBQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE3QzRwQmtDO0U2QzNwQmxDO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QWxEeTBQRjs7QWtEbDBQQTtFQUNFO0VBQ0E7RUFDQSxjN0NpNUJrQztFNkMvNEJsQztBbERvMFBGO0FrRGowUEU7RTdCM0JJLG1DNkI0QkY7QWxEbTBQSjtBcUIzMVBNO0U2QnVCSjtJN0J0Qk07RXJCODFQTjtBQUNGO0FrRHowUEU7RUFFRSw4QjdDdTZCZ0M7QUxtNk5wQztBa0R4MFBFO0VBQ0UsZTdDcTZCZ0M7QUxxNk5wQztBa0R0MFBFO0VBQ0Usc0I3Q2s2QmdDO0FMczZOcEM7O0FrRHAwUEE7RUFDRTtFQUNBO0FsRHUwUEY7QWtEcjBQRTtFQUNFO0VBQ0E7QWxEdTBQSjtBa0RwMFBFOztFQUVFO0FsRHMwUEo7QWtEbjBQRTtFQUNFO0FsRHEwUEo7O0FrRGowUEE7RUFDRTtFQUNBO0VBQ0E7QWxEbzBQRjtBa0RqMFBFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxEbTBQSjtBa0QvelBFO0VBQ0U7RUFDQTtFQUNBO0FsRGkwUEo7QWtEL3pQSTtFQUNFO0FsRGkwUE47QWtEOXpQSTtFQUNFO0FsRGcwUE47O0FrRDF6UEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0Esc0I3QzNHUztFNkM0R1Q7RUFDQTtFdENsR0U7RXNDc0dGO0FsRHl6UEY7O0FrRHJ6UEE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhN0NnakJrQztFNkMvaUJsQztFQUNBO0VBQ0Esc0I3Q2xIUztBTDA2UFg7QWtEcnpQRTtFQUFTO0FsRHd6UFg7QWtEdnpQRTtFQUFTLFk3Qyt6QnlCO0FMMi9OcEM7O0FrRHJ6UEE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxrQjdDNnpCa0M7RTZDNXpCbEM7RXRDdEhFO0VBQ0E7QVorNlBKO0FrRHZ6UEU7RUFDRSxrQjdDd3pCZ0M7RTZDdHpCaEM7QWxEd3pQSjs7QWtEbnpQQTtFQUNFO0VBQ0EsZ0I3Q3VJNEI7QUwrcVA5Qjs7QWtEanpQQTtFQUNFO0VBR0E7RUFDQSxhN0Mwd0JrQztBTHdpT3BDOztBa0Q5eVBBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V0Q3pJRTtFQUNBO0FaMjdQSjtBa0Q3eVBFO0VBQ0U7QWxEK3lQSjs7QWtEMXlQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxENnlQRjs7QWdCcDdQSTtFa0M2SUY7SUFDRSxnQjdDdXdCZ0M7STZDdHdCaEM7RWxEMnlQRjtFa0R4eVBBO0lBQ0U7RWxEMHlQRjtFa0R4eVBFO0lBQ0U7RWxEMHlQSjtFa0R0eVBBO0lBQ0U7RWxEd3lQRjtFa0R0eVBFO0lBQ0U7SUFDQTtFbER3eVBKO0VrRGh5UEE7SUFBWSxnQjdDK3VCc0I7RUxvak9sQztBQUNGO0FnQjM4UEk7RWtDMktGOztJQUVFLGdCN0N1dUJnQztFTDRqT2xDO0FBQ0Y7QWdCajlQSTtFa0NrTEY7SUFBWSxpQjdDaXVCc0I7RUxra09sQztBQUNGO0FtRGpoUUE7RUFDRTtFQUNBLGE5Q2dyQmtDO0U4Qy9xQmxDO0VBQ0EsUzlDNjFCa0M7RStDajJCbEMscU4vQ29SNEI7RStDbFI1QjtFQUNBLGdCL0M0UjRCO0UrQzNSNUIsZ0IvQ2dTNEI7RStDL1I1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFOUNxS0k7RTZDektKO0VBQ0E7QW5ENmhRRjtBbUQzaFFFO0VBQVMsWTlDaTFCeUI7QUw2c09wQztBbUQ1aFFFO0VBQ0U7RUFDQTtFQUNBLGE5Q2kxQmdDO0U4Q2gxQmhDLGM5Q2kxQmdDO0FMNnNPcEM7QW1ENWhRSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuRDhoUU47O0FtRHpoUUE7RUFDRTtBbkQ0aFFGO0FtRDFoUUU7RUFDRTtBbkQ0aFFKO0FtRDFoUUk7RUFDRTtFQUNBO0VBQ0Esc0I5Q3ZCSztBTG1qUVg7O0FtRHZoUUE7RUFDRTtBbkQwaFFGO0FtRHhoUUU7RUFDRTtFQUNBLGE5Q216QmdDO0U4Q2x6QmhDLGM5Q2l6QmdDO0FMeXVPcEM7QW1EeGhRSTtFQUNFO0VBQ0E7RUFDQSx3QjlDdkNLO0FMaWtRWDs7QW1EcmhRQTtFQUNFO0FuRHdoUUY7QW1EdGhRRTtFQUNFO0FuRHdoUUo7QW1EdGhRSTtFQUNFO0VBQ0E7RUFDQSx5QjlDckRLO0FMNmtRWDs7QW1EbmhRQTtFQUNFO0FuRHNoUUY7QW1EcGhRRTtFQUNFO0VBQ0EsYTlDcXhCZ0M7RThDcHhCaEMsYzlDbXhCZ0M7QUxtd09wQztBbURwaFFJO0VBQ0U7RUFDQTtFQUNBLHVCOUNyRUs7QUwybFFYOztBbURqZ1FBO0VBQ0UsZ0I5Qyt1QmtDO0U4Qzl1QmxDO0VBQ0EsVzlDdkdTO0U4Q3dHVDtFQUNBLHNCOUMvRlM7RU9DUDtBWm1tUUo7O0FxRHJuUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhaEQ4cUJrQztFZ0Q3cUJsQztFQUNBLGdCaEQrMkJrQztFK0NwM0JsQyxxTi9Db1I0QjtFK0NsUjVCO0VBQ0EsZ0IvQzRSNEI7RStDM1I1QixnQi9DZ1M0QjtFK0MvUjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U5Q3FLSTtFK0N4S0o7RUFDQSxzQmhETlM7RWdET1Q7RUFDQTtFekNHRTtBWmdvUUo7QXFEL25RRTtFQUNFO0VBQ0E7RUFDQSxXaEQrMkJnQztFZ0Q5MkJoQyxjaEQrMkJnQztFZ0Q5MkJoQztBckRpb1FKO0FxRC9uUUk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRGdvUU47O0FxRDNuUUE7RUFDRSxxQmhEZzJCa0M7QUw4eE9wQztBcUQ1blFFO0VBQ0U7QXJEOG5RSjtBcUQ1blFJO0VBQ0U7RUFDQTtFQUNBLHFDaEQyMUI4QjtBTG15T3BDO0FxRDNuUUk7RUFDRSxXaEQwTHdCO0VnRHpMeEI7RUFDQSxzQmhEN0NLO0FMMHFRWDs7QXFEeG5RQTtFQUNFLG1CaEQ0MEJrQztBTCt5T3BDO0FxRHpuUUU7RUFDRTtFQUNBLGFoRHcwQmdDO0VnRHYwQmhDLFloRHMwQmdDO0VnRHIwQmhDO0FyRDJuUUo7QXFEem5RSTtFQUNFO0VBQ0E7RUFDQSx1Q2hEbzBCOEI7QUx1ek9wQztBcUR4blFJO0VBQ0UsU2hEbUt3QjtFZ0RsS3hCO0VBQ0Esd0JoRHBFSztBTDhyUVg7O0FxRHJuUUE7RUFDRSxrQmhEcXpCa0M7QUxtME9wQztBcUR0blFFO0VBQ0U7QXJEd25RSjtBcUR0blFJO0VBQ0U7RUFDQTtFQUNBLHdDaERnekI4QjtBTHcwT3BDO0FxRHJuUUk7RUFDRSxRaEQrSXdCO0VnRDlJeEI7RUFDQSx5QmhEeEZLO0FMK3NRWDtBcURsblFFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXaEQ0eEJnQztFZ0QzeEJoQztFQUNBO0VBQ0E7QXJEb25RSjs7QXFEaG5RQTtFQUNFLG9CaERxeEJrQztBTDgxT3BDO0FxRGpuUUU7RUFDRTtFQUNBLGFoRGl4QmdDO0VnRGh4QmhDLFloRCt3QmdDO0VnRDl3QmhDO0FyRG1uUUo7QXFEam5RSTtFQUNFO0VBQ0E7RUFDQSxzQ2hENndCOEI7QUxzMk9wQztBcURoblFJO0VBQ0UsVWhENEd3QjtFZ0QzR3hCO0VBQ0EsdUJoRDNISztBTDZ1UVg7O0FxRDVsUUE7RUFDRTtFQUNBO0UvQzBCSTtFK0N2QkosNkNoRCt0QmtDO0VnRDl0QmxDO0V6Q25JRTtFQUNBO0Faa3VRSjtBcUQ3bFFFO0VBQ0U7QXJEK2xRSjs7QXFEM2xRQTtFQUNFO0VBQ0EsY2hEeEpTO0FMc3ZRWDs7QXNEenZRQTtFQUNFO0F0RDR2UUY7O0FzRHp2UUE7RUFDRTtBdEQ0dlFGOztBc0R6dlFBO0VBQ0U7RUFDQTtFQUNBO0F0RDR2UUY7QXVEbnhRRTtFQUNFO0VBQ0E7RUFDQTtBdkRxeFFKOztBc0Q3dlFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQ2xCSSxzQ2lDbUJKO0F0RGd3UUY7QXFCL3dRTTtFaUNRTjtJakNQUTtFckJreFFOO0FBQ0Y7O0FzRGx3UUE7OztFQUdFO0F0RHF3UUY7O0FzRGx3UUE7O0VBRUU7QXREcXdRRjs7QXNEbHdRQTs7RUFFRTtBdERxd1FGOztBc0Q1dlFFO0VBQ0U7RUFDQTtFQUNBO0F0RCt2UUo7QXNENXZRRTs7O0VBR0U7RUFDQTtBdEQ4dlFKO0FzRDN2UUU7O0VBRUU7RUFDQTtFakM1REUsMkJpQzZERjtBdEQ2dlFKO0FxQnR6UU07RWlDcURKOztJakNwRE07RXJCMHpRTjtBQUNGOztBc0QxdlFBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsVWpEczlCbUM7RWlEcjlCbkM7RUFDQSxXakQzRlM7RWlENEZUO0VBQ0E7RUFDQTtFQUNBLFlqRGk5Qm1DO0VnQnZpQy9CLDhCaUN1Rko7QXRENHZRRjtBcUIvMFFNO0VpQ2tFTjs7SWpDakVRO0VyQm0xUU47QUFDRjtBT3oxUUU7OztFK0MyRkUsV2pEcEdPO0VpRHFHUDtFQUNBO0VBQ0EsWWpEMDhCaUM7QUx5ek9yQzs7QXNEaHdRQTtFQUNFO0F0RG13UUY7O0FzRDl2UUE7RUFDRTtBdERpd1FGOztBc0QxdlFBOztFQUVFO0VBQ0EsV2pEbThCbUM7RWlEbDhCbkMsWWpEazhCbUM7RWlEajhCbkM7QXRENnZRRjs7QXNEM3ZRQTtFQUNFO0F0RDh2UUY7O0FzRDV2UUE7RUFDRTtBdEQrdlFGOztBc0R0dlFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLGlCakR5NUJtQztFaUR4NUJuQyxnQmpEdzVCbUM7RWlEdjVCbkM7QXREd3ZRRjtBc0R0dlFFO0VBQ0U7RUFDQTtFQUNBLFdqRHU1QmlDO0VpRHQ1QmpDLFdqRHU1QmlDO0VpRHQ1QmpDLGlCakR3NUJpQztFaUR2NUJqQyxnQmpEdTVCaUM7RWlEdDVCakM7RUFDQTtFQUNBLHNCakRuS087RWlEb0tQO0VBRUE7RUFDQTtFQUNBO0VqQy9KRSw2QmlDZ0tGO0F0RHV2UUo7QXFCbjVRTTtFaUM2SUo7SWpDNUlNO0VyQnM1UU47QUFDRjtBc0R6dlFFO0VBQ0U7QXREMnZRSjs7QXNEbHZRQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV2pEOUxTO0VpRCtMVDtBdERxdlFGOztBd0R2N1FBO0VBQ0U7SUFBSztFeEQyN1FMO0FBQ0Y7QXdEejdRQTtFQUNFO0VBQ0EsV25Ec2tDd0I7RW1EcmtDeEIsWW5EcWtDd0I7RW1EcGtDeEIsd0JuRHNrQ3dCO0VtRHJrQ3hCO0VBQ0E7RUFFQTtFQUNBO0F4RDA3UUY7O0F3RHY3UUE7RUFDRSxXbkRna0N3QjtFbUQvakN4QixZbkQrakN3QjtFbUQ5akN4QixtQm5EZ2tDd0I7QUwwM08xQjs7QXdEbjdRQTtFQUNFO0lBQ0U7RXhEczdRRjtFd0RwN1FBO0lBQ0U7SUFDQTtFeERzN1FGO0FBQ0Y7QXdEbjdRQTtFQUNFO0VBQ0EsV25Ec2lDd0I7RW1EcmlDeEIsWW5EcWlDd0I7RW1EcGlDeEIsd0JuRHNpQ3dCO0VtRHJpQ3hCO0VBRUE7RUFDQTtFQUNBO0F4RG83UUY7O0F3RGo3UUE7RUFDRSxXbkRnaUN3QjtFbUQvaEN4QixZbkQraEN3QjtBTHE1TzFCOztBd0RoN1FFO0VBQ0U7O0lBRUU7RXhEbTdRSjtBQUNGO0F5RC8rUUE7RUFBcUI7QXpEay9RckI7O0F5RGovUUE7RUFBcUI7QXpEcS9RckI7O0F5RHAvUUE7RUFBcUI7QXpEdy9RckI7O0F5RHYvUUE7RUFBcUI7QXpEMi9RckI7O0F5RDEvUUE7RUFBcUI7QXpEOC9RckI7O0F5RDcvUUE7RUFBcUI7QXpEaWdSckI7O0EwRG5nUkU7RUFDRTtBMURzZ1JKOztBTzUvUUU7OztFbURMSTtBMUR1Z1JOOztBMEQ3Z1JFO0VBQ0U7QTFEZ2hSSjs7QU90Z1JFOzs7RW1ETEk7QTFEaWhSTjs7QTBEdmhSRTtFQUNFO0ExRDBoUko7O0FPaGhSRTs7O0VtRExJO0ExRDJoUk47O0EwRGppUkU7RUFDRTtBMURvaVJKOztBTzFoUkU7OztFbURMSTtBMURxaVJOOztBMEQzaVJFO0VBQ0U7QTFEOGlSSjs7QU9waVJFOzs7RW1ETEk7QTFEK2lSTjs7QTBEcmpSRTtFQUNFO0ExRHdqUko7O0FPOWlSRTs7O0VtRExJO0ExRHlqUk47O0EwRC9qUkU7RUFDRTtBMURra1JKOztBT3hqUkU7OztFbURMSTtBMURta1JOOztBMER6a1JFO0VBQ0U7QTFENGtSSjs7QU9sa1JFOzs7RW1ETEk7QTFENmtSTjs7QTBEbmxSRTtFQUNFO0ExRHNsUko7O0FPNWtSRTs7O0VtRExJO0ExRHVsUk47O0EwRDdsUkU7RUFDRTtBMURnbVJKOztBT3RsUkU7OztFbURMSTtBMURpbVJOOztBMER2bVJFO0VBQ0U7QTFEMG1SSjs7QU9obVJFOzs7RW1ETEk7QTFEMm1STjs7QTBEam5SRTtFQUNFO0ExRG9uUko7O0FPMW1SRTs7O0VtRExJO0ExRHFuUk47O0EwRDNuUkU7RUFDRTtBMUQ4blJKOztBT3BuUkU7OztFbURMSTtBMUQrblJOOztBMERyb1JFO0VBQ0U7QTFEd29SSjs7QU85blJFOzs7RW1ETEk7QTFEeW9STjs7QTBEL29SRTtFQUNFO0ExRGtwUko7O0FPeG9SRTs7O0VtRExJO0ExRG1wUk47O0EwRHpwUkU7RUFDRTtBMUQ0cFJKOztBT2xwUkU7OztFbURMSTtBMUQ2cFJOOztBMERucVJFO0VBQ0U7QTFEc3FSSjs7QU81cFJFOzs7RW1ETEk7QTFEdXFSTjs7QTBEN3FSRTtFQUNFO0ExRGdyUko7O0FPdHFSRTs7O0VtRExJO0ExRGlyUk47O0EwRHZyUkU7RUFDRTtBMUQwclJKOztBT2hyUkU7OztFbURMSTtBMUQyclJOOztBMERqc1JFO0VBQ0U7QTFEb3NSSjs7QU8xclJFOzs7RW1ETEk7QTFEcXNSTjs7QTBEM3NSRTtFQUNFO0ExRDhzUko7O0FPcHNSRTs7O0VtRExJO0ExRCtzUk47O0EwRHJ0UkU7RUFDRTtBMUR3dFJKOztBTzlzUkU7OztFbURMSTtBMUR5dFJOOztBMEQvdFJFO0VBQ0U7QTFEa3VSSjs7QU94dFJFOzs7RW1ETEk7QTFEbXVSTjs7QTBEenVSRTtFQUNFO0ExRDR1Uko7O0FPbHVSRTs7O0VtRExJO0ExRDZ1Uk47O0EwRG52UkU7RUFDRTtBMURzdlJKOztBTzV1UkU7OztFbURMSTtBMUR1dlJOOztBMEQ3dlJFO0VBQ0U7QTFEZ3dSSjs7QU90dlJFOzs7RW1ETEk7QTFEaXdSTjs7QTBEdndSRTtFQUNFO0ExRDB3Uko7O0FPaHdSRTs7O0VtRExJO0ExRDJ3Uk47O0EwRGp4UkU7RUFDRTtBMURveFJKOztBTzF3UkU7OztFbURMSTtBMURxeFJOOztBMEQzeFJFO0VBQ0U7QTFEOHhSSjs7QU9weFJFOzs7RW1ETEk7QTFEK3hSTjs7QTBEcnlSRTtFQUNFO0ExRHd5Uko7O0FPOXhSRTs7O0VtRExJO0ExRHl5Uk47O0EwRC95UkU7RUFDRTtBMURrelJKOztBT3h5UkU7OztFbURMSTtBMURtelJOOztBMER6elJFO0VBQ0U7QTFENHpSSjs7QU9selJFOzs7RW1ETEk7QTFENnpSTjs7QTJENXpSQTtFQUNFO0EzRCt6UkY7O0EyRDV6UkE7RUFDRTtBM0QrelJGOztBNEQxMFJBO0VBQWtCO0E1RDgwUmxCOztBNEQ3MFJBO0VBQWtCO0E1RGkxUmxCOztBNERoMVJBO0VBQWtCO0E1RG8xUmxCOztBNERuMVJBO0VBQWtCO0E1RHUxUmxCOztBNER0MVJBO0VBQWtCO0E1RDAxUmxCOztBNER4MVJBO0VBQW1CO0E1RDQxUm5COztBNEQzMVJBO0VBQW1CO0E1RCsxUm5COztBNEQ5MVJBO0VBQW1CO0E1RGsyUm5COztBNERqMlJBO0VBQW1CO0E1RHEyUm5COztBNERwMlJBO0VBQW1CO0E1RHcyUm5COztBNERyMlJFO0VBQ0U7QTVEdzJSSjs7QTREejJSRTtFQUNFO0E1RDQyUko7O0E0RDcyUkU7RUFDRTtBNURnM1JKOztBNERqM1JFO0VBQ0U7QTVEbzNSSjs7QTREcjNSRTtFQUNFO0E1RHczUko7O0E0RHozUkU7RUFDRTtBNUQ0M1JKOztBNEQ3M1JFO0VBQ0U7QTVEZzRSSjs7QTREajRSRTtFQUNFO0E1RG80Uko7O0E0RHI0UkU7RUFDRTtBNUR3NFJKOztBNER6NFJFO0VBQ0U7QTVENDRSSjs7QTRENzRSRTtFQUNFO0E1RGc1Uko7O0E0RGo1UkU7RUFDRTtBNURvNVJKOztBNERyNVJFO0VBQ0U7QTVEdzVSSjs7QTREejVSRTtFQUNFO0E1RDQ1Uko7O0E0RDc1UkU7RUFDRTtBNURnNlJKOztBNERqNlJFO0VBQ0U7QTVEbzZSSjs7QTREcjZSRTtFQUNFO0E1RHc2Uko7O0E0RHo2UkU7RUFDRTtBNUQ0NlJKOztBNEQ3NlJFO0VBQ0U7QTVEZzdSSjs7QTREajdSRTtFQUNFO0E1RG83Uko7O0E0RHI3UkU7RUFDRTtBNUR3N1JKOztBNER6N1JFO0VBQ0U7QTVENDdSSjs7QTRENzdSRTtFQUNFO0E1RGc4Uko7O0E0RGo4UkU7RUFDRTtBNURvOFJKOztBNERyOFJFO0VBQ0U7QTVEdzhSSjs7QTREejhSRTtFQUNFO0E1RDQ4Uko7O0E0RDc4UkU7RUFDRTtBNURnOVJKOztBNERqOVJFO0VBQ0U7QTVEbzlSSjs7QTREcjlSRTtFQUNFO0E1RHc5Uko7O0E0RHo5UkU7RUFDRTtBNUQ0OVJKOztBNEQ3OVJFO0VBQ0U7QTVEZytSSjs7QTREaitSRTtFQUNFO0E1RG8rUko7O0E0RGgrUkE7RUFDRTtBNURtK1JGOztBNEQ1OVJBO0VBQ0U7QTVEKzlSRjs7QTRENTlSQTtFQUNFO0E1RCs5UkY7O0E0RDU5UkE7RUFDRTtFQUNBO0E1RCs5UkY7O0E0RDU5UkE7RUFDRTtFQUNBO0E1RCs5UkY7O0E0RDU5UkE7RUFDRTtFQUNBO0E1RCs5UkY7O0E0RDU5UkE7RUFDRTtFQUNBO0E1RCs5UkY7O0E0RDU5UkE7RUFDRTtBNUQrOVJGOztBNEQ1OVJBO0VBQ0U7QTVEKzlSRjs7QTRENTlSQTtFQUNFO0E1RCs5UkY7O0E0RDU5UkE7RUFDRTtBNUQrOVJGOztBdUR2aVNFO0VBQ0U7RUFDQTtFQUNBO0F2RDBpU0o7O0E2RG5pU007RUFBd0I7QTdEdWlTOUI7O0E2RHZpU007RUFBd0I7QTdEMmlTOUI7O0E2RDNpU007RUFBd0I7QTdEK2lTOUI7O0E2RC9pU007RUFBd0I7QTdEbWpTOUI7O0E2RG5qU007RUFBd0I7QTdEdWpTOUI7O0E2RHZqU007RUFBd0I7QTdEMmpTOUI7O0E2RDNqU007RUFBd0I7QTdEK2pTOUI7O0E2RC9qU007RUFBd0I7QTdEbWtTOUI7O0E2RG5rU007RUFBd0I7QTdEdWtTOUI7O0FnQnRoU0k7RTZDakRFO0lBQXdCO0U3RDRrUzVCO0U2RDVrU0k7SUFBd0I7RTdEK2tTNUI7RTZEL2tTSTtJQUF3QjtFN0RrbFM1QjtFNkRsbFNJO0lBQXdCO0U3RHFsUzVCO0U2RHJsU0k7SUFBd0I7RTdEd2xTNUI7RTZEeGxTSTtJQUF3QjtFN0QybFM1QjtFNkQzbFNJO0lBQXdCO0U3RDhsUzVCO0U2RDlsU0k7SUFBd0I7RTdEaW1TNUI7RTZEam1TSTtJQUF3QjtFN0RvbVM1QjtBQUNGO0FnQnBqU0k7RTZDakRFO0lBQXdCO0U3RHltUzVCO0U2RHptU0k7SUFBd0I7RTdENG1TNUI7RTZENW1TSTtJQUF3QjtFN0QrbVM1QjtFNkQvbVNJO0lBQXdCO0U3RGtuUzVCO0U2RGxuU0k7SUFBd0I7RTdEcW5TNUI7RTZEcm5TSTtJQUF3QjtFN0R3blM1QjtFNkR4blNJO0lBQXdCO0U3RDJuUzVCO0U2RDNuU0k7SUFBd0I7RTdEOG5TNUI7RTZEOW5TSTtJQUF3QjtFN0Rpb1M1QjtBQUNGO0FnQmpsU0k7RTZDakRFO0lBQXdCO0U3RHNvUzVCO0U2RHRvU0k7SUFBd0I7RTdEeW9TNUI7RTZEem9TSTtJQUF3QjtFN0Q0b1M1QjtFNkQ1b1NJO0lBQXdCO0U3RCtvUzVCO0U2RC9vU0k7SUFBd0I7RTdEa3BTNUI7RTZEbHBTSTtJQUF3QjtFN0RxcFM1QjtFNkRycFNJO0lBQXdCO0U3RHdwUzVCO0U2RHhwU0k7SUFBd0I7RTdEMnBTNUI7RTZEM3BTSTtJQUF3QjtFN0Q4cFM1QjtBQUNGO0FnQjltU0k7RTZDakRFO0lBQXdCO0U3RG1xUzVCO0U2RG5xU0k7SUFBd0I7RTdEc3FTNUI7RTZEdHFTSTtJQUF3QjtFN0R5cVM1QjtFNkR6cVNJO0lBQXdCO0U3RDRxUzVCO0U2RDVxU0k7SUFBd0I7RTdEK3FTNUI7RTZEL3FTSTtJQUF3QjtFN0RrclM1QjtFNkRsclNJO0lBQXdCO0U3RHFyUzVCO0U2RHJyU0k7SUFBd0I7RTdEd3JTNUI7RTZEeHJTSTtJQUF3QjtFN0QyclM1QjtBQUNGO0E2RGxyU0E7RUFFSTtJQUFxQjtFN0RvclN2QjtFNkRwclNFO0lBQXFCO0U3RHVyU3ZCO0U2RHZyU0U7SUFBcUI7RTdEMHJTdkI7RTZEMXJTRTtJQUFxQjtFN0Q2clN2QjtFNkQ3clNFO0lBQXFCO0U3RGdzU3ZCO0U2RGhzU0U7SUFBcUI7RTdEbXNTdkI7RTZEbnNTRTtJQUFxQjtFN0Rzc1N2QjtFNkR0c1NFO0lBQXFCO0U3RHlzU3ZCO0U2RHpzU0U7SUFBcUI7RTdENHNTdkI7QUFDRjtBOERsdVNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOURvdVNGO0E4RGx1U0U7RUFDRTtFQUNBO0E5RG91U0o7QThEanVTRTs7Ozs7RUFLRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOURtdVNKOztBOEQxdFNJO0VBQ0U7QTlENnRTTjs7QThEOXRTSTtFQUNFO0E5RGl1U047O0E4RGx1U0k7RUFDRTtBOURxdVNOOztBOER0dVNJO0VBQ0U7QTlEeXVTTjs7QStEbHdTSTtFQUFnQztBL0Rzd1NwQzs7QStEcndTSTtFQUFnQztBL0R5d1NwQzs7QStEeHdTSTtFQUFnQztBL0Q0d1NwQzs7QStEM3dTSTtFQUFnQztBL0Qrd1NwQzs7QStEN3dTSTtFQUE4QjtBL0RpeFNsQzs7QStEaHhTSTtFQUE4QjtBL0RveFNsQzs7QStEbnhTSTtFQUE4QjtBL0R1eFNsQzs7QStEdHhTSTtFQUE4QjtBL0QweFNsQzs7QStEenhTSTtFQUE4QjtBL0Q2eFNsQzs7QStENXhTSTtFQUE4QjtBL0RneVNsQzs7QStEL3hTSTtFQUE4QjtBL0RteVNsQzs7QStEbHlTSTtFQUE4QjtBL0RzeVNsQzs7QStEcHlTSTtFQUFvQztBL0R3eVN4Qzs7QStEdnlTSTtFQUFvQztBL0QyeVN4Qzs7QStEMXlTSTtFQUFvQztBL0Q4eVN4Qzs7QStEN3lTSTtFQUFvQztBL0RpelN4Qzs7QStEaHpTSTtFQUFvQztBL0RvelN4Qzs7QStEbHpTSTtFQUFpQztBL0RzelNyQzs7QStEcnpTSTtFQUFpQztBL0R5elNyQzs7QStEeHpTSTtFQUFpQztBL0Q0elNyQzs7QStEM3pTSTtFQUFpQztBL0QrelNyQzs7QStEOXpTSTtFQUFpQztBL0RrMFNyQzs7QStEaDBTSTtFQUFrQztBL0RvMFN0Qzs7QStEbjBTSTtFQUFrQztBL0R1MFN0Qzs7QStEdDBTSTtFQUFrQztBL0QwMFN0Qzs7QStEejBTSTtFQUFrQztBL0Q2MFN0Qzs7QStENTBTSTtFQUFrQztBL0RnMVN0Qzs7QStELzBTSTtFQUFrQztBL0RtMVN0Qzs7QStEajFTSTtFQUFnQztBL0RxMVNwQzs7QStEcDFTSTtFQUFnQztBL0R3MVNwQzs7QStEdjFTSTtFQUFnQztBL0QyMVNwQzs7QStEMTFTSTtFQUFnQztBL0Q4MVNwQzs7QStENzFTSTtFQUFnQztBL0RpMlNwQzs7QStEaDJTSTtFQUFnQztBL0RvMlNwQzs7QWdCeDFTSTtFK0NsREE7SUFBZ0M7RS9EKzRTbEM7RStEOTRTRTtJQUFnQztFL0RpNVNsQztFK0RoNVNFO0lBQWdDO0UvRG01U2xDO0UrRGw1U0U7SUFBZ0M7RS9EcTVTbEM7RStEbjVTRTtJQUE4QjtFL0RzNVNoQztFK0RyNVNFO0lBQThCO0UvRHc1U2hDO0UrRHY1U0U7SUFBOEI7RS9EMDVTaEM7RStEejVTRTtJQUE4QjtFL0Q0NVNoQztFK0QzNVNFO0lBQThCO0UvRDg1U2hDO0UrRDc1U0U7SUFBOEI7RS9EZzZTaEM7RStELzVTRTtJQUE4QjtFL0RrNlNoQztFK0RqNlNFO0lBQThCO0UvRG82U2hDO0UrRGw2U0U7SUFBb0M7RS9EcTZTdEM7RStEcDZTRTtJQUFvQztFL0R1NlN0QztFK0R0NlNFO0lBQW9DO0UvRHk2U3RDO0UrRHg2U0U7SUFBb0M7RS9EMjZTdEM7RStEMTZTRTtJQUFvQztFL0Q2NlN0QztFK0QzNlNFO0lBQWlDO0UvRDg2U25DO0UrRDc2U0U7SUFBaUM7RS9EZzdTbkM7RStELzZTRTtJQUFpQztFL0RrN1NuQztFK0RqN1NFO0lBQWlDO0UvRG83U25DO0UrRG43U0U7SUFBaUM7RS9EczdTbkM7RStEcDdTRTtJQUFrQztFL0R1N1NwQztFK0R0N1NFO0lBQWtDO0UvRHk3U3BDO0UrRHg3U0U7SUFBa0M7RS9EMjdTcEM7RStEMTdTRTtJQUFrQztFL0Q2N1NwQztFK0Q1N1NFO0lBQWtDO0UvRCs3U3BDO0UrRDk3U0U7SUFBa0M7RS9EaThTcEM7RStELzdTRTtJQUFnQztFL0RrOFNsQztFK0RqOFNFO0lBQWdDO0UvRG84U2xDO0UrRG44U0U7SUFBZ0M7RS9EczhTbEM7RStEcjhTRTtJQUFnQztFL0R3OFNsQztFK0R2OFNFO0lBQWdDO0UvRDA4U2xDO0UrRHo4U0U7SUFBZ0M7RS9ENDhTbEM7QUFDRjtBZ0JqOFNJO0UrQ2xEQTtJQUFnQztFL0R1L1NsQztFK0R0L1NFO0lBQWdDO0UvRHkvU2xDO0UrRHgvU0U7SUFBZ0M7RS9EMi9TbEM7RStEMS9TRTtJQUFnQztFL0Q2L1NsQztFK0QzL1NFO0lBQThCO0UvRDgvU2hDO0UrRDcvU0U7SUFBOEI7RS9EZ2dUaEM7RStELy9TRTtJQUE4QjtFL0RrZ1RoQztFK0RqZ1RFO0lBQThCO0UvRG9nVGhDO0UrRG5nVEU7SUFBOEI7RS9Ec2dUaEM7RStEcmdURTtJQUE4QjtFL0R3Z1RoQztFK0R2Z1RFO0lBQThCO0UvRDBnVGhDO0UrRHpnVEU7SUFBOEI7RS9ENGdUaEM7RStEMWdURTtJQUFvQztFL0Q2Z1R0QztFK0Q1Z1RFO0lBQW9DO0UvRCtnVHRDO0UrRDlnVEU7SUFBb0M7RS9EaWhUdEM7RStEaGhURTtJQUFvQztFL0RtaFR0QztFK0RsaFRFO0lBQW9DO0UvRHFoVHRDO0UrRG5oVEU7SUFBaUM7RS9Ec2hUbkM7RStEcmhURTtJQUFpQztFL0R3aFRuQztFK0R2aFRFO0lBQWlDO0UvRDBoVG5DO0UrRHpoVEU7SUFBaUM7RS9ENGhUbkM7RStEM2hURTtJQUFpQztFL0Q4aFRuQztFK0Q1aFRFO0lBQWtDO0UvRCtoVHBDO0UrRDloVEU7SUFBa0M7RS9EaWlUcEM7RStEaGlURTtJQUFrQztFL0RtaVRwQztFK0RsaVRFO0lBQWtDO0UvRHFpVHBDO0UrRHBpVEU7SUFBa0M7RS9EdWlUcEM7RStEdGlURTtJQUFrQztFL0R5aVRwQztFK0R2aVRFO0lBQWdDO0UvRDBpVGxDO0UrRHppVEU7SUFBZ0M7RS9ENGlUbEM7RStEM2lURTtJQUFnQztFL0Q4aVRsQztFK0Q3aVRFO0lBQWdDO0UvRGdqVGxDO0UrRC9pVEU7SUFBZ0M7RS9Ea2pUbEM7RStEampURTtJQUFnQztFL0RvalRsQztBQUNGO0FnQnppVEk7RStDbERBO0lBQWdDO0UvRCtsVGxDO0UrRDlsVEU7SUFBZ0M7RS9EaW1UbEM7RStEaG1URTtJQUFnQztFL0RtbVRsQztFK0RsbVRFO0lBQWdDO0UvRHFtVGxDO0UrRG5tVEU7SUFBOEI7RS9Ec21UaEM7RStEcm1URTtJQUE4QjtFL0R3bVRoQztFK0R2bVRFO0lBQThCO0UvRDBtVGhDO0UrRHptVEU7SUFBOEI7RS9ENG1UaEM7RStEM21URTtJQUE4QjtFL0Q4bVRoQztFK0Q3bVRFO0lBQThCO0UvRGduVGhDO0UrRC9tVEU7SUFBOEI7RS9Ea25UaEM7RStEam5URTtJQUE4QjtFL0RvblRoQztFK0RsblRFO0lBQW9DO0UvRHFuVHRDO0UrRHBuVEU7SUFBb0M7RS9EdW5UdEM7RStEdG5URTtJQUFvQztFL0R5blR0QztFK0R4blRFO0lBQW9DO0UvRDJuVHRDO0UrRDFuVEU7SUFBb0M7RS9ENm5UdEM7RStEM25URTtJQUFpQztFL0Q4blRuQztFK0Q3blRFO0lBQWlDO0UvRGdvVG5DO0UrRC9uVEU7SUFBaUM7RS9Ea29UbkM7RStEam9URTtJQUFpQztFL0Rvb1RuQztFK0Rub1RFO0lBQWlDO0UvRHNvVG5DO0UrRHBvVEU7SUFBa0M7RS9EdW9UcEM7RStEdG9URTtJQUFrQztFL0R5b1RwQztFK0R4b1RFO0lBQWtDO0UvRDJvVHBDO0UrRDFvVEU7SUFBa0M7RS9ENm9UcEM7RStENW9URTtJQUFrQztFL0Qrb1RwQztFK0Q5b1RFO0lBQWtDO0UvRGlwVHBDO0UrRC9vVEU7SUFBZ0M7RS9Ea3BUbEM7RStEanBURTtJQUFnQztFL0RvcFRsQztFK0RucFRFO0lBQWdDO0UvRHNwVGxDO0UrRHJwVEU7SUFBZ0M7RS9Ed3BUbEM7RStEdnBURTtJQUFnQztFL0QwcFRsQztFK0R6cFRFO0lBQWdDO0UvRDRwVGxDO0FBQ0Y7QWdCanBUSTtFK0NsREE7SUFBZ0M7RS9EdXNUbEM7RStEdHNURTtJQUFnQztFL0R5c1RsQztFK0R4c1RFO0lBQWdDO0UvRDJzVGxDO0UrRDFzVEU7SUFBZ0M7RS9ENnNUbEM7RStEM3NURTtJQUE4QjtFL0Q4c1RoQztFK0Q3c1RFO0lBQThCO0UvRGd0VGhDO0UrRC9zVEU7SUFBOEI7RS9Ea3RUaEM7RStEanRURTtJQUE4QjtFL0RvdFRoQztFK0RudFRFO0lBQThCO0UvRHN0VGhDO0UrRHJ0VEU7SUFBOEI7RS9Ed3RUaEM7RStEdnRURTtJQUE4QjtFL0QwdFRoQztFK0R6dFRFO0lBQThCO0UvRDR0VGhDO0UrRDF0VEU7SUFBb0M7RS9ENnRUdEM7RStENXRURTtJQUFvQztFL0QrdFR0QztFK0Q5dFRFO0lBQW9DO0UvRGl1VHRDO0UrRGh1VEU7SUFBb0M7RS9EbXVUdEM7RStEbHVURTtJQUFvQztFL0RxdVR0QztFK0RudVRFO0lBQWlDO0UvRHN1VG5DO0UrRHJ1VEU7SUFBaUM7RS9Ed3VUbkM7RStEdnVURTtJQUFpQztFL0QwdVRuQztFK0R6dVRFO0lBQWlDO0UvRDR1VG5DO0UrRDN1VEU7SUFBaUM7RS9EOHVUbkM7RStENXVURTtJQUFrQztFL0QrdVRwQztFK0Q5dVRFO0lBQWtDO0UvRGl2VHBDO0UrRGh2VEU7SUFBa0M7RS9EbXZUcEM7RStEbHZURTtJQUFrQztFL0RxdlRwQztFK0RwdlRFO0lBQWtDO0UvRHV2VHBDO0UrRHR2VEU7SUFBa0M7RS9EeXZUcEM7RStEdnZURTtJQUFnQztFL0QwdlRsQztFK0R6dlRFO0lBQWdDO0UvRDR2VGxDO0UrRDN2VEU7SUFBZ0M7RS9EOHZUbEM7RStEN3ZURTtJQUFnQztFL0Rnd1RsQztFK0QvdlRFO0lBQWdDO0UvRGt3VGxDO0UrRGp3VEU7SUFBZ0M7RS9Eb3dUbEM7QUFDRjtBZ0UveVRJO0VBQXdCO0FoRWt6VDVCOztBZ0VqelRJO0VBQXdCO0FoRXF6VDVCOztBZ0VwelRJO0VBQXdCO0FoRXd6VDVCOztBZ0Jwd1RJO0VnRHREQTtJQUF3QjtFaEUrelQxQjtFZ0U5elRFO0lBQXdCO0VoRWkwVDFCO0VnRWgwVEU7SUFBd0I7RWhFbTBUMUI7QUFDRjtBZ0JoeFRJO0VnRHREQTtJQUF3QjtFaEUwMFQxQjtFZ0V6MFRFO0lBQXdCO0VoRTQwVDFCO0VnRTMwVEU7SUFBd0I7RWhFODBUMUI7QUFDRjtBZ0IzeFRJO0VnRHREQTtJQUF3QjtFaEVxMVQxQjtFZ0VwMVRFO0lBQXdCO0VoRXUxVDFCO0VnRXQxVEU7SUFBd0I7RWhFeTFUMUI7QUFDRjtBZ0J0eVRJO0VnRHREQTtJQUF3QjtFaEVnMlQxQjtFZ0UvMVRFO0lBQXdCO0VoRWsyVDFCO0VnRWoyVEU7SUFBd0I7RWhFbzJUMUI7QUFDRjtBaUUxMlRFO0VBQXlCO0FqRTYyVDNCOztBaUU3MlRFO0VBQXlCO0FqRWkzVDNCOztBaUVqM1RFO0VBQXlCO0FqRXEzVDNCOztBa0VyM1RFO0VBQXNCO0FsRXkzVHhCOztBa0V6M1RFO0VBQXNCO0FsRTYzVHhCOztBbUU1M1RFO0VBQXlCO0FuRWc0VDNCOztBbUVoNFRFO0VBQXlCO0FuRW80VDNCOztBbUVwNFRFO0VBQXlCO0FuRXc0VDNCOztBbUV4NFRFO0VBQXlCO0FuRTQ0VDNCOztBbUU1NFRFO0VBQXlCO0FuRWc1VDNCOztBbUUzNFRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhOURpcUJrQztBTDZ1U3BDOztBbUUzNFRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhOUR5cEJrQztBTHF2U3BDOztBbUUxNFRFO0VBREY7SUFFSTtJQUNBO0lBQ0EsYTlEaXBCZ0M7RUw2dlNsQztBQUNGOztBb0V4NlRBO0VDRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRTA2VEY7O0FxRWg2VEU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJFazZUSjs7QXNFLzdUQTtFQUFhO0F0RW04VGI7O0FzRWw4VEE7RUFBVTtBdEVzOFRWOztBc0VyOFRBO0VBQWE7QXRFeThUYjs7QXNFeDhUQTtFQUFlO0F0RTQ4VGY7O0F1RTM4VEk7RUFBdUI7QXZFKzhUM0I7O0F1RS84VEk7RUFBdUI7QXZFbTlUM0I7O0F1RW45VEk7RUFBdUI7QXZFdTlUM0I7O0F1RXY5VEk7RUFBdUI7QXZFMjlUM0I7O0F1RTM5VEk7RUFBdUI7QXZFKzlUM0I7O0F1RS85VEk7RUFBdUI7QXZFbStUM0I7O0F1RW4rVEk7RUFBdUI7QXZFdStUM0I7O0F1RXYrVEk7RUFBdUI7QXZFMitUM0I7O0F1RTMrVEk7RUFBdUI7QXZFKytUM0I7O0F1RS8rVEk7RUFBdUI7QXZFbS9UM0I7O0F1RS8rVEE7RUFBVTtBdkVtL1RWOztBdUVsL1RBO0VBQVU7QXZFcy9UVjs7QXVFbC9UQTtFQUFjO0F2RXMvVGQ7O0F1RXIvVEE7RUFBYztBdkV5L1RkOztBdUV2L1RBO0VBQVU7QXZFMi9UVjs7QXVFMS9UQTtFQUFVO0F2RTgvVFY7O0F3RXZnVVE7RUFBZ0M7QXhFMmdVeEM7O0F3RTFnVVE7O0VBRUU7QXhFNmdVVjs7QXdFM2dVUTs7RUFFRTtBeEU4Z1VWOztBd0U1Z1VROztFQUVFO0F4RStnVVY7O0F3RTdnVVE7O0VBRUU7QXhFZ2hVVjs7QXdFL2hVUTtFQUFnQztBeEVtaVV4Qzs7QXdFbGlVUTs7RUFFRTtBeEVxaVVWOztBd0VuaVVROztFQUVFO0F4RXNpVVY7O0F3RXBpVVE7O0VBRUU7QXhFdWlVVjs7QXdFcmlVUTs7RUFFRTtBeEV3aVVWOztBd0V2alVRO0VBQWdDO0F4RTJqVXhDOztBd0UxalVROztFQUVFO0F4RTZqVVY7O0F3RTNqVVE7O0VBRUU7QXhFOGpVVjs7QXdFNWpVUTs7RUFFRTtBeEUralVWOztBd0U3alVROztFQUVFO0F4RWdrVVY7O0F3RS9rVVE7RUFBZ0M7QXhFbWxVeEM7O0F3RWxsVVE7O0VBRUU7QXhFcWxVVjs7QXdFbmxVUTs7RUFFRTtBeEVzbFVWOztBd0VwbFVROztFQUVFO0F4RXVsVVY7O0F3RXJsVVE7O0VBRUU7QXhFd2xVVjs7QXdFdm1VUTtFQUFnQztBeEUybVV4Qzs7QXdFMW1VUTs7RUFFRTtBeEU2bVVWOztBd0UzbVVROztFQUVFO0F4RThtVVY7O0F3RTVtVVE7O0VBRUU7QXhFK21VVjs7QXdFN21VUTs7RUFFRTtBeEVnblVWOztBd0UvblVRO0VBQWdDO0F4RW1vVXhDOztBd0Vsb1VROztFQUVFO0F4RXFvVVY7O0F3RW5vVVE7O0VBRUU7QXhFc29VVjs7QXdFcG9VUTs7RUFFRTtBeEV1b1VWOztBd0Vyb1VROztFQUVFO0F4RXdvVVY7O0F3RXZwVVE7RUFBZ0M7QXhFMnBVeEM7O0F3RTFwVVE7O0VBRUU7QXhFNnBVVjs7QXdFM3BVUTs7RUFFRTtBeEU4cFVWOztBd0U1cFVROztFQUVFO0F4RStwVVY7O0F3RTdwVVE7O0VBRUU7QXhFZ3FVVjs7QXdFL3FVUTtFQUFnQztBeEVtclV4Qzs7QXdFbHJVUTs7RUFFRTtBeEVxclVWOztBd0VuclVROztFQUVFO0F4RXNyVVY7O0F3RXByVVE7O0VBRUU7QXhFdXJVVjs7QXdFcnJVUTs7RUFFRTtBeEV3clVWOztBd0V2c1VRO0VBQWdDO0F4RTJzVXhDOztBd0Uxc1VROztFQUVFO0F4RTZzVVY7O0F3RTNzVVE7O0VBRUU7QXhFOHNVVjs7QXdFNXNVUTs7RUFFRTtBeEUrc1VWOztBd0U3c1VROztFQUVFO0F4RWd0VVY7O0F3RS90VVE7RUFBZ0M7QXhFbXVVeEM7O0F3RWx1VVE7O0VBRUU7QXhFcXVVVjs7QXdFbnVVUTs7RUFFRTtBeEVzdVVWOztBd0VwdVVROztFQUVFO0F4RXV1VVY7O0F3RXJ1VVE7O0VBRUU7QXhFd3VVVjs7QXdFdnZVUTtFQUFnQztBeEUydlV4Qzs7QXdFMXZVUTs7RUFFRTtBeEU2dlVWOztBd0UzdlVROztFQUVFO0F4RTh2VVY7O0F3RTV2VVE7O0VBRUU7QXhFK3ZVVjs7QXdFN3ZVUTs7RUFFRTtBeEVnd1VWOztBd0Uvd1VRO0VBQWdDO0F4RW14VXhDOztBd0VseFVROztFQUVFO0F4RXF4VVY7O0F3RW54VVE7O0VBRUU7QXhFc3hVVjs7QXdFcHhVUTs7RUFFRTtBeEV1eFVWOztBd0VyeFVROztFQUVFO0F4RXd4VVY7O0F3RWh4VVE7RUFBd0I7QXhFb3hVaEM7O0F3RW54VVE7O0VBRUU7QXhFc3hVVjs7QXdFcHhVUTs7RUFFRTtBeEV1eFVWOztBd0VyeFVROztFQUVFO0F4RXd4VVY7O0F3RXR4VVE7O0VBRUU7QXhFeXhVVjs7QXdFeHlVUTtFQUF3QjtBeEU0eVVoQzs7QXdFM3lVUTs7RUFFRTtBeEU4eVVWOztBd0U1eVVROztFQUVFO0F4RSt5VVY7O0F3RTd5VVE7O0VBRUU7QXhFZ3pVVjs7QXdFOXlVUTs7RUFFRTtBeEVpelVWOztBd0VoMFVRO0VBQXdCO0F4RW8wVWhDOztBd0VuMFVROztFQUVFO0F4RXMwVVY7O0F3RXAwVVE7O0VBRUU7QXhFdTBVVjs7QXdFcjBVUTs7RUFFRTtBeEV3MFVWOztBd0V0MFVROztFQUVFO0F4RXkwVVY7O0F3RXgxVVE7RUFBd0I7QXhFNDFVaEM7O0F3RTMxVVE7O0VBRUU7QXhFODFVVjs7QXdFNTFVUTs7RUFFRTtBeEUrMVVWOztBd0U3MVVROztFQUVFO0F4RWcyVVY7O0F3RTkxVVE7O0VBRUU7QXhFaTJVVjs7QXdFaDNVUTtFQUF3QjtBeEVvM1VoQzs7QXdFbjNVUTs7RUFFRTtBeEVzM1VWOztBd0VwM1VROztFQUVFO0F4RXUzVVY7O0F3RXIzVVE7O0VBRUU7QXhFdzNVVjs7QXdFdDNVUTs7RUFFRTtBeEV5M1VWOztBd0VuM1VJO0VBQW1CO0F4RXUzVXZCOztBd0V0M1VJOztFQUVFO0F4RXkzVU47O0F3RXYzVUk7O0VBRUU7QXhFMDNVTjs7QXdFeDNVSTs7RUFFRTtBeEUyM1VOOztBd0V6M1VJOztFQUVFO0F4RTQzVU47O0FnQnI0VUk7RXdEbERJO0lBQWdDO0V4RTQ3VXRDO0V3RTM3VU07O0lBRUU7RXhFNjdVUjtFd0UzN1VNOztJQUVFO0V4RTY3VVI7RXdFMzdVTTs7SUFFRTtFeEU2N1VSO0V3RTM3VU07O0lBRUU7RXhFNjdVUjtFd0U1OFVNO0lBQWdDO0V4RSs4VXRDO0V3RTk4VU07O0lBRUU7RXhFZzlVUjtFd0U5OFVNOztJQUVFO0V4RWc5VVI7RXdFOThVTTs7SUFFRTtFeEVnOVVSO0V3RTk4VU07O0lBRUU7RXhFZzlVUjtFd0UvOVVNO0lBQWdDO0V4RWsrVXRDO0V3RWorVU07O0lBRUU7RXhFbStVUjtFd0VqK1VNOztJQUVFO0V4RW0rVVI7RXdFaitVTTs7SUFFRTtFeEVtK1VSO0V3RWorVU07O0lBRUU7RXhFbStVUjtFd0VsL1VNO0lBQWdDO0V4RXEvVXRDO0V3RXAvVU07O0lBRUU7RXhFcy9VUjtFd0VwL1VNOztJQUVFO0V4RXMvVVI7RXdFcC9VTTs7SUFFRTtFeEVzL1VSO0V3RXAvVU07O0lBRUU7RXhFcy9VUjtFd0VyZ1ZNO0lBQWdDO0V4RXdnVnRDO0V3RXZnVk07O0lBRUU7RXhFeWdWUjtFd0V2Z1ZNOztJQUVFO0V4RXlnVlI7RXdFdmdWTTs7SUFFRTtFeEV5Z1ZSO0V3RXZnVk07O0lBRUU7RXhFeWdWUjtFd0V4aFZNO0lBQWdDO0V4RTJoVnRDO0V3RTFoVk07O0lBRUU7RXhFNGhWUjtFd0UxaFZNOztJQUVFO0V4RTRoVlI7RXdFMWhWTTs7SUFFRTtFeEU0aFZSO0V3RTFoVk07O0lBRUU7RXhFNGhWUjtFd0UzaVZNO0lBQWdDO0V4RThpVnRDO0V3RTdpVk07O0lBRUU7RXhFK2lWUjtFd0U3aVZNOztJQUVFO0V4RStpVlI7RXdFN2lWTTs7SUFFRTtFeEUraVZSO0V3RTdpVk07O0lBRUU7RXhFK2lWUjtFd0U5alZNO0lBQWdDO0V4RWlrVnRDO0V3RWhrVk07O0lBRUU7RXhFa2tWUjtFd0Voa1ZNOztJQUVFO0V4RWtrVlI7RXdFaGtWTTs7SUFFRTtFeEVra1ZSO0V3RWhrVk07O0lBRUU7RXhFa2tWUjtFd0VqbFZNO0lBQWdDO0V4RW9sVnRDO0V3RW5sVk07O0lBRUU7RXhFcWxWUjtFd0VubFZNOztJQUVFO0V4RXFsVlI7RXdFbmxWTTs7SUFFRTtFeEVxbFZSO0V3RW5sVk07O0lBRUU7RXhFcWxWUjtFd0VwbVZNO0lBQWdDO0V4RXVtVnRDO0V3RXRtVk07O0lBRUU7RXhFd21WUjtFd0V0bVZNOztJQUVFO0V4RXdtVlI7RXdFdG1WTTs7SUFFRTtFeEV3bVZSO0V3RXRtVk07O0lBRUU7RXhFd21WUjtFd0V2blZNO0lBQWdDO0V4RTBuVnRDO0V3RXpuVk07O0lBRUU7RXhFMm5WUjtFd0V6blZNOztJQUVFO0V4RTJuVlI7RXdFem5WTTs7SUFFRTtFeEUyblZSO0V3RXpuVk07O0lBRUU7RXhFMm5WUjtFd0Uxb1ZNO0lBQWdDO0V4RTZvVnRDO0V3RTVvVk07O0lBRUU7RXhFOG9WUjtFd0U1b1ZNOztJQUVFO0V4RThvVlI7RXdFNW9WTTs7SUFFRTtFeEU4b1ZSO0V3RTVvVk07O0lBRUU7RXhFOG9WUjtFd0V0b1ZNO0lBQXdCO0V4RXlvVjlCO0V3RXhvVk07O0lBRUU7RXhFMG9WUjtFd0V4b1ZNOztJQUVFO0V4RTBvVlI7RXdFeG9WTTs7SUFFRTtFeEUwb1ZSO0V3RXhvVk07O0lBRUU7RXhFMG9WUjtFd0V6cFZNO0lBQXdCO0V4RTRwVjlCO0V3RTNwVk07O0lBRUU7RXhFNnBWUjtFd0UzcFZNOztJQUVFO0V4RTZwVlI7RXdFM3BWTTs7SUFFRTtFeEU2cFZSO0V3RTNwVk07O0lBRUU7RXhFNnBWUjtFd0U1cVZNO0lBQXdCO0V4RStxVjlCO0V3RTlxVk07O0lBRUU7RXhFZ3JWUjtFd0U5cVZNOztJQUVFO0V4RWdyVlI7RXdFOXFWTTs7SUFFRTtFeEVnclZSO0V3RTlxVk07O0lBRUU7RXhFZ3JWUjtFd0UvclZNO0lBQXdCO0V4RWtzVjlCO0V3RWpzVk07O0lBRUU7RXhFbXNWUjtFd0Vqc1ZNOztJQUVFO0V4RW1zVlI7RXdFanNWTTs7SUFFRTtFeEVtc1ZSO0V3RWpzVk07O0lBRUU7RXhFbXNWUjtFd0VsdFZNO0lBQXdCO0V4RXF0VjlCO0V3RXB0Vk07O0lBRUU7RXhFc3RWUjtFd0VwdFZNOztJQUVFO0V4RXN0VlI7RXdFcHRWTTs7SUFFRTtFeEVzdFZSO0V3RXB0Vk07O0lBRUU7RXhFc3RWUjtFd0VodFZFO0lBQW1CO0V4RW10VnJCO0V3RWx0VkU7O0lBRUU7RXhFb3RWSjtFd0VsdFZFOztJQUVFO0V4RW90Vko7RXdFbHRWRTs7SUFFRTtFeEVvdFZKO0V3RWx0VkU7O0lBRUU7RXhFb3RWSjtBQUNGO0FnQjl0Vkk7RXdEbERJO0lBQWdDO0V4RW94VnRDO0V3RW54Vk07O0lBRUU7RXhFcXhWUjtFd0VueFZNOztJQUVFO0V4RXF4VlI7RXdFbnhWTTs7SUFFRTtFeEVxeFZSO0V3RW54Vk07O0lBRUU7RXhFcXhWUjtFd0VweVZNO0lBQWdDO0V4RXV5VnRDO0V3RXR5Vk07O0lBRUU7RXhFd3lWUjtFd0V0eVZNOztJQUVFO0V4RXd5VlI7RXdFdHlWTTs7SUFFRTtFeEV3eVZSO0V3RXR5Vk07O0lBRUU7RXhFd3lWUjtFd0V2elZNO0lBQWdDO0V4RTB6VnRDO0V3RXp6Vk07O0lBRUU7RXhFMnpWUjtFd0V6elZNOztJQUVFO0V4RTJ6VlI7RXdFenpWTTs7SUFFRTtFeEUyelZSO0V3RXp6Vk07O0lBRUU7RXhFMnpWUjtFd0UxMFZNO0lBQWdDO0V4RTYwVnRDO0V3RTUwVk07O0lBRUU7RXhFODBWUjtFd0U1MFZNOztJQUVFO0V4RTgwVlI7RXdFNTBWTTs7SUFFRTtFeEU4MFZSO0V3RTUwVk07O0lBRUU7RXhFODBWUjtFd0U3MVZNO0lBQWdDO0V4RWcyVnRDO0V3RS8xVk07O0lBRUU7RXhFaTJWUjtFd0UvMVZNOztJQUVFO0V4RWkyVlI7RXdFLzFWTTs7SUFFRTtFeEVpMlZSO0V3RS8xVk07O0lBRUU7RXhFaTJWUjtFd0VoM1ZNO0lBQWdDO0V4RW0zVnRDO0V3RWwzVk07O0lBRUU7RXhFbzNWUjtFd0VsM1ZNOztJQUVFO0V4RW8zVlI7RXdFbDNWTTs7SUFFRTtFeEVvM1ZSO0V3RWwzVk07O0lBRUU7RXhFbzNWUjtFd0VuNFZNO0lBQWdDO0V4RXM0VnRDO0V3RXI0Vk07O0lBRUU7RXhFdTRWUjtFd0VyNFZNOztJQUVFO0V4RXU0VlI7RXdFcjRWTTs7SUFFRTtFeEV1NFZSO0V3RXI0Vk07O0lBRUU7RXhFdTRWUjtFd0V0NVZNO0lBQWdDO0V4RXk1VnRDO0V3RXg1Vk07O0lBRUU7RXhFMDVWUjtFd0V4NVZNOztJQUVFO0V4RTA1VlI7RXdFeDVWTTs7SUFFRTtFeEUwNVZSO0V3RXg1Vk07O0lBRUU7RXhFMDVWUjtFd0V6NlZNO0lBQWdDO0V4RTQ2VnRDO0V3RTM2Vk07O0lBRUU7RXhFNjZWUjtFd0UzNlZNOztJQUVFO0V4RTY2VlI7RXdFMzZWTTs7SUFFRTtFeEU2NlZSO0V3RTM2Vk07O0lBRUU7RXhFNjZWUjtFd0U1N1ZNO0lBQWdDO0V4RSs3VnRDO0V3RTk3Vk07O0lBRUU7RXhFZzhWUjtFd0U5N1ZNOztJQUVFO0V4RWc4VlI7RXdFOTdWTTs7SUFFRTtFeEVnOFZSO0V3RTk3Vk07O0lBRUU7RXhFZzhWUjtFd0UvOFZNO0lBQWdDO0V4RWs5VnRDO0V3RWo5Vk07O0lBRUU7RXhFbTlWUjtFd0VqOVZNOztJQUVFO0V4RW05VlI7RXdFajlWTTs7SUFFRTtFeEVtOVZSO0V3RWo5Vk07O0lBRUU7RXhFbTlWUjtFd0VsK1ZNO0lBQWdDO0V4RXErVnRDO0V3RXArVk07O0lBRUU7RXhFcytWUjtFd0VwK1ZNOztJQUVFO0V4RXMrVlI7RXdFcCtWTTs7SUFFRTtFeEVzK1ZSO0V3RXArVk07O0lBRUU7RXhFcytWUjtFd0U5OVZNO0lBQXdCO0V4RWkrVjlCO0V3RWgrVk07O0lBRUU7RXhFaytWUjtFd0VoK1ZNOztJQUVFO0V4RWsrVlI7RXdFaCtWTTs7SUFFRTtFeEVrK1ZSO0V3RWgrVk07O0lBRUU7RXhFaytWUjtFd0VqL1ZNO0lBQXdCO0V4RW8vVjlCO0V3RW4vVk07O0lBRUU7RXhFcS9WUjtFd0VuL1ZNOztJQUVFO0V4RXEvVlI7RXdFbi9WTTs7SUFFRTtFeEVxL1ZSO0V3RW4vVk07O0lBRUU7RXhFcS9WUjtFd0VwZ1dNO0lBQXdCO0V4RXVnVzlCO0V3RXRnV007O0lBRUU7RXhFd2dXUjtFd0V0Z1dNOztJQUVFO0V4RXdnV1I7RXdFdGdXTTs7SUFFRTtFeEV3Z1dSO0V3RXRnV007O0lBRUU7RXhFd2dXUjtFd0V2aFdNO0lBQXdCO0V4RTBoVzlCO0V3RXpoV007O0lBRUU7RXhFMmhXUjtFd0V6aFdNOztJQUVFO0V4RTJoV1I7RXdFemhXTTs7SUFFRTtFeEUyaFdSO0V3RXpoV007O0lBRUU7RXhFMmhXUjtFd0UxaVdNO0lBQXdCO0V4RTZpVzlCO0V3RTVpV007O0lBRUU7RXhFOGlXUjtFd0U1aVdNOztJQUVFO0V4RThpV1I7RXdFNWlXTTs7SUFFRTtFeEU4aVdSO0V3RTVpV007O0lBRUU7RXhFOGlXUjtFd0V4aVdFO0lBQW1CO0V4RTJpV3JCO0V3RTFpV0U7O0lBRUU7RXhFNGlXSjtFd0UxaVdFOztJQUVFO0V4RTRpV0o7RXdFMWlXRTs7SUFFRTtFeEU0aVdKO0V3RTFpV0U7O0lBRUU7RXhFNGlXSjtBQUNGO0FnQnRqV0k7RXdEbERJO0lBQWdDO0V4RTRtV3RDO0V3RTNtV007O0lBRUU7RXhFNm1XUjtFd0UzbVdNOztJQUVFO0V4RTZtV1I7RXdFM21XTTs7SUFFRTtFeEU2bVdSO0V3RTNtV007O0lBRUU7RXhFNm1XUjtFd0U1bldNO0lBQWdDO0V4RStuV3RDO0V3RTluV007O0lBRUU7RXhFZ29XUjtFd0U5bldNOztJQUVFO0V4RWdvV1I7RXdFOW5XTTs7SUFFRTtFeEVnb1dSO0V3RTluV007O0lBRUU7RXhFZ29XUjtFd0Uvb1dNO0lBQWdDO0V4RWtwV3RDO0V3RWpwV007O0lBRUU7RXhFbXBXUjtFd0VqcFdNOztJQUVFO0V4RW1wV1I7RXdFanBXTTs7SUFFRTtFeEVtcFdSO0V3RWpwV007O0lBRUU7RXhFbXBXUjtFd0VscVdNO0lBQWdDO0V4RXFxV3RDO0V3RXBxV007O0lBRUU7RXhFc3FXUjtFd0VwcVdNOztJQUVFO0V4RXNxV1I7RXdFcHFXTTs7SUFFRTtFeEVzcVdSO0V3RXBxV007O0lBRUU7RXhFc3FXUjtFd0VycldNO0lBQWdDO0V4RXdyV3RDO0V3RXZyV007O0lBRUU7RXhFeXJXUjtFd0V2cldNOztJQUVFO0V4RXlyV1I7RXdFdnJXTTs7SUFFRTtFeEV5cldSO0V3RXZyV007O0lBRUU7RXhFeXJXUjtFd0V4c1dNO0lBQWdDO0V4RTJzV3RDO0V3RTFzV007O0lBRUU7RXhFNHNXUjtFd0Uxc1dNOztJQUVFO0V4RTRzV1I7RXdFMXNXTTs7SUFFRTtFeEU0c1dSO0V3RTFzV007O0lBRUU7RXhFNHNXUjtFd0UzdFdNO0lBQWdDO0V4RTh0V3RDO0V3RTd0V007O0lBRUU7RXhFK3RXUjtFd0U3dFdNOztJQUVFO0V4RSt0V1I7RXdFN3RXTTs7SUFFRTtFeEUrdFdSO0V3RTd0V007O0lBRUU7RXhFK3RXUjtFd0U5dVdNO0lBQWdDO0V4RWl2V3RDO0V3RWh2V007O0lBRUU7RXhFa3ZXUjtFd0VodldNOztJQUVFO0V4RWt2V1I7RXdFaHZXTTs7SUFFRTtFeEVrdldSO0V3RWh2V007O0lBRUU7RXhFa3ZXUjtFd0Vqd1dNO0lBQWdDO0V4RW93V3RDO0V3RW53V007O0lBRUU7RXhFcXdXUjtFd0Vud1dNOztJQUVFO0V4RXF3V1I7RXdFbndXTTs7SUFFRTtFeEVxd1dSO0V3RW53V007O0lBRUU7RXhFcXdXUjtFd0VweFdNO0lBQWdDO0V4RXV4V3RDO0V3RXR4V007O0lBRUU7RXhFd3hXUjtFd0V0eFdNOztJQUVFO0V4RXd4V1I7RXdFdHhXTTs7SUFFRTtFeEV3eFdSO0V3RXR4V007O0lBRUU7RXhFd3hXUjtFd0V2eVdNO0lBQWdDO0V4RTB5V3RDO0V3RXp5V007O0lBRUU7RXhFMnlXUjtFd0V6eVdNOztJQUVFO0V4RTJ5V1I7RXdFenlXTTs7SUFFRTtFeEUyeVdSO0V3RXp5V007O0lBRUU7RXhFMnlXUjtFd0UxeldNO0lBQWdDO0V4RTZ6V3RDO0V3RTV6V007O0lBRUU7RXhFOHpXUjtFd0U1eldNOztJQUVFO0V4RTh6V1I7RXdFNXpXTTs7SUFFRTtFeEU4eldSO0V3RTV6V007O0lBRUU7RXhFOHpXUjtFd0V0eldNO0lBQXdCO0V4RXl6VzlCO0V3RXh6V007O0lBRUU7RXhFMHpXUjtFd0V4eldNOztJQUVFO0V4RTB6V1I7RXdFeHpXTTs7SUFFRTtFeEUweldSO0V3RXh6V007O0lBRUU7RXhFMHpXUjtFd0V6MFdNO0lBQXdCO0V4RTQwVzlCO0V3RTMwV007O0lBRUU7RXhFNjBXUjtFd0UzMFdNOztJQUVFO0V4RTYwV1I7RXdFMzBXTTs7SUFFRTtFeEU2MFdSO0V3RTMwV007O0lBRUU7RXhFNjBXUjtFd0U1MVdNO0lBQXdCO0V4RSsxVzlCO0V3RTkxV007O0lBRUU7RXhFZzJXUjtFd0U5MVdNOztJQUVFO0V4RWcyV1I7RXdFOTFXTTs7SUFFRTtFeEVnMldSO0V3RTkxV007O0lBRUU7RXhFZzJXUjtFd0UvMldNO0lBQXdCO0V4RWszVzlCO0V3RWozV007O0lBRUU7RXhFbTNXUjtFd0VqM1dNOztJQUVFO0V4RW0zV1I7RXdFajNXTTs7SUFFRTtFeEVtM1dSO0V3RWozV007O0lBRUU7RXhFbTNXUjtFd0VsNFdNO0lBQXdCO0V4RXE0VzlCO0V3RXA0V007O0lBRUU7RXhFczRXUjtFd0VwNFdNOztJQUVFO0V4RXM0V1I7RXdFcDRXTTs7SUFFRTtFeEVzNFdSO0V3RXA0V007O0lBRUU7RXhFczRXUjtFd0VoNFdFO0lBQW1CO0V4RW00V3JCO0V3RWw0V0U7O0lBRUU7RXhFbzRXSjtFd0VsNFdFOztJQUVFO0V4RW80V0o7RXdFbDRXRTs7SUFFRTtFeEVvNFdKO0V3RWw0V0U7O0lBRUU7RXhFbzRXSjtBQUNGO0FnQjk0V0k7RXdEbERJO0lBQWdDO0V4RW84V3RDO0V3RW44V007O0lBRUU7RXhFcThXUjtFd0VuOFdNOztJQUVFO0V4RXE4V1I7RXdFbjhXTTs7SUFFRTtFeEVxOFdSO0V3RW44V007O0lBRUU7RXhFcThXUjtFd0VwOVdNO0lBQWdDO0V4RXU5V3RDO0V3RXQ5V007O0lBRUU7RXhFdzlXUjtFd0V0OVdNOztJQUVFO0V4RXc5V1I7RXdFdDlXTTs7SUFFRTtFeEV3OVdSO0V3RXQ5V007O0lBRUU7RXhFdzlXUjtFd0V2K1dNO0lBQWdDO0V4RTArV3RDO0V3RXorV007O0lBRUU7RXhFMitXUjtFd0V6K1dNOztJQUVFO0V4RTIrV1I7RXdFeitXTTs7SUFFRTtFeEUyK1dSO0V3RXorV007O0lBRUU7RXhFMitXUjtFd0UxL1dNO0lBQWdDO0V4RTYvV3RDO0V3RTUvV007O0lBRUU7RXhFOC9XUjtFd0U1L1dNOztJQUVFO0V4RTgvV1I7RXdFNS9XTTs7SUFFRTtFeEU4L1dSO0V3RTUvV007O0lBRUU7RXhFOC9XUjtFd0U3Z1hNO0lBQWdDO0V4RWdoWHRDO0V3RS9nWE07O0lBRUU7RXhFaWhYUjtFd0UvZ1hNOztJQUVFO0V4RWloWFI7RXdFL2dYTTs7SUFFRTtFeEVpaFhSO0V3RS9nWE07O0lBRUU7RXhFaWhYUjtFd0VoaVhNO0lBQWdDO0V4RW1pWHRDO0V3RWxpWE07O0lBRUU7RXhFb2lYUjtFd0VsaVhNOztJQUVFO0V4RW9pWFI7RXdFbGlYTTs7SUFFRTtFeEVvaVhSO0V3RWxpWE07O0lBRUU7RXhFb2lYUjtFd0VualhNO0lBQWdDO0V4RXNqWHRDO0V3RXJqWE07O0lBRUU7RXhFdWpYUjtFd0VyalhNOztJQUVFO0V4RXVqWFI7RXdFcmpYTTs7SUFFRTtFeEV1alhSO0V3RXJqWE07O0lBRUU7RXhFdWpYUjtFd0V0a1hNO0lBQWdDO0V4RXlrWHRDO0V3RXhrWE07O0lBRUU7RXhFMGtYUjtFd0V4a1hNOztJQUVFO0V4RTBrWFI7RXdFeGtYTTs7SUFFRTtFeEUwa1hSO0V3RXhrWE07O0lBRUU7RXhFMGtYUjtFd0V6bFhNO0lBQWdDO0V4RTRsWHRDO0V3RTNsWE07O0lBRUU7RXhFNmxYUjtFd0UzbFhNOztJQUVFO0V4RTZsWFI7RXdFM2xYTTs7SUFFRTtFeEU2bFhSO0V3RTNsWE07O0lBRUU7RXhFNmxYUjtFd0U1bVhNO0lBQWdDO0V4RSttWHRDO0V3RTltWE07O0lBRUU7RXhFZ25YUjtFd0U5bVhNOztJQUVFO0V4RWduWFI7RXdFOW1YTTs7SUFFRTtFeEVnblhSO0V3RTltWE07O0lBRUU7RXhFZ25YUjtFd0UvblhNO0lBQWdDO0V4RWtvWHRDO0V3RWpvWE07O0lBRUU7RXhFbW9YUjtFd0Vqb1hNOztJQUVFO0V4RW1vWFI7RXdFam9YTTs7SUFFRTtFeEVtb1hSO0V3RWpvWE07O0lBRUU7RXhFbW9YUjtFd0VscFhNO0lBQWdDO0V4RXFwWHRDO0V3RXBwWE07O0lBRUU7RXhFc3BYUjtFd0VwcFhNOztJQUVFO0V4RXNwWFI7RXdFcHBYTTs7SUFFRTtFeEVzcFhSO0V3RXBwWE07O0lBRUU7RXhFc3BYUjtFd0U5b1hNO0lBQXdCO0V4RWlwWDlCO0V3RWhwWE07O0lBRUU7RXhFa3BYUjtFd0VocFhNOztJQUVFO0V4RWtwWFI7RXdFaHBYTTs7SUFFRTtFeEVrcFhSO0V3RWhwWE07O0lBRUU7RXhFa3BYUjtFd0VqcVhNO0lBQXdCO0V4RW9xWDlCO0V3RW5xWE07O0lBRUU7RXhFcXFYUjtFd0VucVhNOztJQUVFO0V4RXFxWFI7RXdFbnFYTTs7SUFFRTtFeEVxcVhSO0V3RW5xWE07O0lBRUU7RXhFcXFYUjtFd0VwclhNO0lBQXdCO0V4RXVyWDlCO0V3RXRyWE07O0lBRUU7RXhFd3JYUjtFd0V0clhNOztJQUVFO0V4RXdyWFI7RXdFdHJYTTs7SUFFRTtFeEV3clhSO0V3RXRyWE07O0lBRUU7RXhFd3JYUjtFd0V2c1hNO0lBQXdCO0V4RTBzWDlCO0V3RXpzWE07O0lBRUU7RXhFMnNYUjtFd0V6c1hNOztJQUVFO0V4RTJzWFI7RXdFenNYTTs7SUFFRTtFeEUyc1hSO0V3RXpzWE07O0lBRUU7RXhFMnNYUjtFd0UxdFhNO0lBQXdCO0V4RTZ0WDlCO0V3RTV0WE07O0lBRUU7RXhFOHRYUjtFd0U1dFhNOztJQUVFO0V4RTh0WFI7RXdFNXRYTTs7SUFFRTtFeEU4dFhSO0V3RTV0WE07O0lBRUU7RXhFOHRYUjtFd0V4dFhFO0lBQW1CO0V4RTJ0WHJCO0V3RTF0WEU7O0lBRUU7RXhFNHRYSjtFd0UxdFhFOztJQUVFO0V4RTR0WEo7RXdFMXRYRTs7SUFFRTtFeEU0dFhKO0V3RTF0WEU7O0lBRUU7RXhFNHRYSjtBQUNGO0F5RTd4WEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7QXpFNnhYSjs7QTBFdnlYQTtFQUFrQjtBMUUyeVhsQjs7QTBFdnlYQTtFQUFpQjtBMUUyeVhqQjs7QTBFMXlYQTtFQUFpQjtBMUU4eVhqQjs7QTBFN3lYQTtFQUFpQjtBMUVpelhqQjs7QTBFaHpYQTtFQ1RFO0VBQ0E7RUFDQTtBM0U2elhGOztBMEU5eVhJO0VBQXdCO0ExRWt6WDVCOztBMEVqelhJO0VBQXdCO0ExRXF6WDVCOztBMEVwelhJO0VBQXdCO0ExRXd6WDVCOztBZ0JueFhJO0UwRHZDQTtJQUF3QjtFMUUrelgxQjtFMEU5elhFO0lBQXdCO0UxRWkwWDFCO0UwRWgwWEU7SUFBd0I7RTFFbTBYMUI7QUFDRjtBZ0IveFhJO0UwRHZDQTtJQUF3QjtFMUUwMFgxQjtFMEV6MFhFO0lBQXdCO0UxRTQwWDFCO0UwRTMwWEU7SUFBd0I7RTFFODBYMUI7QUFDRjtBZ0IxeVhJO0UwRHZDQTtJQUF3QjtFMUVxMVgxQjtFMEVwMVhFO0lBQXdCO0UxRXUxWDFCO0UwRXQxWEU7SUFBd0I7RTFFeTFYMUI7QUFDRjtBZ0JyelhJO0UwRHZDQTtJQUF3QjtFMUVnMlgxQjtFMEUvMVhFO0lBQXdCO0UxRWsyWDFCO0UwRWoyWEU7SUFBd0I7RTFFbzJYMUI7QUFDRjtBMEUvMVhBO0VBQW1CO0ExRWsyWG5COztBMEVqMlhBO0VBQW1CO0ExRXEyWG5COztBMEVwMlhBO0VBQW1CO0ExRXcyWG5COztBMEVwMlhBO0VBQXVCO0ExRXcyWHZCOztBMEV2MlhBO0VBQXVCO0ExRTIyWHZCOztBMEUxMlhBO0VBQXVCO0ExRTgyWHZCOztBMEU3MlhBO0VBQXVCO0ExRWkzWHZCOztBMEVoM1hBO0VBQXVCO0ExRW8zWHZCOztBMEVuM1hBO0VBQXVCO0ExRXUzWHZCOztBMEVuM1hBO0VBQWM7QTFFdTNYZDs7QTRFOTVYRTtFQUNFO0E1RWk2WEo7O0FPdjVYRTtFcUVMTTtBNUVnNlhSOztBNEV0NlhFO0VBQ0U7QTVFeTZYSjs7QU8vNVhFO0VxRUxNO0E1RXc2WFI7O0E0RTk2WEU7RUFDRTtBNUVpN1hKOztBT3Y2WEU7RXFFTE07QTVFZzdYUjs7QTRFdDdYRTtFQUNFO0E1RXk3WEo7O0FPLzZYRTtFcUVMTTtBNUV3N1hSOztBNEU5N1hFO0VBQ0U7QTVFaThYSjs7QU92N1hFO0VxRUxNO0E1RWc4WFI7O0E0RXQ4WEU7RUFDRTtBNUV5OFhKOztBTy83WEU7RXFFTE07QTVFdzhYUjs7QTRFOThYRTtFQUNFO0E1RWk5WEo7O0FPdjhYRTtFcUVMTTtBNUVnOVhSOztBNEV0OVhFO0VBQ0U7QTVFeTlYSjs7QU8vOFhFO0VxRUxNO0E1RXc5WFI7O0E0RTk5WEU7RUFDRTtBNUVpK1hKOztBT3Y5WEU7RXFFTE07QTVFZytYUjs7QTRFdCtYRTtFQUNFO0E1RXkrWEo7O0FPLzlYRTtFcUVMTTtBNUV3K1hSOztBNEU5K1hFO0VBQ0U7QTVFaS9YSjs7QU92K1hFO0VxRUxNO0E1RWcvWFI7O0E0RXQvWEU7RUFDRTtBNUV5L1hKOztBTy8rWEU7RXFFTE07QTVFdy9YUjs7QTRFOS9YRTtFQUNFO0E1RWlnWUo7O0FPdi9YRTtFcUVMTTtBNUVnZ1lSOztBNEV0Z1lFO0VBQ0U7QTVFeWdZSjs7QU8vL1hFO0VxRUxNO0E1RXdnWVI7O0E0RTlnWUU7RUFDRTtBNUVpaFlKOztBT3ZnWUU7RXFFTE07QTVFZ2hZUjs7QTRFdGhZRTtFQUNFO0E1RXloWUo7O0FPL2dZRTtFcUVMTTtBNUV3aFlSOztBNEU5aFlFO0VBQ0U7QTVFaWlZSjs7QU92aFlFO0VxRUxNO0E1RWdpWVI7O0E0RXRpWUU7RUFDRTtBNUV5aVlKOztBTy9oWUU7RXFFTE07QTVFd2lZUjs7QTRFOWlZRTtFQUNFO0E1RWlqWUo7O0FPdmlZRTtFcUVMTTtBNUVnallSOztBNEV0allFO0VBQ0U7QTVFeWpZSjs7QU8vaVlFO0VxRUxNO0E1RXdqWVI7O0E0RTlqWUU7RUFDRTtBNUVpa1lKOztBT3ZqWUU7RXFFTE07QTVFZ2tZUjs7QTRFdGtZRTtFQUNFO0E1RXlrWUo7O0FPL2pZRTtFcUVMTTtBNUV3a1lSOztBNEU5a1lFO0VBQ0U7QTVFaWxZSjs7QU92a1lFO0VxRUxNO0E1RWdsWVI7O0E0RXRsWUU7RUFDRTtBNUV5bFlKOztBTy9rWUU7RXFFTE07QTVFd2xZUjs7QTRFOWxZRTtFQUNFO0E1RWltWUo7O0FPdmxZRTtFcUVMTTtBNUVnbVlSOztBNEV0bVlFO0VBQ0U7QTVFeW1ZSjs7QU8vbFlFO0VxRUxNO0E1RXdtWVI7O0E0RTltWUU7RUFDRTtBNUVpbllKOztBT3ZtWUU7RXFFTE07QTVFZ25ZUjs7QTRFdG5ZRTtFQUNFO0E1RXluWUo7O0FPL21ZRTtFcUVMTTtBNUV3bllSOztBNEU5bllFO0VBQ0U7QTVFaW9ZSjs7QU92bllFO0VxRUxNO0E1RWdvWVI7O0E0RXRvWUU7RUFDRTtBNUV5b1lKOztBTy9uWUU7RXFFTE07QTVFd29ZUjs7QTRFOW9ZRTtFQUNFO0E1RWlwWUo7O0FPdm9ZRTtFcUVMTTtBNUVncFlSOztBNEV0cFlFO0VBQ0U7QTVFeXBZSjs7QU8vb1lFO0VxRUxNO0E1RXdwWVI7O0EwRWpuWUE7RUFBYTtBMUVxblliOztBMEVwbllBO0VBQWM7QTFFd25ZZDs7QTBFdG5ZQTtFQUFpQjtBMUUwbllqQjs7QTBFem5ZQTtFQUFpQjtBMUU2bllqQjs7QTBFem5ZQTtFR3ZERTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW9yWUY7O0EwRTduWUE7RUFBd0I7QTFFaW9ZeEI7O0EwRS9uWUE7RUFDRTtFQUNBO0ExRWtvWUY7O0EwRTduWUE7RUFBYztBMUVpb1lkOztBOEVsc1lBO0VBQ0U7QTlFcXNZRjs7QThFbHNZQTtFQUNFO0E5RXFzWUY7O0ErRXJzWUU7RUFDRTs7O0lBS0U7SUFFQTtFL0Vxc1lKO0UrRWpzWUk7SUFDRTtFL0Vtc1lOO0UrRTFyWUU7SUFDRTtFL0U0cllKO0UrRTlxWUU7SUFDRTtFL0VncllKO0UrRTlxWUU7O0lBRUU7SUFDQTtFL0VncllKO0UrRTdxWUU7O0lBRUU7RS9FK3FZSjtFK0U1cVlFOzs7SUFHRTtJQUNBO0UvRThxWUo7RStFM3FZRTs7SUFFRTtFL0U2cVlKO0UrRXJxWUU7SUFDRSxRMUUyaUM4QjtFTDRuV2xDO0UrRXJxWUU7SUFDRTtFL0V1cVlKO0UrRXJxWUU7SUFDRTtFL0V1cVlKO0UrRW5xWUU7SUFDRTtFL0VxcVlKO0UrRW5xWUU7SUFDRTtFL0VxcVlKO0UrRWxxWUU7SUFDRTtFL0VvcVlKO0UrRWxxWUk7O0lBRUU7RS9Fb3FZTjtFK0UvcFlJOztJQUVFO0UvRWlxWU47RStFN3BZRTtJQUNFO0UvRStwWUo7RStFN3BZSTs7OztJQUlFLHFCMUU5R0c7RUw2d1lUO0UrRTNwWUU7SUFDRTtJQUNBLHFCMUVwSEs7RUxpeFlUO0FBQ0Y7QWdGdnhZTTtFQUFrQztBaEYweFl4Qzs7QWdGMXhZTTtFQUFrQztBaEY4eFl4Qzs7QWdGOXhZTTtFQUFrQztBaEZreVl4Qzs7QWdGbHlZTTtFQUFrQztBaEZzeVl4Qzs7QWdGdHlZTTtFQUFrQztBaEYweVl4Qzs7QWdCbnZZSTtFZ0V2REU7SUFBa0M7RWhGK3lZdEM7RWdGL3lZSTtJQUFrQztFaEZrell0QztFZ0ZsellJO0lBQWtDO0VoRnF6WXRDO0VnRnJ6WUk7SUFBa0M7RWhGd3pZdEM7RWdGeHpZSTtJQUFrQztFaEYyell0QztBQUNGO0FnQnJ3WUk7RWdFdkRFO0lBQWtDO0VoRmcwWXRDO0VnRmgwWUk7SUFBa0M7RWhGbTBZdEM7RWdGbjBZSTtJQUFrQztFaEZzMFl0QztFZ0Z0MFlJO0lBQWtDO0VoRnkwWXRDO0VnRnowWUk7SUFBa0M7RWhGNDBZdEM7QUFDRjtBZ0J0eFlJO0VnRXZERTtJQUFrQztFaEZpMVl0QztFZ0ZqMVlJO0lBQWtDO0VoRm8xWXRDO0VnRnAxWUk7SUFBa0M7RWhGdTFZdEM7RWdGdjFZSTtJQUFrQztFaEYwMVl0QztFZ0YxMVlJO0lBQWtDO0VoRjYxWXRDO0FBQ0Y7QWdCdnlZSTtFZ0V2REU7SUFBa0M7RWhGazJZdEM7RWdGbDJZSTtJQUFrQztFaEZxMll0QztFZ0ZyMllJO0lBQWtDO0VoRncyWXRDO0VnRngyWUk7SUFBa0M7RWhGMjJZdEM7RWdGMzJZSTtJQUFrQztFaEY4Mll0QztBQUNGO0FpRngxWUU7RUFDRSw2QkN4QnlCO0VEeUJ6QjtFQUNBO0VBQ0EsbUJDMUIwQjtFRDJCMUI7RUFDQTtBakYwMVlKO0FtRnYzWUE7RUY0Q0UsNkJDNUMyQjtFRDZDM0I7RUFDQTtFQUNBLGVDaER5QjtFRGlEekI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0FqRjIwWUY7O0FpRnIzWUU7RUFDRSxzQ0VuQlk7RUZvQlo7RUFDQTtFQUNBLG1CQzFCMEI7RUQyQjFCO0VBQ0E7QWpGdzNZSjtBbUZ6NFlFO0VBRUUsc0NBVFk7QW5GbTVZaEI7O0FpRmo0WUU7RUFDRSxtQ0VuQlk7RUZvQlo7RUFDQTtFQUNBLG1CQzFCMEI7RUQyQjFCO0VBQ0E7QWpGbzRZSjtBbUZyNVlFO0VBRUUsbUNBVFk7QW5GKzVZaEI7O0FpRjc0WUU7RUFDRSxtQ0VuQlk7RUZvQlo7RUFDQTtFQUNBLG1CQzFCMEI7RUQyQjFCO0VBQ0E7QWpGZzVZSjtBbUZqNllFO0VBRUUsbUNBVFk7QW5GMjZZaEI7O0FpRno1WUU7RUFDRSxzQ0VuQlk7RUZvQlo7RUFDQTtFQUNBLG1CQzFCMEI7RUQyQjFCO0VBQ0E7QWpGNDVZSjtBbUY3NllFO0VBRUUsc0NBVFk7QW5GdTdZaEI7O0FvRmo4WUE7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZtOFlKOztBb0ZqOFlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZvOFlKO0FvRmw4WUk7RUFDSTtBcEZvOFlSO0FvRmo4WUk7RUFDSTtFQUNBO0FwRm04WVI7O0FvRmg4WUE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZtOFlKOztBb0ZoOFlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRm04WUo7QW9GajhZSTtFQUVJO0VBQ0E7QXBGazhZUjtBb0YvN1lJO0VBQ0k7QXBGaThZUjtBb0Y5N1lJO0VBQ0k7QXBGZzhZUjs7QW9GNzdZQTtFQUNJO0VBQ0E7RUFDQTtBcEZnOFlKO0FvRi83WUk7RUFDSTtBcEZpOFlSO0FvRi83WUk7RUFDSTtBcEZpOFlSO0FvRi83WUk7RUFDSTtBcEZpOFlSO0FvRjU4WUE7RUFjSTtBcEZpOFlKO0FvRi83WUk7RUFDSTtBcEZpOFlSO0FvRjk3WUk7RUFDSTtBcEZnOFlSO0FvRjc3WUk7RUFDSTtBcEYrN1lSO0FvRjU3WUk7RUFDSTtFQUNBO0VBQ0E7QXBGODdZUjs7QW9GMzdZQTtFQUNJO0FwRjg3WUo7O0FxRnYvWUE7QUFHSTtFQUNJO0FyRncvWVI7O0FxRnAvWUE7QUFFSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGcy9ZUjtBcUZsL1lBO0FBRUE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGbS9ZSjtBcUZsL1lJOzs7RUFDSTtFQUNBO0VBQ0E7QXJGcy9ZUjtBcUZyL1lROzs7RUFDSSxVQWpFYTtBckYwalp6QjtBcUZ0L1lJOztFQUNJLGFBcEVtQjtBckY2alozQjtBcUZ2L1lJOztFQUNJLG9CQWxGWTtFQW1GWjtFQUNBO0VBQ0EsWUFuRlk7RUFvRlosYUE3RWdCO0VBOEVoQjtFQUNBO0FyRjAvWVI7O0FxRnQvWUE7RUFDSTtBckZ5L1lKO0FxRngvWUk7RUFDSTtFQUNBO0FyRjAvWVI7QXFGeC9ZSTtFQUNJLFlBOUZlO0FyRndsWnZCO0FxRnovWVE7RUFDSSxZQS9GVztBckYwbFp2Qjs7QXFGdC9ZQTtFQUNJO0FyRnkvWUo7QXFGeC9ZSTtFQUNJO0VBQ0E7QXJGMC9ZUjtBcUZ4L1lJO0VBQ0ksWUEzR2U7QXJGcW1adkI7QXFGei9ZUTtFQUNJLFlBOUdXO0FyRnltWnZCOztBcUZ0L1lBO0FBRUE7RUFDSTtBckZ3L1lKOztBcUZyL1lBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZ3L1lKO0FxRnYvWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZ5L1lSO0FxRngvWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRjAvWVo7QXFGei9ZWTtFQUNJO0FyRjIvWWhCO0FxRjEvWWdCO0VBQ0ksVUFwSks7QXJGZ3BaekI7QXFGei9ZWTtFQUNJO0VBQ0E7RUFDQTtFQUNBLFlBOUpNO0VBK0pOO0VBQ0E7RUFDQSxvQkF4S0k7RUF5S0osY0FqS0M7RUFrS0Q7RUFDQTtFQUNBLFlBektFO0VBMEtGLGFBbEtXO0VBbUtYO0VBQ0E7QXJGMi9ZaEI7QXFGeC9ZUTtFQUNJLFlBaExNO0VBaUxOLGFBM0tZO0FyRnFxWnhCOztBQS9xWkE7QUFDQTtBQUNBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQWtyWko7O0FBL3FaQTs7Ozs7Ozs7O0VBU0k7QUFrclpKOztBQS9xWkE7RUFDSTtBQWtyWko7O0FBL3FaQTs7RUFFSTtBQWtyWko7O0FBL3FaQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWtyWko7O0FBL3FaQTtFQUNJO0FBa3JaSjs7QUEvcVpBO0VBQ0k7QUFrclpKOztBQTlxWkE7RUFDSTtFQUNBO0FBaXJaSjs7QUE5cVpBO0VBQ0k7RUFDQTtBQWlyWko7O0FBOXFaQTtFQUNJO0VBQ0E7QUFpclpKOztBQTlxWkE7RUFDSTtFQUNBO0FBaXJaSjs7QUE3cVpBO0VBQ0k7RUFDQTtBQWdyWko7O0FBN3FaQTtFQUNJO0VBQ0E7QUFnclpKOztBQTdxWkE7RUFDSTtFQUNBO0FBZ3JaSjs7QUE3cVpBO0VBQ0k7RUFDQTtBQWdyWko7O0FBN3FaQTtFQUNJO0VBQ0E7QUFnclpKOztBQTdxWkE7RUFDSTtFQUNBO0FBZ3JaSjs7QUE3cVpBO0VBQ0k7RUFDQTtBQWdyWko7QWdCenRaSTtFaEJ1Q0o7SUFLUTtJQUNBO0VBaXJaTjtBQUNGOztBQTlxWkE7RUFDSTtFQUNBO0FBaXJaSjtBZ0JwdVpJO0VoQmlESjtJQUtRO0lBQ0E7RUFrclpOO0FBQ0Y7O0FBL3FaQTtFQUNJLGNzRjFIWTtBdEY0eVpoQjs7QUEvcVpBO0VBQ0k7QUFrclpKOztBQS9xWkE7RUFDSTtBQWtyWko7O0FBL3FaQTtFQUNJO0FBa3JaSjs7QUEvcVpBO0VBQ0k7QUFrclpKOztBQS9xWkE7RUFDSTtBQWtyWko7O0FBL3FaQTtFQUNJO0FBa3JaSjs7QUEvcVpBO0VBQ0k7QUFrclpKOztBQS9xWkE7RUFDSTtBQWtyWko7O0FBL3FaQTtFQUNJO0FBa3JaSjs7QUEvcVpBO0VBQ0k7QUFrclpKOztBQS9xWkE7RUFDSTtBQWtyWko7O0FBL3FaQTtFQUNJO0FBa3JaSjs7QUEvcVpBO0VBQ0k7QUFrclpKOztBQS9xWkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWtyWko7QWdCNXlaSTtFaEJtSEo7SUFVUTtJQUNBO0VBbXJaTjtBQUNGOztBQWhyWkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBbXJaSjtBZ0I3elpJO0VoQmtJSjtJQVdRO0lBQ0E7RUFvclpOO0FBQ0Y7QUFsclpJO0VBQ0k7QUFvclpSOztBQWhyWkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW1yWko7QWdCaDFaSTtFaEJzSko7SUFVUTtJQUNBO0VBb3JaTjtBQUNGOztBQWpyWkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBb3JaSjs7QUFqclpBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW9yWko7O0FBanJaQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFvclpKOztBQWhyWkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBbXJaSjtBZ0J0M1pJO0VoQjhMSjtJQVFRO0lBQ0E7SUFDQTtFQW9yWk47QUFDRjs7QUFqclpBO0VBQ0k7QUFvclpKOztBQWpyWkE7RUFDSTtBQW9yWko7O0FBanJaQTtFQUNJO0VBQ0E7QUFvclpKOztBQWpyWkE7RUFDSTtBQW9yWko7O0FBanJaQTtFQUNJO0FBb3JaSjs7QUFqclpBO0VBQ0k7QUFvclpKO0FnQnQ1Wkk7RWhCaU9KO0lBSVE7RUFxclpOO0FBQ0Y7O0FBbHJaQTtFQUNJO0FBcXJaSjtBZ0IvNVpJO0VoQnlPSjtJQUlRO0VBc3JaTjtBQUNGOztBQW5yWkE7RUFDSTtBQXNyWko7QWdCeDZaSTtFaEJpUEo7SUFJUTtFQXVyWk47QUFDRjs7QUFwclpBO0VBQ0k7QUF1clpKO0FnQmo3Wkk7RWhCeVBKO0lBSVE7RUF3clpOO0FBQ0Y7O0FBcnJaQTtFQUNJO0FBd3JaSjtBZ0IxN1pJO0VoQmlRSjtJQUlRO0VBeXJaTjtBQUNGOztBQXRyWkE7RUFDSTtBQXlyWko7QWdCbjhaSTtFaEJ5UUo7SUFJUTtFQTByWk47QUFDRjs7QUF2clpBO0VBQ0k7QUEwclpKO0FnQjU4Wkk7RWhCaVJKO0lBSVE7RUEyclpOO0FBQ0Y7O0FnQmo5Wkk7RWhCeVJKO0lBRVE7RUEyclpOO0FBQ0Y7O0FnQnY5Wkk7RWhCK1JKO0lBRVE7RUEyclpOO0FBQ0Y7O0FBeHJaQTtFQUNJO0FBMnJaSjtBZ0JqK1pJO0VoQnFTSjtJQUlRO0VBNHJaTjtBQUNGOztBQXpyWkE7RUFDSTtBQTRyWko7QWdCMStaSTtFaEI2U0o7SUFJUTtFQTZyWk47QUFDRjs7QUExclpBO0VBQ0k7QUE2clpKO0FnQm4vWkk7RWhCcVRKO0lBSVE7RUE4clpOO0FBQ0Y7O0FBM3JaQTtFQUNJO0FBOHJaSjtBZ0I1L1pJO0VoQjZUSjtJQUlRO0VBK3JaTjtBQUNGOztBQTVyWkE7RUFDSTtBQStyWko7QWdCcmdhSTtFaEJxVUo7SUFJUTtFQWdzWk47QUFDRjs7QUE3clpBO0VBQ0k7QUFnc1pKO0FnQjlnYUk7RWhCNlVKO0lBSVE7RUFpc1pOO0FBQ0Y7O0FnQm5oYUk7RWhCcVZKO0lBRVE7RUFpc1pOO0FBQ0Y7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtFQUNBO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7QWdCanBhSTtFaEJzZEo7SUFJUTtFQTJyWk47QUFDRjs7QUF4clpBO0VBQ0k7QUEyclpKO0FnQjFwYUk7RWhCOGRKO0lBSVE7RUE0clpOO0FBQ0Y7O0FBenJaQTtFQUNJO0FBNHJaSjs7QUF6clpBO0VBQ0k7RUFDQTtBQTRyWko7O0FBeHJaSTtFQUNJO0FBMnJaUjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7RUFDQTtBQTByWko7O0FBdnJaQTtFQUNJO0FBMHJaSjs7QUF2clpBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUEwclpKOztBQXZyWkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBMHJaSjs7QUF2clpBO0VBQ0k7QUEwclpKOztBQXZyWkE7RUFDSTtBQTByWko7O0FBdnJaQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEwclpKO0FnQm51YUk7RWhCaWlCSjtJQVdRO0lBQ0E7RUEyclpOO0FBQ0Y7QUF4clpJO0VBQ0k7RUFDQTtBQTByWlI7O0FBdHJaQTtBQUNBO0FBQ0E7QUFHSTs7RUFDSTtBQXdyWlI7QUFyclpJOztFQUNJO0VBQ0E7RUFDQTtBQXdyWlI7QUFyclpJOztFQUNJO0FBd3JaUjs7QUFwclpBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXVyWko7QUFyclpJO0VBQ0k7RUFDQTtBQXVyWlI7O0FBbnJaQTtBQUNBO0FBQ0E7QUFFSTtFQUNJO0FBcXJaUjtBQW5yWlE7RUFDSTtBQXFyWlo7QWdCeHhhSTtFaEJrbUJJO0lBSVE7RUFzclpkO0FBQ0Y7QUFsclpZO0VBQ0k7QUFvclpoQjtBQWpyWm9CO0VBQ0k7RUFDQTtBQW1yWnhCO0FBL3FaZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQWlyWnBCO0FBOXFaZ0I7RUFDSTtFQUNBO0FBZ3JacEI7QUE1cVpvQjtFQUNJO0FBOHFaeEI7QUF0cVpRO0VBQ0k7QUF3cVpaO0FBcHFaSTtFQUNJO0FBc3FaUjtBQWxxWlE7RUFDSTtFQUNBO0FBb3FaWjtBQWhxWlk7RUFDSTtBQWtxWmhCO0FBNXBaUTtFQUNJO0VBQ0E7QUE4cFpaO0FBMXBaWTtFQUNJO0FBNHBaaEI7O0FBdHBaQTtBQUNBO0FBQ0E7QUFDQTtFQUNJO0FBeXBaSjs7QUF0cFpBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUF5cFpKO0FBdnBaSTtFQU5KO0lBT1E7SUFDQTtFQTBwWk47QUFDRjs7QUF2cFpBO0VBQ0k7RUFDQTtFQUNBO0FBMHBaSjs7QUF2cFpBO0VBQ0k7QUEwcFpKOztBQXRwWkk7RUFDSTtBQXlwWlI7QUF0cFpJO0VBQ0k7RUFDQTtBQXdwWlI7QUFwcFpRO0VBQ0k7QUFzcFpaO0FBbnBaUTtFQUNJO0FBcXBaWjtBQWxwWlE7RUFDSTtBQW9wWlo7QUFqcFpRO0VBQ0k7QUFtcFpaO0FBL29aWTtFQUNJO0FBaXBaaEI7QUE1b1pJO0VBQ0k7QUE4b1pSO0FBM29aSTtFQUNJO0FBNm9aUjs7QUF6b1pBO0FBQ0E7QUFDQTtBQUNBO0VBQ0k7QUE0b1pKO0FBMW9aSTtFQUNJO0FBNG9aUjtBQXpvWkk7RUFDSTtBQTJvWlI7QUF4b1pJO0VBQ0k7QUEwb1pSO0FnQmg1YUk7RWhCcXdCQTtJQUlRO0VBMm9aVjtBQUNGO0FBeG9aSTtFQUNJO0FBMG9aUjtBQXhvWlE7RUFDSTtFQUNBO0FBMG9aWjtBQXRvWlk7RUFDSTtBQXdvWmhCO0FBbm9aSTtFQUNJO0FBcW9aUjtBQWxvWkk7RUFDSTtBQW9vWlI7QUFqb1pJO0VBQ0k7QUFtb1pSO0FBaG9aSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFrb1pSOztBQTluWkE7QUFDQTtBQUNBO0FBRUk7RUFDSTtFQUNBO0VBQ0E7QUFnb1pSOztBQTVuWkE7RUFDSTtBQStuWko7QUE3blpJO0VBQ0k7RUFDQTtBQStuWlI7O0FBMW5aSTtFQUNJO0VBQ0E7QUE2blpSOztBQXhuWkk7RUFDSTtBQTJuWlI7QUF4blpJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTBuWlI7QUF4blpRO0VBQ0k7QUEwblpaO0FnQm45YUk7RWhCdzFCSTtJQUlRO0VBMm5aZDtBQUNGO0FBdm5aWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXluWmhCO0FBdG5aWTtFQUNJO0FBd25aaEI7QUFwblpRO0VBQ0k7QUFzblpaO0FBbm5aUTtFQUNJO0FBcW5aWjtBQW5uWlk7RUFDSTtBQXFuWmhCO0FBaG5aWTtFQUNJO0FBa25aaEI7QUEvbVpZO0VBQ0k7QUFpblpoQjs7QUF6bVpJO0VBQ0k7RUFDQTtBQTRtWlI7QUF2bVpROztFQUNJO0VBQ0E7QUEwbVpaO0FBdm1aUTs7RUFDSTtBQTBtWlo7QUF0bVpJO0VBQ0k7QUF3bVpSO0FBdG1aUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF3bVpaO0FBcm1aUTtFQUNJO0VBQ0E7QUF1bVpaO0FBbm1aWTtFQUNJO0FBcW1aaEI7QUFsbVpZO0VBQ0k7RUFDQTtBQW9tWmhCO0FBL2xaSTtFQUNJO0FBaW1aUjtBQTlsWkk7RUFDSTtBQWdtWlI7QUE3bFpJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUErbFpSO0FBNWxaSTtFQUNJO0VBQ0E7QUE4bFpSO0FBNWxaUTtFQUNJO0VBQ0E7RUFDQTtBQThsWlo7QUExbFpJOztFQUVJO0FBNGxaUjtBQXpsWkk7O0VBRUk7RUFDQTtBQTJsWlI7QWdCNWpiSTtFaEI4OUJBOztJQU1RO0VBNmxaVjtBQUNGO0FBMWxaSTtFQUNJO0FBNGxaUjtBQXpsWkk7RUFDSTtBQTJsWlI7QUF2bFpJO0VBQ0k7RUFDQTtFQUNBO0FBeWxaUjs7QUFybFpBO0VBQ0k7QUF3bFpKO0FnQmpsYkk7RWhCdy9CSjtJQUlRO0VBeWxaTjtBQUNGO0FBdmxaSTtFQUNJO0VBQ0E7RUFDQTtBQXlsWlI7QUF2bFpRO0VBQ0k7QUF5bFpaO0FBdGxaUTtFQUNJO0FBd2xaWjtBQXJsWlE7RUFDSTtFQUNBO0FBdWxaWjtBQXBsWlE7RUFDSTtFQUNBO0FBc2xaWjtBQWxsWkk7RUFDSTtFQUNBO0VBQ0E7QUFvbFpSO0FBbGxaUTtFQUNJO0FBb2xaWjtBZ0JqbmJJO0VoQjRoQ0k7SUFJUTtFQXFsWmQ7QUFDRjtBZ0J0bmJJO0VoQjRoQ0k7SUFRUTtFQXNsWmQ7QUFDRjtBQXBsWlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBc2xaaEI7QUFsbFpRO0VBQ0k7QUFvbFpaO0FBamxaUTtFQUNJO0VBQ0E7QUFtbFpaO0FBaGxaUTtFQUNJO0VBQ0E7QUFrbFpaO0FBL2taUTtFQUNJO0VBQ0E7QUFpbFpaO0FBOWtaUTtFQUNJO0VBQ0E7QUFnbFpaO0FBN2taUTtFQUNJO0VBQ0E7QUEra1paO0FBNWtaUTtFQUNJO0VBQ0E7QUE4a1paOztBZ0IxcWJJO0VoQmttQ0E7SUFFUTtFQTJrWlY7QUFDRjtBQXhrWkk7RUFDSTtBQTBrWlI7QUF4a1pRO0VBQ0k7QUEwa1paO0FBdGtaWTtFQUNJO0FBd2taaEI7QUFwa1pRO0VBQ0k7QUFza1paOztBQWprWkE7RUFDSTtBQW9rWko7QUFsa1pJO0VBQ0k7RUFDQTtFQUNBO0FBb2taUjtBZ0J4cmJJO0VoQmluQ0E7SUFNUTtFQXFrWlY7QUFDRjtBZ0I3cmJJO0VoQmluQ0E7SUFVUTtFQXNrWlY7QUFDRjtBQXBrWlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBc2taWjtBQXBrWlk7RUFDSTtBQXNrWmhCO0FBbGtaZ0I7RUFDSTtBQW9rWnBCO0FBN2paUTtFQUNJO0FBK2paWjs7QUF6alpBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTRqWko7QUExalpJO0VBQ0k7QUE0alpSO0FBeGpaUTtFQUNJO0FBMGpaWjs7QUFyalpBO0FBQ0E7QUFDQTtBQUVJO0VBQ0k7RUFDQTtBQXVqWlI7QWdCeHViSTtFaEIrcUNBO0lBS1E7RUF3alpWO0FBQ0Y7O0FBampaSTtFQUNJO0FBb2paUjtBQWpqWkk7RUFDSTtBQW1qWlI7QUFoalpJO0VBQ0k7RUFDQTtBQWtqWlI7QUFoalpRO0VBQ0k7QUFralpaO0FBOWlaSTtFQUNJO0FBZ2paUjtBQTdpWkk7O0VBRUk7QUEraVpSO0FnQmx3Ykk7RWhCaXRDQTs7SUFLUTtFQWlqWlY7QUFDRjs7QUE1aVpJO0VBQ0k7QUEraVpSO0FnQjV3Ykk7RWhCNHRDQTtJQUlRO0VBZ2paVjtBQUNGOztBQTNpWkk7RUFDSTtBQThpWlI7QUEzaVpJO0VBQ0k7QUE2aVpSO0FBMWlaSTtFQUNJO0FBNGlaUjtBQXhpWlE7RUFDSTtBQTBpWlo7O0FBcGlaSTtFQUNJO0FBdWlaUjtBQXBpWkk7RUFDSTtBQXNpWlI7QUFwaVpRO0VBQ0k7QUFzaVpaOztBQWhpWkk7RUFDSTtBQW1pWlI7QWdCNXliSTtFaEJ3d0NBO0lBSVE7RUFvaVpWO0FBQ0Y7O0FBL2haSTtFQUNJO0FBa2laUjtBZ0JyemJJO0VoQmt4Q0E7SUFJUTtFQW1pWlY7QUFDRjs7QUE5aFpJO0VBQ0k7RUFDQTtBQWlpWlI7QUE3aFpRO0VBQ0k7QUEraFpaO0FnQmwwYkk7RWhCa3lDSTtJQUlRO0VBZ2laZDtBQUNGOztBQTFoWkk7RUFDSTtFQUNBO0FBNmhaUjtBQTNoWlE7RUFDSTtFQUNBO0VBQ0E7QUE2aFpaO0FnQmoxYkk7RWhCaXpDSTtJQU1RO0lBQ0E7SUFDQTtJQUNBO0VBOGhaZDtBQUNGO0FBM2haUTtFQUNJO0VBQ0E7RUFDQTtBQTZoWlo7QWdCOTFiSTtFaEI4ekNJO0lBTVE7SUFDQTtJQUNBO0VBOGhaZDtBQUNGO0FBM2haUTtFQUNJO0VBQ0E7RUFDQTtBQTZoWlo7QWdCMTJiSTtFaEIwMENJO0lBTVE7SUFDQTtJQUNBO0lBQ0E7RUE4aFpkO0FBQ0Y7QUEzaFpRO0VBQ0k7RUFDQTtFQUNBO0FBNmhaWjtBZ0J2M2JJO0VoQnUxQ0k7SUFNUTtJQUNBO0lBQ0E7SUFDQTtFQThoWmQ7QUFDRjtBQTNoWlE7RUFDSTtFQUNBO0VBQ0E7QUE2aFpaO0FnQnA0Ykk7RWhCbzJDSTtJQU1RO0lBQ0E7SUFDQTtJQUNBO0VBOGhaZDtBQUNGO0FBM2haUTtFQUNJO0VBQ0E7RUFDQTtBQTZoWlo7QWdCajViSTtFaEJpM0NJO0lBTVE7SUFDQTtJQUNBO0VBOGhaZDtBQUNGO0FBMWhaWTtFQUNJO0FBNGhaaEI7QUF6aFpZO0VBQ0k7QUEyaFpoQjtBQXhoWlk7RUFDSTtBQTBoWmhCO0FBdmhaWTtFQUNJO0FBeWhaaEI7QUF0aFpZO0VBQ0k7QUF3aFpoQjtBQXJoWlk7RUFDSTtBQXVoWmhCOztBQWpoWkE7QUFDQTtBQUNBO0FBRUk7RUFDSTtBQW1oWlI7O0FnQjk3Ykk7RWhCZzdDQTtJQUVRO0lBQ0E7SUFDQTtFQWloWlY7QUFDRjtBQS9nWlE7RUFDSTtBQWloWlo7QUE3Z1pJO0VBQ0k7QUErZ1pSO0FBNWdaSTtFQUNJO0VBQ0E7QUE4Z1pSO0FBM2daSTtFQUNJO0FBNmdaUjs7QUF6Z1pBO0FBQ0E7QUFDQTtBZ0I1OENJO0VoQjg4Q0E7SUFFUTtJQUNBO0lBQ0E7RUEyZ1pWO0FBQ0Y7QUF6Z1pRO0VBQ0k7QUEyZ1paOztBQXJnWkk7RUFDSTtFQUNBO0VBQ0E7QUF3Z1pSO0FBcmdaSTtFQUNJO0VBQ0E7QUF1Z1pSOztBQWhnWkk7OztFQUNJO0VBQ0E7QUFxZ1pSOztBQWhnWkk7RUFDSTtFQUNBO0FBbWdaUjs7QUE5L1lBO0FBQ0E7QUFDQTtBQUNBO0VBQ0k7QUFpZ1pKO0FBLy9ZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBaWdaUjtBQTkvWUk7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7QUFnZ1pSO0FBOS9ZUTs7RUFDSTtFQUNBO0FBaWdaWjtBQTUvWVE7RUFDSTtBQTgvWVo7QWdCdGdjSTtFaEIyZ0RJO0lBRVE7RUE2L1lkO0FBQ0Y7QUF6L1lJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUEyL1lSO0FBei9ZUTtFQUNJO0FBMi9ZWjtBQXYvWVk7RUFDSTtBQXkvWWhCO0FBci9ZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBdS9ZWjtBQXIvWVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBdS9ZaEI7QUFuL1lRO0VBQ0k7RUFDQTtBQXEvWVo7QUFsL1lRO0VBQ0k7QUFvL1laO0FBbC9ZWTs7RUFFSTtBQW8vWWhCO0FBbC9ZZ0I7O0VBQ0k7QUFxL1lwQjtBQS8rWUk7O0VBRUk7RUFDQTtBQWkvWVI7QUE5K1lJO0VBQ0k7QUFnL1lSO0FBNytZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBKytZUjtBQTUrWUk7RUFDSTtFQUNBO0FBOCtZUjtBQTUrWVE7RUFDSTtFQUNBO0VBQ0E7QUE4K1laO0FBMStZSTs7RUFFSTtBQTQrWVI7QUF6K1lJOztFQUVJO0VBQ0E7QUEyK1lSO0FnQi9sY0k7RWhCaW5EQTs7SUFNUTtFQTYrWVY7QUFDRjtBQTErWUk7RUFDSTtBQTQrWVI7QUF6K1lJO0VBQ0k7QUEyK1lSO0FBeCtZSTtFQUNJO0VBQ0E7QUEwK1lSOztBQXArWUk7RUFDSTtBQXUrWVI7QUFyK1lROztFQUVJO0VBQ0E7RUFDQTtFQUNBO0FBdStZWjtBQXIrWVk7O0VBQ0k7QUF3K1loQjtBQW4rWUk7RUFDSTtBQXErWVI7QUFsK1lJO0VBQ0k7QUFvK1lSO0FBaitZSTtFQUNJO0VBQ0E7QUFtK1lSO0FBaCtZSTs7RUFFSTtFQUNBO0FBaytZUjtBQS85WUk7RUFDSTtBQWkrWVI7O0FBNzlZQTtBQUNBO0FBQ0E7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBZytZSjs7QUE3OVlBO0VBQ0k7QUFnK1lKO0FnQjlwY0k7RWhCNnJESjtJQUlRO0VBaStZTjtBQUNGOztBQTk5WUE7RUFDSTtFQUNBO0FBaStZSjs7QUE5OVlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWkrWUo7O0FBOTlZQTtBQUNBO0FBQ0E7QUFDQTtFQUNJO0FBaStZSjtBQS85WUk7RUFDSTtBQWkrWVI7O0FBNzlZQTtFQUNJO0FBZytZSjtBQTk5WUk7RUFDSTtFQUNBO0FBZytZUjs7QUE1OVlBO0VBQ0k7QUErOVlKO0FBNzlZSTtFQUNJO0VBQ0E7RUFDQTtBQSs5WVI7O0FBMzlZQTtBQUNBO0FBQ0E7QUFFSTtFQUNJO0VBQ0E7QUE2OVlSOztBQXg5WUk7RUFDSTtFQUNBO0FBMjlZUjs7QUF2OVlBO0VBQ0k7QUEwOVlKO0FBeDlZSTtFQUNJO0FBMDlZUjtBQXg5WVE7RUFDSTtFQUNBO0FBMDlZWjs7QUFyOVlBO0VBQ0k7QUF3OVlKO0FBdDlZSTtFQUNJO0FBdzlZUjs7QUFuOVlJO0VBQ0k7RUFDQTtBQXM5WVI7O0FBaDlZUTtFQUNJO0FBbTlZWjtBQS84WVk7RUFDSTtBQWk5WWhCO0FBOThZWTtFQUNJO0FBZzlZaEI7QUExOFlRO0VBQ0k7QUE0OFlaO0FBeDhZWTtFQUNJO0FBMDhZaEI7QUF2OFlZO0VBQ0k7QUF5OFloQjs7QUFuOFlBO0VBQ0k7QUFzOFlKO0FBcDhZSTtFQUNJO0FBczhZUjs7QUFqOFlJO0VBQ0k7RUFDQTtBQW84WVI7O0FBaDhZQTtBQUNBO0FBQ0E7QUFHSTtFQUNJO0FBaThZUjs7QUE3N1lBO0FBQ0E7QUFDQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0FBZzhZSjtBQTk3WUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQWc4WVI7O0FBNTdZQTtFQUNJO0VBQ0E7RUFDQTtBQSs3WUo7O0FBNTdZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUErN1lKOztBQTU3WUE7RUFDSTtFQUNBO0FBKzdZSjs7QUE1N1lBO0VBQ0k7RUFDQTtFQUNBO0FBKzdZSjs7QUE1N1lBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUErN1lKOztBQTU3WUE7RUFDSTtFQUNBO0FBKzdZSjs7QUE1N1lBO0VBQ0k7RUFDQTtBQSs3WUo7O0FBNTdZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUErN1lKOztBQTU3WUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBKzdZSjs7QUE1N1lBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQSs3WUo7O0FBNTdZQTtBQUNBO0FBQ0E7QUFJUTtFQUNJO0FBNDdZWjtBQXo3WVE7RUFDSTtBQTI3WVo7QUF2N1lJO0VBQ0k7QUF5N1lSO0FBdDdZSTtFQUNJO0FBdzdZUjtBQXA3WVE7RUFDSTtBQXM3WVo7QWdCejNjSTtFaEJrOERJO0lBSVE7RUF1N1lkO0FBQ0Y7QUFsN1lRO0VBQ0k7QUFvN1laOztBQS82WUE7QUFDQTtBQUNBO0FBR0k7RUFDSTtBQWc3WVI7O0FBMzZZSTtFQUNJO0FBODZZUjtBZ0I1NGNJO0VoQjY5REE7SUFJUTtFQSs2WVY7QUFDRjtBQTU2WUk7RUFDSTtBQTg2WVI7QWdCajZjSTtFaEJrL0RBO0lBSVE7RUErNllWO0FBQ0Y7QWdCdDZjSTtFaEIyL0RJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQTg2WVY7RUEzNllNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQTY2WVY7QUFDRjtBZ0J0N2NJO0VoQjhnRUk7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFQTI2WVY7RUF4NllNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQTA2WVY7QUFDRjs7QUFyNllJO0VBQ0k7RUFDQTtFQUNBO0FBdzZZUjtBQXI2WUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF1NllSOztBQW42WUE7QUFDQTtBQUNBO0FBRUk7RUFDSTtFQUNBO0VBQ0E7QUFxNllSO0FBbjZZUTtFQUNJO0VBQ0E7RUFDQTtBQXE2WVo7QUFqNllJO0VBQ0k7RUFDQTtFQUNBO0FBbTZZUjtBQWo2WVE7RUFDSTtFQUNBO0VBQ0E7QUFtNllaO0FBLzVZSTtFQUNJO0FBaTZZUjtBQTc1WVE7RUFDSTtBQSs1WVo7QUE1NVlRO0VBQ0k7RUFDQTtBQTg1WVo7QUF6NVlnQjtFQUNJO0FBMjVZcEI7QUF4NVlnQjtFQUNJO0FBMDVZcEI7QUF0NVlZO0VBQ0k7RUFDQTtBQXc1WWhCO0FBdDVZZ0I7RUFDSTtBQXc1WXBCO0FBajVZZ0I7RUFDSTtBQW01WXBCO0FBaDVZZ0I7RUFDSTtBQWs1WXBCOztBQXg0WUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEyNFlSO0FBejRZUTtFQUNJO0VBQ0E7RUFDQTtBQTI0WVo7O0FBcDRZSTtFQUNJO0FBdTRZUjtBQXA0WUk7RUFDSTtBQXM0WVI7QUFwNFlRO0VBQ0k7RUFDQTtFQUNBO0FBczRZWjtBQW40WVE7RUFDSTtFQUNBO0FBcTRZWjtBQWo0WUk7RUFDSTtBQW00WVI7O0FBLzNZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBazRZSjs7QUEvM1lBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWs0WUo7O0FBLzNZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFrNFlKOztBQS8zWUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBazRZSjs7QUEvM1lBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFrNFlKOztBQTkzWUE7RUFDSTtJQUNJO0VBaTRZTjtBQUNGO0FBOTNZQTtBQUNBO0FBQ0E7QUFHSTtFQUNJO0FBODNZUjtBQTMzWUk7RUFDSTtBQTYzWVI7QUEzM1lRO0VBQ0k7QUE2M1laOztBQXgzWUE7RUFDSTtBQTIzWUo7O0FBeDNZQTtBQUNBO0FBQ0E7QUFHSTtFQUNJO0VBQ0E7QUF5M1lSO0FnQmhtZEk7RWhCcXVFQTtJQUtRO0VBMDNZVjtBQUNGO0FBdjNZSTtFQUNJO0FBeTNZUjtBZ0J4bWRJO0VoQjh1RUE7SUFJUTtFQTAzWVY7QUFDRjtBQXYzWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXkzWVI7QWdCbm5kSTtFaEJzdkVBO0lBT1E7SUFDQTtJQUNBO0VBMDNZVjtBQUNGO0FBdjNZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBeTNZUjtBZ0Job2RJO0VoQm13RUE7SUFPUTtJQUNBO0lBQ0E7RUEwM1lWO0FBQ0Y7QUF2M1lJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUF5M1lSO0FnQjdvZEk7RWhCZ3hFQTtJQU9RO0lBQ0E7SUFDQTtFQTAzWVY7QUFDRjtBQXYzWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXkzWVI7QWdCMXBkSTtFaEI2eEVBO0lBT1E7SUFDQTtJQUNBO0VBMDNZVjtBQUNGO0FBdjNZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBeTNZUjtBZ0J2cWRJO0VoQjB5RUE7SUFPUTtJQUNBO0lBQ0E7RUEwM1lWO0FBQ0Y7QUF2M1lJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUF5M1lSO0FnQnByZEk7RWhCdXpFQTtJQU9RO0lBQ0E7SUFDQTtFQTAzWVY7QUFDRjtBQXQzWUk7RUFFSTtJQUVJO0VBczNZVjtFQW4zWU07SUFFSTtFQW8zWVY7RUFqM1lNO0lBRUk7RUFrM1lWO0VBLzJZTTtJQUNJO0VBaTNZVjtBQUNGO0FBOTJZSTtFQUVJO0lBRUk7RUE4MllWO0VBMzJZTTtJQUVJO0VBNDJZVjtFQXoyWU07SUFFSTtFQTAyWVY7RUF2MllNO0lBQ0k7RUF5MllWO0FBQ0Y7QUF0MllJO0VBRUk7SUFFSTtFQXMyWVY7RUFuMllNO0lBRUk7RUFvMllWO0VBajJZTTtJQUVJO0VBazJZVjtFQS8xWU07SUFDSTtFQWkyWVY7QUFDRjtBQTkxWUk7RUFFSTtJQUVJO0VBODFZVjtFQTMxWU07SUFFSTtFQTQxWVY7RUF6MVlNO0lBRUk7RUEwMVlWO0VBdjFZTTtJQUNJO0VBeTFZVjtBQUNGOztBQXIxWUE7QUFDQTtBQUNBO0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF1MVlKOztBQW4xWUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBczFZSjs7QUFuMVlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBczFZSjs7QUFuMVlBO0FBQ0E7QUFDQTtBQUdJO0VBQ0k7RUFDQTtBQW8xWVI7QUFqMVlJO0VBQ0k7RUFDQTtBQW0xWVI7QUFoMVlJO0VBQ0k7RUFDQTtBQWsxWVI7QUEvMFlJO0VBQ0k7RUFDQTtBQWkxWVI7QUE5MFlJO0VBQ0k7RUFDQTtBQWcxWVI7QUE3MFlJO0VBQ0k7RUFDQTtBQSswWVI7O0FBMzBZQTtFQUNJO0VBQ0E7QUE4MFlKOztBQTMwWUE7RUFDSTtBQTgwWUo7O0FBMzBZQTtFQUNJO0VBQ0E7QUE4MFlKOztBQTMwWUE7RUFDSTtBQTgwWUo7O0FBMzBZQTtFQUNJO0FBODBZSjs7QUEzMFlBO0VBQ0k7RUFDQTtFQUNBO0FBODBZSjs7QUEzMFlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTgwWUo7QUE1MFlJO0VBQ0k7QUE4MFlSOztBQTEwWUE7RUFDSTtBQTYwWUo7O0FBMTBZQTtFQUNJO0FBNjBZSjs7QUExMFlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTYwWUo7O0FBMTBZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE2MFlKOztBQTEwWUE7RUFDSTtBQTYwWUo7QWdCcjNkSTtFaEJ1aUZKO0lBSVE7SUFDQTtFQTgwWU47QUFDRjtBZ0J4NGRJO0VoQm9qRko7SUFTUTtJQUNBO0VBKzBZTjtBQUNGOztBQTUwWUE7RUFDSTtBQSswWUo7O0FBNTBZQTtFQUNJO0FBKzBZSjs7QUE1MFlBO0FBQ0E7QUFDQTtBQUNBO0VBQ0k7QUErMFlKO0FBNzBZSTtFQUNJO0FBKzBZUjs7QUEzMFlBO0VBQ0k7RUFDQTtFQUNBO0FBODBZSjs7QUEzMFlBO0VBQ0k7RUFDQTtBQTgwWUo7QWdCOTVkSTtFaEI4a0ZKO0lBS1E7SUFDQTtFQSswWU47QUFDRjtBZ0JqN2RJO0VoQjJsRko7SUFVUTtFQWcxWU47QUFDRjs7QUE3MFlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWcxWUo7O0FBNzBZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFnMVlKOztBQTcwWUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBZzFZSjs7QUE3MFlBO0FBQ0E7QUFDQTtBQUVJO0VBQ0k7RUFDQTtBQSswWVI7QUE3MFlRO0VBQ0k7RUFDQTtFQUNBO0FBKzBZWjs7QUF6MFlJO0VBQ0k7QUE0MFlSO0FBMTBZUTtFQUNJO0VBQ0E7QUE0MFlaO0FBeDBZSTtFQUNJO0FBMDBZUjtBQXgwWVE7RUFDSTtFQUNBO0VBQ0E7QUEwMFlaOztBQXAwWUE7QUFDQTtBQUNBO0FBRUk7RUFDSTtBQXMwWVI7QUFuMFlJO0VBQ0k7RUFDQTtBQXEwWVI7QWdCeitkSTtFaEJrcUZBO0lBS1E7RUFzMFlWO0FBQ0Y7QWdCOStkSTtFaEJrcUZBO0lBU1E7RUF1MFlWO0FBQ0Y7QUFyMFlRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXUwWVo7QWdCMS9kSTtFaEI4cUZJO0lBUVE7RUF3MFlkO0FBQ0Y7QUF0MFlZO0VBQ0k7RUFDQTtFQUNBO0FBdzBZaEI7QUF0MFlnQjtFQUNJO0VBQ0E7QUF3MFlwQjtBQXAwWVk7RUFDSTtFQUNBO0FBczBZaEI7QWdCNWdlSTtFaEJvc0ZRO0lBS1E7RUF1MFlsQjtBQUNGO0FBcjBZZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXUwWXBCO0FBcDBZZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBczBZcEI7QUFsMFlZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBbzBZaEI7QUFsMFlnQjs7O0VBR0k7RUFDQTtBQW8wWXBCO0FBajBZZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFtMFlwQjtBQWgwWWdCO0VBQ0k7RUFDQTtFQUNBO0FBazBZcEI7QUE1ellJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE4ellSO0FBM3pZSTtFQUNJO0VBQ0E7QUE2ellSO0FBM3pZUTtFQUNJO0VBQ0E7RUFDQTtBQTZ6WVo7QUF6ellJOztFQUVJO0FBMnpZUjtBQXh6WUk7O0VBRUk7RUFDQTtBQTB6WVI7QWdCaG1lSTtFaEJteUZBOztJQU1RO0VBNHpZVjtBQUNGO0FBenpZSTtFQUNJO0FBMnpZUjtBQXh6WUk7RUFDSTtBQTB6WVI7QUF0ellJO0VBQ0k7RUFDQTtFQUNBO0FBd3pZUjs7QUFuellJO0VBQ0k7RUFDQTtBQXN6WVI7QWdCdG5lSTtFaEI4ekZBO0lBS1E7RUF1ellWO0FBQ0Y7QWdCM25lSTtFaEI4ekZBO0lBU1E7RUF3ellWO0FBQ0Y7QUF0ellRO0VBQ0k7QUF3ellaO0FnQm5vZUk7RWhCODBGSTtJQUVRO0VBdXpZZDtBQUNGO0FBbnpZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBcXpZUjtBQWx6WUk7RUFDSTtFQUNBO0FBb3pZUjtBQWx6WVE7RUFDSTtFQUNBO0VBQ0E7QUFvellaO0FBaHpZSTs7RUFFSTtBQWt6WVI7QUEveVlJOztFQUVJO0VBQ0E7QUFpellSO0FnQnRxZUk7RWhCazNGQTs7SUFNUTtFQW16WVY7QUFDRjtBQWh6WUk7RUFDSTtBQWt6WVI7QUEveVlJO0VBQ0k7QUFpellSO0FBN3lZSTtFQUNJO0VBQ0E7RUFDQTtBQSt5WVI7O0FBenlZUTtFQUNJO0VBQ0E7QUE0eVlaO0FnQjVyZUk7RWhCODRGSTtJQUtRO0VBNnlZZDtBQUNGO0FBMXlZUTtFQUNJO0FBNHlZWjtBQTF5WVk7RUFDSTtBQTR5WWhCO0FBeHlZUTtFQUNJO0VBQ0E7RUFDQTtBQTB5WVo7O0FBcHlZSTtFQUNJO0VBQ0E7QUF1eVlSO0FnQmp0ZUk7RWhCdzZGQTtJQUtRO0VBd3lZVjtBQUNGOztBQW55WUk7RUFDSTtFQUNBO0FBc3lZUjtBQWx5WVE7RUFDSTtBQW95WVo7QWdCOXRlSTtFaEJ5N0ZJO0lBSVE7RUFxeVlkO0FBQ0Y7O0FBL3hZSTtFQUNJO0VBQ0E7RUFDQTtBQWt5WVI7QUFoeVlRO0VBQ0k7QUFreVlaO0FBL3hZUTtFQUNJO0VBQ0E7QUFpeVlaO0FBOXhZUTtFQUNJO0VBQ0E7QUFneVlaO0FBN3hZUTtFQUNJO0VBQ0E7RUFDQTtBQSt4WVo7QUE3eFlZO0VBQ0k7QUEreFloQjs7QUF6eFlBO0VBQ0k7QUE0eFlKO0FBMXhZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBNHhZUjtBZ0J0d2VJO0VoQnMrRkE7SUFPUTtJQUNBO0lBQ0E7RUE2eFlWO0FBQ0Y7QUExeFlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTR4WVI7QWdCcHhlSTtFaEJtL0ZBO0lBUVE7SUFDQTtJQUNBO0VBNnhZVjtBQUNGO0FBMXhZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBNHhZUjtBZ0JqeWVJO0VoQmlnR0E7SUFPUTtJQUNBO0lBQ0E7RUE2eFlWO0FBQ0Y7QUExeFlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTR4WVI7QWdCL3llSTtFaEI4Z0dBO0lBUVE7SUFDQTtJQUNBO0VBNnhZVjtBQUNGO0FBMXhZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBNHhZUjtBZ0I1emVJO0VoQjRoR0E7SUFPUTtJQUNBO0lBQ0E7RUE2eFlWO0FBQ0Y7QUExeFlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUE0eFlSO0FnQnowZUk7RWhCeWlHQTtJQU9RO0lBQ0E7RUE2eFlWO0FBQ0Y7QUF6eFlRO0VBQ0k7RUFDQTtFQUNBO0FBMnhZWjtBQXh4WVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQTB4WVo7QUF2eFlRO0VBQ0k7RUFDQTtFQUNBO0FBeXhZWjtBQXR4WVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXd4WVo7QUFyeFlRO0VBQ0k7RUFDQTtFQUNBO0FBdXhZWjtBQXB4WVE7RUFDSTtFQUNBO0VBQ0E7QUFzeFlaOztBQWp4WUE7RUFDSTtBQW94WUo7QUFseFlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFveFlSO0FBbHhZUTtFQUNJO0FBb3hZWjtBQWh4WVk7RUFDSTtBQWt4WWhCOztBQTN3WUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQTh3WVI7QUEzd1lJO0VBQ0k7QUE2d1lSO0FnQno0ZUk7RWhCMm5HQTtJQUlRO0VBOHdZVjtBQUNGO0FBM3dZSTtFQUNJO0VBQ0E7QUE2d1lSOztBQXp3WUE7QUFDQTtBQUNBO0FBR1E7RUFDSTtFQUNBO0FBMHdZWjtBQXh3WVk7RUFDSTtBQTB3WWhCO0FBcHdZUTtFQUNJO0VBQ0E7QUFzd1laO0FBbHdZSTtFQUNJO0FBb3dZUjtBQWp3WUk7RUFDSTtBQW13WVI7QUFod1lJO0VBQ0k7QUFrd1lSO0FBOXZZUTtFQUNJO0FBZ3dZWjs7QUExdllJO0VBQ0k7RUFDQTtBQTZ2WVI7QUExdllJO0VBQ0k7QUE0dllSOztBQXh2WUE7RUFDSTtFQUNBO0VBQ0E7QUEydllKO0FBenZZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEydllSO0FBenZZUTtFQUNJO0FBMnZZWjtBQXZ2WUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBeXZZUjtBQXZ2WVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXl2WVo7QUF0dllRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBd3ZZWjtBQXJ2WVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBdXZZWjtBQXB2WVE7RUFDSTtBQXN2WVo7QUFudllRO0VBQ0k7RUFDQTtFQUNBO0FBcXZZWjs7QUFodllBO0VBQ0k7RUFDQTtFQUNBO0FBbXZZSjtBQWp2WUk7RUFDSTtBQW12WVI7QUFqdllRO0VBQ0k7RUFDQTtBQW12WVo7QUEvdVlJO0VBQ0k7RUFDQTtBQWl2WVI7QUEvdVlRO0VBQ0k7QUFpdllaO0FBN3VZWTtFQUNJO0FBK3VZaEI7QUExdVlJO0VBQ0k7RUFDQTtBQTR1WVI7O0FBdnVZSTtFQUNJO0FBMHVZUjtBQXZ1WUk7RUFDSTtBQXl1WVI7QUF0dVlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXd1WVI7QUFydVlJO0VBQ0k7RUFDQTtFQUNBO0FBdXVZUjtBQXJ1WVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXV1WVo7O0FBaHVZUTtFQUNJO0FBbXVZWjtBQWp1WVk7RUFDSTtBQW11WWhCO0FBN3RZUTtFQUNJO0FBK3RZWjtBQTN0WUk7RUFDSTtBQTZ0WVI7QUExdFlJO0VBQ0k7QUE0dFlSO0FBenRZSTtFQUNJO0VBQ0E7RUFDQTtBQTJ0WVI7QUF2dFlRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBeXRZWjtBQXR0WVE7RUFDSTtFQUNBO0VBQ0E7QUF3dFlaOztBQWx0WUE7RUFDSTtBQXF0WUo7O0FBanRZSTtFQUNJO0FBb3RZUjtBQWp0WUk7RUFDSTtBQW10WVI7QUFodFlJO0VBQ0k7QUFrdFlSO0FBL3NZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFpdFlSO0FBOXNZSTtFQUNJO0VBQ0E7RUFDQTtBQWd0WVI7QUE5c1lRO0VBQ0k7RUFDQTtFQUNBO0FBZ3RZWjs7QUEzc1lBO0VBQ0k7QUE4c1lKO0FBNXNZSTtFQUNJO0FBOHNZUjtBQTNzWUk7RUFDSTtBQTZzWVI7QUExc1lJO0VBQ0k7QUE0c1lSO0FnQnBuZkk7RWhCdTZHQTtJQUlRO0VBNnNZVjtBQUNGOztBQXRzWVE7RUFDSTtBQXlzWVo7QUFyc1lZO0VBQ0k7QUF1c1loQjtBQWxzWUk7RUFDSTtBQW9zWVI7QWdCbm9mSTtFaEI4N0dBO0lBSVE7RUFxc1lWO0FBQ0Y7QUFuc1lROztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFxc1laO0FnQmhwZkk7RWhCcThHSTs7SUFTUTtJQUNBO0VBdXNZZDtBQUNGO0FBcHNZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFzc1laO0FBbnNZUTtFQUNJO0FBcXNZWjs7QUEvcllJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFrc1lSO0FnQnhxZkk7RWhCaytHQTtJQU9RO0lBQ0E7SUFDQTtJQUNBO0VBbXNZVjtBQUNGO0FBaHNZSTtFQUNJO0VBQ0E7RUFDQTtBQWtzWVI7QWdCcnJmSTtFaEJnL0dBO0lBTVE7SUFDQTtJQUNBO0VBbXNZVjtBQUNGO0FBaHNZSTtFQUNJO0VBQ0E7RUFDQTtBQWtzWVI7QWdCanNmSTtFaEI0L0dBO0lBTVE7SUFDQTtJQUNBO0lBQ0E7RUFtc1lWO0FBQ0Y7QUFoc1lJO0VBQ0k7RUFDQTtFQUNBO0FBa3NZUjtBZ0I5c2ZJO0VoQnlnSEE7SUFNUTtJQUNBO0lBQ0E7SUFDQTtFQW1zWVY7QUFDRjtBQWhzWUk7RUFDSTtFQUNBO0VBQ0E7QUFrc1lSO0FnQjN0Zkk7RWhCc2hIQTtJQU1RO0lBQ0E7SUFDQTtFQW1zWVY7QUFDRjtBQWhzWUk7RUFDSTtFQUNBO0VBQ0E7QUFrc1lSO0FnQnZ1Zkk7RWhCa2lIQTtJQU1RO0lBQ0E7SUFDQTtFQW1zWVY7QUFDRjs7QUE5cllBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFpc1lKO0FBL3JZSTtFQUNJO0VBQ0E7QUFpc1lSO0FBOXJZSTtFQUNJO0FBZ3NZUjs7QUEzcllBO0VBQ0k7RUFDQTtBQThyWUo7QUEzcllRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTZyWVo7QUF6cllZO0VBQ0k7RUFDQTtFQUNBO0FBMnJZaEI7O0FBcnJZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBd3JZSjtBQXRyWUk7RUFDSTtBQXdyWVI7QWdCdHlmSTtFaEI2bUhBO0lBSVE7RUF5cllWO0FBQ0Y7QUF0cllJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBd3JZUjtBQXRyWVE7RUFDSTtBQXdyWVo7O0FBbHJZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXFyWVI7QWdCL3pmSTtFaEJvb0hBO0lBU1E7SUFDQTtFQXNyWVY7QUFDRjtBQW5yWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXFyWVo7QUFscllRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFvcllaO0FBbHJZWTtFQUNJO0VBQ0E7RUFDQTtBQW9yWWhCO0FBanJZWTtFQUNJO0VBQ0E7RUFDQTtBQW1yWWhCO0FBL3FZUTtFQUNJO0VBQ0E7QUFpcllaO0FBN3FZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBK3FZUjtBZ0JyMmZJO0VoQmtySEE7SUFPUTtJQUNBO0VBZ3JZVjtBQUNGO0FBNXFZSTtFQUNJO0FBOHFZUjs7QUF6cVlJO0VBQ0k7SUFDSTtFQTRxWVY7RUF6cVlNO0lBQ0k7RUEycVlWO0FBQ0Y7QUF4cVlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUEwcVlSO0FBdnFZSTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF5cVlSO0FBdHFZSTtFQUNJO0VBQ0E7QUF3cVlSO0FBcnFZSTtFQUNJO0VBQ0E7QUF1cVlSO0FBcHFZSTtFQUNJO0FBc3FZUjtBQW5xWUk7RUFDSTtFQUNBO0FBcXFZUjtBQWxxWUk7RUFDSTtFQUNBO0FBb3FZUixDIiwiZmlsZSI6Ind3dy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiZm9udHNcIjtcbkBpbXBvcnQgXCJjb2xvcnNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwXCI7XG5AaW1wb3J0IFwidG9vbHNcIjtcbkBpbXBvcnQgXCJ+bWF0ZXJpYWwtaWNvbnMvaWNvbmZvbnQvbWF0ZXJpYWwtaWNvbnNcIjtcbkBpbXBvcnQgXCJ+c2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2tcIjtcbkBpbXBvcnQgXCJ+c2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2stdGhlbWVcIjtcblxuXG4vKioqKioqKioqKioqKi9cbi8qKiBFbGVtZW50ICoqL1xuLyoqKioqKioqKioqKiovXG4qIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucCxcbnNwYW4sXG5hIHtcbiAgICB1c2VyLXNlbGVjdDogdGV4dCAhaW1wb3J0YW50O1xufVxuXG5oMSB7XG4gICAgdGV4dC13cmFwOiBiYWxhbmNlO1xufVxuXG5oMyxcbnAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiAnT3BlblNhbnMnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY29sb3I6IHZhcigtLWRhcmspO1xuICAgIG1heC13aWR0aDogMTAwZHZ3O1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gNzBweCk7XG4gICAgcGFkZGluZy10b3A6IDcwcHg7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuLnNlbGVjdC1ub25lIHtcbiAgICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5hOmxpbmsge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLy8gSWNvbnNcbi5pY29uLWxnIHtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG59XG5cbi5pY29uLW1kIHtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG59XG5cbi5pY29uLXNtIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG5cbi5pY29uLXhsIHtcbiAgICBmb250LXNpemU6IDY0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDY0cHg7XG59XG5cbi8vIEZvbnRzXG4udGV4dC14cyB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjc1cmVtO1xufVxuXG4udGV4dC1zbSB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjg1cmVtO1xufVxuXG4udGV4dC1tZCB7XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjk1cmVtO1xufVxuXG4udGV4dC1sZyB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNHJlbTtcbn1cblxuLnRleHQteGxnIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42cmVtO1xufVxuXG4udGV4dC14bCB7XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDJyZW07XG59XG5cbi50ZXh0LTJ4bCB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMuMnJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS44cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4udGV4dC0zeGwge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMy41cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4udGV4dC1saWdodC1wcmltYXJ5IHtcbiAgICBjb2xvcjogJGxpZ2h0LXByaW1hcnk7XG59XG5cbi50ZXh0LXVuZGVybGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY3Jvc3NlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbi50ZXh0LW5vd3JhcCB7XG4gICAgdGV4dC13cmFwOiBub3dyYXA7XG59XG5cbi5zbmlnbGV0IHtcbiAgICBmb250LWZhbWlseTogJ1NuaWdsZXQnLCBzeXN0ZW0tdWk7XG59XG5cbi5mb250LWxpZ2h0IHtcbiAgICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZm9udC1yZWd1bGFyIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uZm9udC1ib2xkIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ubGV0dGVyLXNwYWNpbmcge1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA3cmVtO1xufVxuXG4udGV4dC1zaGFkb3cge1xuICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4yKTtcbn1cblxuLmdhcC0xIHtcbiAgICBnYXA6IDEwcHg7XG59XG5cbi5nYXAtMiB7XG4gICAgZ2FwOiAzMHB4O1xufVxuXG4uZ2FwLTMge1xuICAgIGdhcDogODBweDtcbn1cblxuLmp1c3RpZnktY29udGVudC1ldmVubHkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xufVxuXG4uYnRuLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzQwQTNGRiAwJSwgdmFyKC0tcHJpbWFyeSkgMTAwJSk7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgIHVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG59XG5cbi5idG4tc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodmFyKC0tc2Vjb25kYXJ5KSAwJSwgdmFyKC0tc2Vjb25kYXJ5KSAxMDAlKTtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDEycHggMjVweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIHVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSgyNDMsIDkxLCA0LCAwLjM1KSAwJSwgdmFyKC0tc2Vjb25kYXJ5KSAxMDAlKTtcbiAgICB9XG59XG5cbi5idG4td2hpdGUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTBweCAyNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbn1cblxuLmNhcmQtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg2OCwgMTg3LCAyNDksIDAuNykgMCUsIHJnYmEoNDgsIDEzMSwgMTg1LCAwLjk1KSAxMDAlKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMXB4IDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uY2FyZC1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjM4LCA5MSwgNCwgMC41KSAwJSwgcmdiYSgyMzgsIDkxLCA0LCAwLjcpIDQwJSwgcmdiYSgyMzgsIDkxLCA0LCAxKSAxMDAlKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMXB4IDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uY2FyZC13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDFweCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuXG4jaGVhZGxpbmUtYmFja2dyb3VuZCB7XG4gICAgbGVmdDogLTIwJTtcbiAgICB0b3A6IC0zMCU7XG4gICAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICAgIHotaW5kZXg6IC0xMDtcbiAgICBoZWlnaHQ6IDY1ZW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgdG9wOiAtNDAlO1xuICAgICAgICBsZWZ0OiAtMTUlO1xuICAgICAgICBoZWlnaHQ6IDQwZW07XG4gICAgfVxufVxuXG4uYmctbm9uZSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmJnLXByaW1hcnktZ3JhZGllbnQge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzNhOGZlOSAwJSwgdmFyKC0tcHJpbWFyeSkgMTAwJSk7XG59XG5cbi5iZy1zZWNvbmRhcnktZ3JhZGllbnQge1xuICAgIGJhY2tncm91bmQ6ICNGNTRGN0E7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NmRlZywgcmdiYSgyNDUsIDc5LCAxMjIsIDEpIDAlLCByZ2JhKDI0MywgOTEsIDQsIDEpIDUwJSwgcmdiYSgyNTUsIDE1OCwgNSwgMSkgMTAwJSk7XG59XG5cbi5iZy1zZWNvbmRhcnktcmFkaWFsLXRvcCB7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDMwMCUgMTEwJSBhdCA1MCUgMTIwJSwgI2ZmZiAwLCAjZmZmIDMwJSwgI0Y2Q0VCNyA2MCUsICNGMzVCMDQgMTAwJSk7XG59XG5cbi5iZy1wcmltYXJ5LXJhZGlhbC10b3Age1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCgzMDAlIDExMCUgYXQgNTAlIDEyMCUsICNmZmYgMCwgI2ZmZiAzMCUsICMzZTkyZTkgNjAlLCAjMjIzMDdlIDEwMCUpO1xufVxuXG4uYmctcHJpbWFyeS1yYWRpYWwtbGVmdCB7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDkwJSAxODAlIGF0IDg0LjI5JSA1My4wMSUsICNGRkYgMCUsICNGRkYgNDEuNDIlLCAjM0U5MkU5IDU5LjY0JSwgIzIyMzA3RSA5MS45NiUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCgxODAlIDkwJSBhdCA1Ni41MyUgMTMuODMlLCAjRkZGIDAlLCAjRkZGIDU3LjkyJSwgIzNFOTJFOSA3Ny40MSUsICMyMjMwN0UgMTAwJSk7XG4gICAgfVxufVxuXG4uYmctcHJpbWFyeS1yYWRpYWwtbWQtbGVmdCB7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDkwJSAxODAlIGF0IDg0LjI5JSA1My4wMSUsICNGRkYgMCUsICNGRkYgNDEuNDIlLCAjM0U5MkU5IDU5LjY0JSwgIzIyMzA3RSA5MS45NiUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxufVxuXG4uYmctcHJpbWFyeS1yYWRpYWwtbGVmdC0yIHtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMTI1JSAyNTAlIGF0IDEyMCUgNTMuMDElLCAjRkZGIDAlLCAjRkZGIDQxLjQyJSwgIzNFOTJFOSA1OS42NCUsICMyMjMwN0UgOTEuOTYlKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMjAwJSAxMDAlIGF0IDU2LjUzJSAtMjAlLCAjZmZmIDAsICNmZmYgNDAlLCAjM2U5MmU5IDcwJSwgIzIyMzA3ZSAxMDAlKTtcbiAgICB9XG59XG5cbi5iZy1wcmltYXJ5LXJhZGlhbC1sZWZ0LTMge1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCg5MCUgMTgwJSBhdCA4NC4yOSUgNTMuMDElLCAjRkZGIDAlLCAjRkZGIDQxLjQyJSwgIzNFOTJFOSA1OS42NCUsICMyMjMwN0UgOTEuOTYlKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMzAwJSAxMDAlIGF0IDUwJSAxMDAlLCAjRkZGIDAlLCAjRkZGIDMwJSwgIzNFOTJFOSA0NSUsICMyMjMwN0UgMTAwJSk7XG4gICAgfVxufVxuXG4uYmctcHJpbWFyeS1yYWRpYWwtcmlnaHQge1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCg5MCUgMTgwJSBhdCAxMCUgNTMuMDElLCAjRkZGIDAlLCAjRkZGIDMwJSwgIzNFOTJFOSA0NSUsICMyMjMwN0UgOTAlKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMTgwJSA5MCUgYXQgNTYuNTMlIDEzLjgzJSwgI0ZGRiAwJSwgI0ZGRiAzMCUsICMzRTkyRTkgNDUlLCAjMjIzMDdFIDEwMCUpO1xuICAgIH1cbn1cblxuLmJnLXByaW1hcnktcmFkaWFsLXJpZ2h0LTIge1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCgxMDAlIDI1MCUgYXQgMjAlIDUwJSwgI0ZGRiAwJSwgI0ZGRiAzMCUsICMzRTkyRTkgNDUlLCAjMjIzMDdFIDkwJSk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDMwMCUgMTIwJSBhdCA1MCUgODAlLCAjRkZGIDAlLCAjRkZGIDMwJSwgIzNFOTJFOSA0NSUsICMyMjMwN0UgMTAwJSk7XG4gICAgfVxufVxuXG4uYmctcHJpbWFyeS1tZC1yYWRpYWwtcmlnaHQtMiB7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDEwMCUgMjUwJSBhdCAyMCUgNTAlLCAjRkZGIDAlLCAjRkZGIDMwJSwgIzNFOTJFOSA0NSUsICMyMjMwN0UgOTAlKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH1cbn1cblxuLmJnLXByaW1hcnktbW9iaWxlLXJhZGlhbC11cCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCgzMDAlIDEyMCUgYXQgNTAlIC0xMCUsICNGRkYgMCUsICNGRkYgMzAlLCAjM0U5MkU5IDQ1JSwgIzIyMzA3RSA5MCUpO1xuICAgIH1cbn1cblxuLmJnLXByaW1hcnktbW9iaWxlLXJhZGlhbC1kb3duIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDMwMCUgMTIwJSBhdCA1MCUgMTEwJSwgI0ZGRiAwJSwgI0ZGRiAzMCUsICMzRTkyRTkgNDUlLCAjMjIzMDdFIDkwJSk7XG4gICAgfVxufVxuXG4uYmctcHJpbWFyeS1yYWRpYWwtcmlnaHQtMyB7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDEyMCUgMzYwJSBhdCAyMCUgNTAlLCAjZmZmIDAsICNmZmYgMzAlLCAjM2U5MmU5IDQ1JSwgIzIyMzA3ZSA4MCUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCgzMDAlIDEyMCUgYXQgNTAlIDc1JSwgI0ZGRiAwJSwgI0ZGRiAzMCUsICMzRTkyRTkgNDUlLCAjMjIzMDdFIDEwMCUpO1xuICAgIH1cbn1cblxuLmJnLXByaW1hcnktcmFkaWFsLXJpZ2h0LTQge1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCgxNTAlIDM2MCUgYXQgMjAlIDUwJSwgI2ZmZiAwLCAjZmZmIDMwJSwgIzNlOTJlOSA0MCUsICMyMjMwN2UgNjAlKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMzAwJSAxMjAlIGF0IDUwJSA3NSUsICNGRkYgMCUsICNGRkYgMzAlLCAjM0U5MkU5IDQ1JSwgIzIyMzA3RSAxMDAlKTtcbiAgICB9XG59XG5cbi5iZy1zZWNvbmRhcnktcmFkaWFsLXJpZ2h0LTMge1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCgxMjAlIDM2MCUgYXQgMjAlIDUwJSwgI2ZmZiAwLCAjZmZmIDMwJSwgI0ZCQzM3OCA0NSUsICNGNzZCMUEgODAlKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMzAwJSAxMjAlIGF0IDUwJSA3NSUsICNGRkYgMCUsICNGRkYgMzAlLCAjRkJDMzc4IDQ1JSwgI0Y3NkIxQSAxMDAlKTtcbiAgICB9XG59XG5cbi5iZy1zZWNvbmRhcnktcmFkaWFsLXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoOTAlIDE4MCUgYXQgMTAlIDUzLjAxJSwgI0ZGRiAwJSwgI0ZGRiA0MS40MiUsICNGQkMzNzggNTkuNjQlLCAjRjc2QjFBIDkxLjk2JSk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDE4MCUgOTAlIGF0IDU2LjUzJSAxMy44MyUsICNGRkYgMCUsICNGRkYgNTcuOTIlLCAjRkJDMzc4IDc3LjQxJSwgI0Y3NkIxQSAxMDAlKTtcbiAgICB9XG59XG5cbi5iZy1zZWNvbmRhcnktcmFkaWFsLWxlZnQge1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCg5MCUgMTgwJSBhdCA4NC4yOSUgNTMuMDElLCAjRkZGIDAlLCAjRkZGIDQxLjQyJSwgI0ZCQzM3OCA1OS42NCUsICNGNzZCMUEgOTEuOTYlKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMzAwJSAxMjAlIGF0IDUwJSAxMTAlLCAjRkZGIDAlLCAjRkZGIDU3LjkyJSwgI0ZCQzM3OCA3Ny40MSUsICNGNzZCMUEgMTAwJSk7XG4gICAgfVxufVxuXG4uYmctc2Vjb25kYXJ5LW1kLXJhZGlhbC1sZWZ0IHtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoOTAlIDE4MCUgYXQgODQuMjklIDUzLjAxJSwgI0ZGRiAwJSwgI0ZGRiA0MS40MiUsICNGQkMzNzggNTkuNjQlLCAjRjc2QjFBIDkxLjk2JSk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG59XG5cbi5iZy1zZWNvbmRhcnktbW9iaWxlLXJhZGlhbC11cCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcbiAgICAgICAgICAgIDMwMCUgMTIwJSBhdCA1MCUgLTEwJSxcbiAgICAgICAgICAgICNGRkYgMCUsXG4gICAgICAgICAgICAjRkZGIDQwJSxcbiAgICAgICAgICAgICNGQkMzNzggNTUlLFxuICAgICAgICAgICAgI0Y3NkIxQSAxMDAlXG4gICAgICAgICk7XG5cbiAgICB9XG59XG5cbi5zaGFkb3cge1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgkY29sb3I6ICMwMDAwMDAsICRhbHBoYTogMC4xKSAhaW1wb3J0YW50O1xufVxuXG4uc2hhZG93LW5lZ2F0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxMHB4IDAgcmdiYSgkY29sb3I6ICMwMDAwMDAsICRhbHBoYTogMC4xKTtcbn1cblxuLnNoYWRvdy1pbnRlcm5hbCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDJweCAwLjNlbSAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItbm9uZSB7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTMwIHtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xufVxuXG4ucm91bmRlZC01MCB7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbn1cblxuLnJvdW5kZWQtZnVsbCB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbn1cblxuLmltZy1yb3VuZGVkIHtcbiAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ub3BhY2l0eS0wIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ub3BhY2l0eS0yNSB7XG4gICAgb3BhY2l0eTogMC4yNTtcbn1cblxuLm9wYWNpdHktNTAge1xuICAgIG9wYWNpdHk6IDAuNTtcbn1cblxuLm9wYWNpdHktODAge1xuICAgIG9wYWNpdHk6IDAuODA7XG59XG5cbi5vcGFjaXR5LTEge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi56LTEge1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi56LTEwIHtcbiAgICB6LWluZGV4OiAxMDtcbn1cblxuLnotMTAwIHtcbiAgICB6LWluZGV4OiAxMDA7XG59XG5cbi53LTEwIHtcbiAgICB3aWR0aDogMTAlO1xufVxuXG4udy0zMyB7XG4gICAgd2lkdGg6IDMzJTtcbn1cblxuLnctNDAge1xuICAgIHdpZHRoOiA0MCU7XG59XG5cbi53LTYwIHtcbiAgICB3aWR0aDogNjAlO1xufVxuXG4udy02NiB7XG4gICAgd2lkdGg6IDY2JTtcbn1cblxuLnctOTAge1xuICAgIHdpZHRoOiA5MCU7XG59XG5cbi5taW4taC1zY3JlZW4ge1xuICAgIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbn1cblxuLm1pbi1oLTcwIHtcbiAgICBtaW4taGVpZ2h0OiA3MGR2aDtcbn1cblxuLm1heC13LWZpdCB7XG4gICAgbWF4LXdpZHRoOiBmaXQtY29udGVudDtcbn1cblxuLm1heC13LWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAyMDAwcHg7XG59XG5cbjpmb2N1cyB7XG4gICAgb3V0bGluZTogdW5zZXQgIWltcG9ydGFudDtcbn1cblxuLmNvbnRhaW5lci1tZC01MCB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4uY29udGFpbmVyLW1kLTc1IHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5kcm9wZG93bi10b2dnbGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmZvcm0tY29udHJvbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZXh0cmFsaWdodCkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmU7XG59XG5cbi5pbnB1dC1ncm91cCB7XG4gICAgOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnBvaW50ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmN1cnNvci1kZWZhdWx0IHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5wdC03IHtcbiAgICBwYWRkaW5nLXRvcDogNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHktNyB7XG4gICAgcGFkZGluZy1ib3R0b206IDVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogNXJlbSAhaW1wb3J0YW50O1xufVxuXG4uc2hhZG93LWluZm8ge1xuICAgIGJveC1zaGFkb3c6IDBweCAzMHB4IDQwcHggdmFyKC0tcHVycGxlKTtcbn1cblxuLnNlcGFyYXRvciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzhlOGU4ZTtcbn1cblxuLmxpZ2h0LWNhcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgei1pbmRleDogLTg7XG59XG5cbi5idG4ge1xuICAgIGJvcmRlcjogbm9uZTtcbn1cblxuLmhlYWRsaW5lIC5tYXNjb3R0ZSB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbn1cblxuLnNjcm9sbC11cCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBib3R0b206IDQwcHg7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgO1xuICAgIH1cblxuICAgIC5jaGV2cm9uIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxufVxuXG4vKioqKioqKioqKioqL1xuLyoqIENvbnRhY3QgKiovXG4vKioqKioqKioqKioqL1xuI3d3dy1mb3JtLFxuLnd3dy1mb3JtIHtcbiAgICAuaWNvbiB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgfVxuXG4gICAgLmZvcm0tYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIH1cbn1cblxuLmZvcm0td3d3IHtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMjVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgJi5tZXNzYWdlLWlucHV0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDI1cHg7XG4gICAgfVxufVxuXG4vKioqKioqKioqKi9cbi8qIEhlYWRlciAqL1xuLyoqKioqKioqKiovXG4uaGVhZGVyIHtcbiAgICBuYXYge1xuICAgICAgICBoZWlnaHQ6IDcwcHg7XG5cbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgd2lkdGg6IDE4MHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZpZ2F0aW9uIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYm90dG9tLWxpbmUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYm90dG9tLWxpbmUtYW5pbSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAuYm90dG9tLWxpbmUtYW5pbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDUlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGE6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLXByaW1hcnkge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICB9XG5cbiAgICAubGFuZyB7XG4gICAgICAgIC5mbGFnIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5mbGFnIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9mZmVyIHtcbiAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKi9cbi8qKiBNb2RhbCBSaWdodCAqKi9cbi8qKioqKioqKioqKioqKioqKi9cbi5tb2RhbC1yaWdodCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4ubW9kYWwtcmlnaHQgLm1vZGFsLWRpYWxvZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjUwcHgpIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgIH1cbn1cblxuLm1vZGFsLXJpZ2h0IC5tb2RhbC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tb2RhbC1yaWdodCAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLnJpZ2h0LW1lbnUtbW9kYWwge1xuICAgIC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgfVxuXG4gICAgLmNyb3NzIHtcbiAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24ge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mbGFnIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmVyLWljb24ge1xuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY2hldnJvbiB7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAuY2hldnJvbiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3RvcmUtbGluayB7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICB9XG5cbiAgICAuaWNvbi1zb2NpYWwge1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICB9XG59XG5cbi8qKioqKioqKioqKiovXG4vKiogRm9vdGVyICoqL1xuLyoqKioqKioqKioqKi9cbmZvb3RlciB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDJweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG5cbiAgICAqIHtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudFxuICAgIH1cblxuICAgIC5scG0tbG9nbyB7XG4gICAgICAgIHdpZHRoOiA3MHB4O1xuICAgIH1cblxuICAgIGltZy5zdG9yZS1saW5rIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxODBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGFuZy1mb290ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAuZmxhZy1mb290ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDI1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjFzIGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmF2YWlsYWJsZTpob3ZlciB7XG4gICAgICAgICAgICAuZmxhZy1mb290ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5nbG9iZSB7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cblxuICAgIC5pY29uLXNvY2lhbCB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgIH1cblxuICAgIC5zZXBhcmF0b3Ige1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1leHRyYWxpZ2h0KTtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgfVxufVxuXG4vKioqKioqKioqKiovXG4vKiogSW5kZXggKiovXG4vKioqKioqKioqKiovXG4jaW5kZXgtaGVhZGxpbmUge1xuICAgIC5tb2NrdXAge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbn1cblxuI2luZGV4LW9mZmVycyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkzZGVnLCAjNDBBM0ZGIC00LjI5JSwgdmFyKC0tcHJpbWFyeSkgODAuMTklKTtcblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIH1cbn1cblxuI2luZGV4LWdvYWwge1xuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIH1cbn1cblxuI2luZGV4LWFib3V0IHtcbiAgICAubWF4LXctY2FyZCB7XG4gICAgICAgIG1heC13aWR0aDogNTUwcHg7XG4gICAgfVxuXG4gICAgLmFib3V0LWNhcmQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3gtc2hhZG93OiA1cHggNXB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZC1oZWFkbGluZSB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDI0MywgOTEsIDQsIDAuMzUpIDAlLCByZ2JhKDI0MywgOTEsIDQsIDEpIDc1JSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwNSU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMjUlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDFkZWcpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2hldnJvbiB7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDI1cHg7XG5cbiAgICAgICAgICAgIC5jaGV2cm9uIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNpbmRleC1jZXJ0aWZpY2F0aW9uIHtcblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIH1cblxuICAgIC5jYXJkLWRlc2t0b3AsXG4gICAgLmNhcmQtbW9iaWxlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1kZXNrdG9wIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmNhcmQtYmFubmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAuY2FyZC1iYW5uZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1tb2JpbGUge1xuICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIH1cblxuICAgIC5jYXJvdXNlbC1jZXJ0aWZpY2F0aW9uIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyBsaSBidXR0b246OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWV4dHJhbGlnaHQpO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBib3gtc2hhZG93OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuXG4gICAgICAgICYgYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1wcmV2LFxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICB9XG5cbiAgICAuc2xpY2stcHJldjo6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OjpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogdXJsKCcuLi8uLi9wdWJsaWMvYXNzZXRzL2ltZy9pY29ucy9jaGV2cm9uLXNlY29uZGFyeS1sZWZ0LnN2ZycpO1xuICAgIH1cblxuICAgIC5zbGljay1uZXh0OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiB1cmwoJy4uLy4uL3B1YmxpYy9hc3NldHMvaW1nL2ljb25zL2NoZXZyb24tc2Vjb25kYXJ5LXJpZ2h0LnN2ZycpO1xuICAgICAgICA7XG4gICAgfVxuXG4gICAgLnNsaWNrLWRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxufVxuXG4jaW5kZXgtc2tpbGxzIHtcbiAgICBoZWlnaHQ6IDE0MDBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLm1haW4tc2tpbGwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNDMwcHg7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZ2xvYmJ5IHtcbiAgICAgICAgICAgIHRvcDogNTUwcHhcbiAgICAgICAgfVxuXG4gICAgICAgIC5za2lsbC1iZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmdpZiB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDFcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5za2lsbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuXG4gICAgICAgIC5za2lsbC1pbWFnZSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBsYXktaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiNza2lsbC1leHByZXNzaW9uIHtcbiAgICAgICAgICAgIHRvcDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmI3NraWxsLWNvbXByZWhlbnNpb24ge1xuICAgICAgICAgICAgdG9wOiAyMTBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzIwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJiNza2lsbC1sZWN0dXJlIHtcbiAgICAgICAgICAgIHRvcDogMjEwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzIwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJiNza2lsbC1ncmFtbWFpcmUge1xuICAgICAgICAgICAgdG9wOiA1NzBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzUwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJiNza2lsbC1lY3JpdHVyZSB7XG4gICAgICAgICAgICB0b3A6IDU3MHB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDM1MHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYjc2tpbGwtcHJvbm9uY2lhdGlvbiB7XG4gICAgICAgICAgICB0b3A6IDk1MHB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNzBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmI3NraWxsLXZvY2FidWxhaXJlIHtcbiAgICAgICAgICAgIHRvcDogOTUwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTcwcHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jaW5kZXgtbGVhcm5pbmcge1xuICAgIC5tYXgtdy02MDAge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtbGVhcm5pbmcge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuXG4gICAgICAgIC5jaGV2cm9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAuY2hldnJvbiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2luZGV4LWZhcSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCNmNzliNjYgMCUsICNmMzViMDQgNDAlLCAjZjM1YjA0IDcwJSwgI2Y3OWI2NiAxMDAlKTtcblxuICAgIC5mYXEtY29udGFpbmVyIHtcbiAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgICAgICBjb2x1bW4tZ2FwOiAyMHB4O1xuICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuZmFxLWl0ZW0ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbiB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5mYXEtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweDtcblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKioqKioqKioqKioqKiovXG4vKiogTGVhcm5pbmcgKiovXG4vKioqKioqKioqKioqKiovXG4jbGVhcm5pbmctaGVhZGxpbmUge1xuICAgIC5tb2NrdXAge1xuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG5cbn1cblxuI2xlYXJuaW5nLW5hdmlnYXRpb24ge1xuICAgIC5pY29uIHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgfVxuXG4gICAgLmNoZXZyb24ge1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICB9XG5cbiAgICAuY29jb24tbmF2aWdhdGlvbiB7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ncmFiYmluZyB7XG4gICAgICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gICAgfVxuXG4gICAgI25hdmlnYXRpb24tbmV4dCxcbiAgICAjbmF2aWdhdGlvbi1iYWNrIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNsZWFybmluZy1hZHZhbnRhZ2VzIHtcbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2xlYXJuaW5nLW1ldGhvZCB7XG4gICAgLmJhbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMCAxMjBweCAwO1xuICAgIH1cblxuICAgIC5jb250ZW50IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIH1cblxuICAgIC5jYXJkLW1ldGhvZDpob3ZlciB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNsZWFybmluZy1jb3Vyc2VzIHtcbiAgICAubWFzY290dGUge1xuICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIH1cblxuICAgIC5tb2NrdXAge1xuICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jbGVhcm5pbmctdGltZSB7XG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNsZWFybmluZy1hZHZpY2VzIHtcbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2xlYXJuaW5nLWRvd25sb2FkIHtcbiAgICAubW9ja3VwIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgfVxuXG4gICAgLnN0b3JlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTYwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNiYW5uZXIge1xuICAgIC5iYW5uZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcblxuICAgICAgICAub3JhbmdlLWxnLWxlZnQge1xuICAgICAgICAgICAgd2lkdGg6IDIyMHB4O1xuICAgICAgICAgICAgdG9wOiA0NSU7XG4gICAgICAgICAgICBsZWZ0OiAtMTMwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgbGVmdDogLTEwcHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyNSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub3JhbmdlLWxnLXJpZ2h0IHtcbiAgICAgICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgICAgIGJvdHRvbTogMzAlO1xuICAgICAgICAgICAgcmlnaHQ6IC0yMDBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTUlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vcmFuZ2Utc20tbGVmdCB7XG4gICAgICAgICAgICB3aWR0aDogOTVweDtcbiAgICAgICAgICAgIHRvcDogOTUlO1xuICAgICAgICAgICAgbGVmdDogLTUwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDcwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTUlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm9yYW5nZS1zbS1yaWdodCB7XG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgICB0b3A6IC0zMCU7XG4gICAgICAgICAgICByaWdodDogLTMwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBib3R0b206IDE1JTtcbiAgICAgICAgICAgICAgICByaWdodDogNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ibHVlLWxlZnQge1xuICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgdG9wOiA5MCU7XG4gICAgICAgICAgICBsZWZ0OiA3MHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxNSU7XG4gICAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmx1ZS1yaWdodCB7XG4gICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgIGJvdHRvbTogOTAlO1xuICAgICAgICAgICAgcmlnaHQ6IDEyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyNSU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAub3JhbmdlLWxnLWxlZnQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC00MHB4LCAtMjBweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5vcmFuZ2UtbGctcmlnaHQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDIwcHgsIDEwcHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAub3JhbmdlLXNtLWxlZnQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0yMHB4LCAzMHB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm9yYW5nZS1zbS1yaWdodCB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDBweCwgLTQwcHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmx1ZS1sZWZ0IHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMHB4LCAzMHB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJsdWUtcmlnaHQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqKioqKioqKioqKi9cbi8qKiBDb2NvbnMgKiovXG4vKioqKioqKioqKioqL1xuI2NvY29uLWhlYWRsaW5lIHtcbiAgICAuaWxsdXN0cmF0aW9uIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICB9XG59XG5cbiNjb2Nvbi1jb250ZW50IHtcbiAgICAuY29jb24tcmVzdW1lIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgIHRvcDogNTBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb2Nvbi1jb250YWluZXIge1xuICAgICAgICBib3gtc2hhZG93OiAtMTBweCAwIDVweCAtNXB4IHJnYmEoJGNvbG9yOiAjMDAwMDAwLCAkYWxwaGE6IDAuMSk7XG4gICAgfVxuXG4gICAgLmNoZXZyb24ge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgcm90YXRlOiAtOTBkZWc7XG4gICAgfVxuXG4gICAgLm1haW4tZmxhZyB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgIH1cbn1cblxuLyoqKioqKioqKiovXG4vKiogQmxvZyAqKi9cbi8qKioqKioqKioqL1xuI2Jsb2ctaW5kZXgge1xuICAgIC5jYXRlZ29yaWVzLWxpc3Rpbmcge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2Jsb2ctYXJ0aWNsZSB7XG4gICAgLmFydGljbGUtaGVhZGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgfVxuXG4gICAgLmJhY2stYnV0dG9uIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiA1JTtcbiAgICB9XG59XG5cbiNibG9nLWNhdGVnb3J5LFxuI2Jsb2ctYXV0aG9yLFxuI2Jsb2ctdGFnIHtcbiAgICAuYmFjay1idXR0b24ge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDVweDtcbiAgICB9XG59XG5cbiNibG9nLWFsbCB7XG4gICAgLmJhY2stYnV0dG9uIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiA1JTtcbiAgICB9XG59XG5cblxuLyoqKioqKioqKioqKioqKiovXG4vKiogSW5kaXZpZHVhbCAqKi9cbi8qKioqKioqKioqKioqKioqL1xuI2luZGl2aWR1YWwtaGVhZGxpbmUge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzNEOUFGNSAwJSwgdmFyKC0tcHJpbWFyeSkgMTAwJSk7XG5cbiAgICAuYnRuLXRvZ2dsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNGNkNFQjcgLTMxLjY3JSwgI0YzNUIwNCA3OS4wNyUpO1xuICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAuYnRuLW1vbnRobHksXG4gICAgLmJ0bi1hbm51YWwge1xuICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcm91c2VsLXByaWNpbmcge1xuICAgICAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0NXB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vZmZlci1jYXJkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMjc1cHg7XG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG5cbiAgICAgICAgLmNoZXZyb24ge1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgIC5jaGV2cm9uIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZlci1iYW5uZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI0Y2Q0VCNyAtMzEuNjclLCAjRjM1QjA0IDc5LjA3JSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwNSU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZlci1pbWFnZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmZXItcHJpY2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuXG4gICAgICAgICAgICAucHJpY2UtbW9udGhseSxcbiAgICAgICAgICAgIC5wcmljZS1hbm51YWwge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNoZWNrLFxuICAgIC53cm9uZyB7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgfVxuXG4gICAgLndyb25nIHtcbiAgICAgICAgb3BhY2l0eTogMC4yXG4gICAgfVxuXG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1leHRyYWxpZ2h0KTtcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgYm94LXNoYWRvdzogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcblxuICAgICAgICAmIGJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldixcbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgfVxuXG4gICAgLnNsaWNrLXByZXY6OmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDo6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLXByZXY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vLi4vcHVibGljL2Fzc2V0cy9pbWcvaWNvbnMvY2hldnJvbi1zZWNvbmRhcnktbGVmdC5zdmcnKTtcbiAgICB9XG5cbiAgICAuc2xpY2stbmV4dDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogdXJsKCcuLi8uLi9wdWJsaWMvYXNzZXRzL2ltZy9pY29ucy9jaGV2cm9uLXNlY29uZGFyeS1yaWdodC5zdmcnKTtcbiAgICB9XG5cbiAgICAuc2xpY2stZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG59XG5cbiNpbmRpdmlkdWFsLWRldGFpbHMge1xuXG4gICAgLm9mZmVyLXByaWNlIHtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuXG4gICAgICAgIC5wcmljZS1tb250aGx5LFxuICAgICAgICAucHJpY2UtYW5udWFsIHtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0ZXh0LXdyYXA6IG5vd3JhcDtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGhlYWQtb2ZmZXIge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWV4dHJhbGlnaHQpO1xuICAgIH1cblxuICAgIC50aGVhZC1mZWF0dXJlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWV4dHJhbGlnaHQpO1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWV4dHJhbGlnaHQpO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWV4dHJhbGlnaHQpO1xuICAgIH1cblxuICAgIC5jaGVjayxcbiAgICAud3Jvbmcge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgIH1cblxuICAgIC53cm9uZyB7XG4gICAgICAgIG9wYWNpdHk6IDAuMlxuICAgIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKiovXG4vKiogU2Nob29sICoqL1xuLyoqKioqKioqKioqKioqKioqKiovXG4jaGVhZGxpbmUtYmFja2dyb3VuZC1zY2hvb2wge1xuICAgIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgICB6LWluZGV4OiAtMTA7XG4gICAgbGVmdDogLTUwJTtcbiAgICB0b3A6IC0zNSU7XG59XG5cbi5jYXJkLXBybyB7XG4gICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbn1cblxuLm1vY2t1cC1wcm8ge1xuICAgIG1hcmdpbi1yaWdodDogLTYwcHg7XG4gICAgd2lkdGg6IDEyNSU7XG59XG5cbiNzY2hvb2wtc2F0aXNmYWN0aW9uLWJhY2tncm91bmQge1xuICAgIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgICB6LWluZGV4OiAtMTA7XG4gICAgbGVmdDogMTAlO1xuICAgIHRvcDogLTgwJTtcbiAgICBoZWlnaHQ6IDcwMHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKi9cbi8qKiBDUEYgKiovXG4vKioqKioqKioqKioqKioqKioqKi9cbi5mb3JtYXRpb25zLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxNDAwcHg7XG5cbiAgICAuZmxhZyB7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuICAgIH1cbn1cblxuLnN0ZXBzLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMDAwcHg7XG5cbiAgICAuc3RlcHMtbGluZS1jcGYge1xuICAgICAgICB3aWR0aDogNTYlO1xuICAgICAgICB0b3A6IDExJTtcbiAgICB9XG59XG5cbi5zdGVwcy1jb250YWluZXItbW9iaWxlIHtcbiAgICBtYXgtd2lkdGg6IDM1MHB4O1xuXG4gICAgLnN0ZXBzLWxpbmUtY3BmLW1vYmlsZSB7XG4gICAgICAgIHRvcDogNSU7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIHotaW5kZXg6IDAgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qKioqKioqKioqKiovXG4vKiogTWV0aG9kICoqL1xuLyoqKioqKioqKioqKi9cbiNtZXRob2QtaGVhZGxpbmUge1xuICAgIC5tb2NrdXAge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICB9XG59XG5cbiNtZXRob2Qtc3lzdGVtIHtcbiAgICAubW9ja3VwLWdpZiB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDgwZHZoO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG59XG5cbiNtZXRob2Qtc2VyaW91cyB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHggIWltcG9ydGFudDtcblxuICAgIC5jYXJkLXNlcmlvdXMge1xuICAgICAgICB3aWR0aDogMzUwcHg7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jbWV0aG9kLWNlcnRpZmljYXRpb24ge1xuICAgIG1heC13aWR0aDogMTUwMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAuY2FyZC1jZXJ0aWZpY2F0aW9uIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICB9XG59XG5cbiNoaXN0b3J5LWhlYWRsaW5lIHtcbiAgICAubWFzY290dGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICB9XG59XG5cbiNoaXN0b3J5LXZpZ2RpcyB7XG4gICAgLnZpZ2Rpcy1jYXJkIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnZpZ2Rpcy1jYXJkLXRleHQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxwbS1jYXJkIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubHBtLWNhcmQtdGV4dCB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNoaXN0b3J5LWxwbSB7XG4gICAgbWF4LXdpZHRoOiAxNTAwcHggIWltcG9ydGFudDtcblxuICAgIC5jYXJkLWxwbSB7XG4gICAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgfVxufVxuXG4jaGlzdG9yeS1zdWNjZXNzIHtcbiAgICAubW9ja3VwLWdpZiB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDgwZHZoO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqL1xuLyoqIEFjY2Vzc2liaWxpdMOpICoqL1xuLyoqKioqKioqKioqKioqKioqKiovXG5cbiNhY2Nlc3NpYmlsaXR5IHtcbiAgICAubWF0ZXJpYWwtaWNvbnMtb3V0bGluZWQge1xuICAgICAgICBmb250LXNpemU6IDVlbTtcbiAgICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqL1xuLyoqIEFib3V0ICoqL1xuLyoqKioqKioqKioqKioqKioqKiovXG4uYWJvdXQtY2FyZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCA3cHggNXB4IHJnYmEoMzUsIDQ4LCAxMjYsIDAuMSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcblxuICAgICNhYm91dC1iYWNrZ3JvdW5kIHtcbiAgICAgICAgdG9wOiAtNDUlO1xuICAgICAgICBsZWZ0OiAtMzAlO1xuICAgICAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgICAgIHotaW5kZXg6IC0xMDtcbiAgICB9XG59XG5cbiN2aWdkaXMtbW9iaWxlIHtcbiAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbiN2aWdkaXMtZGVza3RvcCB7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBhc3BlY3QtcmF0aW86IGluaXRpYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG4gICAgei1pbmRleDogMTA7XG59XG5cbiNjYXJkLXZpZ2Rpcy1tb2JpbGUge1xuICAgIG1hcmdpbi10b3A6IDIyNXB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IDUwcHggIWltcG9ydGFudDtcbn1cblxuI21hc2NvdHRlLWFib3V0IHtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGhlaWdodDogMzUwcHg7XG4gICAgdG9wOiAtMjUlO1xufVxuXG4jbWFzY290dGUtYWJvdXQtcGFkIHtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGhlaWdodDogMzAwcHggIWltcG9ydGFudDtcbiAgICBsZWZ0OiAtMjAlO1xuICAgIHRvcDogLTEwJTtcbn1cblxuI21hc2NvdHRlLWFib3V0LW1vYmlsZSB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgICBsZWZ0OiAtMTAlO1xufVxuXG4jY2FyZC1tYXNjb3R0ZS1tb2JpbGUge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xufVxuXG4jYmFja2dyb3VuZC1oZWFkbGluZS1hYm91dCB7XG4gICAgdG9wOiAtNjAlO1xuICAgIGxlZnQ6IC02MCU7XG4gICAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICAgIHotaW5kZXg6IC0xMDtcbiAgICBoZWlnaHQ6IDEyMDBweDtcbn1cblxuI3RlYW0tYmFja2dyb3VuZC1sZWZ0IHtcbiAgICB0b3A6IC0zMCU7XG4gICAgbGVmdDogLTIwJTtcbiAgICBmaWx0ZXI6IGJsdXIoNTBweCk7XG4gICAgei1pbmRleDogLTEwO1xuICAgIGhlaWdodDogMTMwMHB4O1xufVxuXG4jdGVhbS1iYWNrZ3JvdW5kLXJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC00MCU7XG4gICAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICAgIHotaW5kZXg6IC0xMDtcbiAgICBoZWlnaHQ6IDEwMDBweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKiovXG4vKiogT2ZmZXIgQjJDIGJhbm5lciAqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqL1xuXG4ub2ZmZXItdG9wLWJhbm5lciB7XG4gICAgLmRyb3Bkb3duIHtcbiAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mbGFnIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxvZ28tY3BmIHtcbiAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgIH1cblxuICAgIC5sb2dvLWxwbSB7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICB9XG5cbiAgICAub2ZmZXItY3BmLWJhbm5lci1pbWcge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3RvcmVzLWxpbmsge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiogTW9uIGNvbXB0ZSBmb3JtYXRpb24gKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiNteS10cmFpbmluZy1hY2NvdW50IHtcbiAgICAuaWNvbi1zdmcge1xuICAgICAgICBtYXgtaGVpZ2h0OiA3ZW07XG4gICAgfVxufVxuXG4jaG93LWl0LXdvcmtzIHtcbiAgICAuc3RlcCB7XG4gICAgICAgIHdpZHRoOiA3NSU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndvcmstbWFyZ2luIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDdlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgLmFycm93MSB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMTUlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNC44ZW07XG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnJvdzIge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IC01JTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTRlbTtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIC5hcnJvdzEge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDIwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFycm93MiB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTVlbTtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jZm9ybWF0aW9uIHtcbiAgICAuaW5zY3JpcHRpb24ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAtM2VtO1xuICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgIH1cblxuICAgIC5sYXllciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxufVxuXG4vKioqKioqKioqL1xuLyoqIEZBUSAqKi9cbi8qKioqKioqKiovXG4jZmFxIHtcbiAgICAuYnRuLWNhdGVnb3J5IHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5KTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLWNhdGVnb3J5LXNlY29uZGFyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSgyNDMsIDkxLCA0LCAwLjM1KSAwJSwgdmFyKC0tc2Vjb25kYXJ5KSAxMDAlKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaWNvbi1jYXRlZ29yeSB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgIH1cblxuICAgIC5jYXRlZ29yaWVzLWFjY29yZGlvbiB7XG4gICAgICAgIC5jaGV2cm9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNoZXZyb24tc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhdGVnb3JpZXMtbWFpbiB7XG4gICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgICAgICAuY2hldnJvbiB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jaGV2cm9uLXNlY29uZGFyeSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcnktbW9iaWxlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhdGVnb3JpZXMtb3B0aW9uIHtcbiAgICAgICAgICAgIC5jYXRlZ29yeS1tb2JpbGUge1xuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vL0NhdGVnb3J5IExpc3Rcbi5jYXRlZ29yeS1saXN0IHtcblxuICAgIC5jYXRlZ29yeSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICM5ODk3OTc7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgLmNhdGVnb3J5LWltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zNSU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mYXEge1xuXG4gICAgLmZhcS1ib3JkZXItYm90dG9tIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcbiAgICB9XG5cbiAgICAuZmFxLWdyb3VwIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZhcS1ib2R5IHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrbGlnaHQpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9yZS1sZXNzIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbn1cblxuI2ZhcS1ibHVlLWJhY2tncm91bmQge1xuICAgIHotaW5kZXg6IC0xMDA7XG4gICAgdG9wOiAtNSU7XG4gICAgbGVmdDogLTIwJTtcbiAgICBoZWlnaHQ6IDYwMHB4O1xufVxuXG4jZmFxLW1lZGl1bS1ibHVlLWJhY2tncm91bmQge1xuICAgIGxlZnQ6IC03MCU7XG4gICAgdG9wOiAwO1xuICAgIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgICB6LWluZGV4OiAtMTA7XG4gICAgaGVpZ2h0OiAxMDAwcHg7XG59XG5cbiNmYXEtZm9vdGVyLWJhY2tncm91bmQtbGVmdCB7XG4gICAgbGVmdDogLTEwJTtcbiAgICB0b3A6IC01NTAlO1xuICAgIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgICB6LWluZGV4OiAtMTA7XG4gICAgaGVpZ2h0OiAxMDAwcHg7XG59XG5cbiNmYXEtZm9vdGVyLWJhY2tncm91bmQtcmlnaHQge1xuICAgIGxlZnQ6IDIwJTtcbiAgICB0b3A6IC01NTAlO1xuICAgIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgICB6LWluZGV4OiAtMTA7XG4gICAgaGVpZ2h0OiAxMDAwcHg7XG59XG5cbmJhZGdlLXByb21vIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10dXJxdW9pc2UpO1xuICAgIG1hcmdpbi10b3A6IC0zLjdlbTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XG59XG5cbi8vIFJlc3BvbnNpdmVcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAuc2VhcmNoLWlucHV0IHtcbiAgICAgICAgd2lkdGg6IDhlbTtcbiAgICB9XG59XG5cbi8qKioqKioqKioqKiovXG4vKiogSGVhZGVyICoqL1xuLyoqKioqKioqKioqKi9cblxuLmxhbmdzLWltZyB7XG4gICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgIH1cblxuICAgIGltZy5hdmFpbGFibGUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGFuZ3MtY291cnNlcyB7XG4gICAgaGVpZ2h0OiAyMHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiogTm90IGZvdW5kIEVycm9yIHBhZ2UgKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5lcnJvci1wYWdlIHtcbiAgICAudGV4dC00MDQge1xuICAgICAgICBmb250LXNpemU6IDI1ZHZ3O1xuICAgICAgICBsaW5lLWhlaWdodDogMTVkdnc7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwZHZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVycm9yLW1hc2NvdHRlIHtcbiAgICAgICAgd2lkdGg6IDE4ZHZ3O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICAgICAgd2lkdGg6IDMwZHZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9yYW5nZS1sZy1sZWZ0IHtcbiAgICAgICAgd2lkdGg6IDE3ZHZ3O1xuICAgICAgICB0b3A6IC0xNSU7XG4gICAgICAgIGxlZnQ6IC0zMCU7XG4gICAgICAgIGFuaW1hdGlvbjogYm91bmNlLWRpYWdvbmFsLWRvd24gMTBzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICAgICAgd2lkdGg6IDMwZHZ3O1xuICAgICAgICAgICAgdG9wOiAtNzAlO1xuICAgICAgICAgICAgbGVmdDogLTIwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vcmFuZ2UtcmlnaHQge1xuICAgICAgICB3aWR0aDogMTBkdnc7XG4gICAgICAgIHRvcDogLTIwJTtcbiAgICAgICAgcmlnaHQ6IC0xNSU7XG4gICAgICAgIGFuaW1hdGlvbjogYm91bmNlLWRpYWdvbmFsLXVwIDEwcyBlYXNlLWluLW91dCBpbmZpbml0ZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxOGR2dztcbiAgICAgICAgICAgIHRvcDogLTMwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vcmFuZ2Utc20tbGVmdCB7XG4gICAgICAgIHdpZHRoOiA3ZHZ3O1xuICAgICAgICBib3R0b206IC0xNSU7XG4gICAgICAgIGxlZnQ6IC01JTtcbiAgICAgICAgYW5pbWF0aW9uOiBib3VuY2UtZGlhZ29uYWwtZG93bi1yZXZlcnQgMTBzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICAgICAgd2lkdGg6IDE1ZHZ3O1xuICAgICAgICAgICAgYm90dG9tOiAtNDAlO1xuICAgICAgICAgICAgbGVmdDogMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmx1ZS1sZWZ0IHtcbiAgICAgICAgd2lkdGg6IDEyZHZ3O1xuICAgICAgICB0b3A6IDI1JTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYW5pbWF0aW9uOiBib3VuY2UtdmVydGljYWwtZG93biAxMHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICB3aWR0aDogMjFkdnc7XG4gICAgICAgICAgICB0b3A6IDQwJTtcbiAgICAgICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibHVlLWxnLXJpZ2h0IHtcbiAgICAgICAgd2lkdGg6IDE2ZHZ3O1xuICAgICAgICBib3R0b206IC0xMCU7XG4gICAgICAgIHJpZ2h0OiAtNDAlO1xuICAgICAgICBhbmltYXRpb246IGJvdW5jZS1kaWFnb25hbC1kb3duLXJldmVydCAxMHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICB3aWR0aDogMjhkdnc7XG4gICAgICAgICAgICBib3R0b206IC0zMCU7XG4gICAgICAgICAgICByaWdodDogLTMwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibHVlLXNtLXJpZ2h0IHtcbiAgICAgICAgd2lkdGg6IDZkdnc7XG4gICAgICAgIHRvcDogMzUlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYW5pbWF0aW9uOiBib3VuY2UtZGlhZ29uYWwtZG93biAxMHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICB3aWR0aDogMTNkdnc7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAxNSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBhbmltYXRpb25zIFxuICAgIEBrZXlmcmFtZXMgYm91bmNlLWRpYWdvbmFsLWRvd24ge1xuXG4gICAgICAgIDAlLFxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgMTAlLFxuICAgICAgICA5MCUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgLTRweCk7XG4gICAgICAgIH1cblxuICAgICAgICA0MCUsXG4gICAgICAgIDYwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyNXB4LCA1MHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIDUwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyM3B4LCA0NnB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgYm91bmNlLWRpYWdvbmFsLXVwIHtcblxuICAgICAgICAwJSxcbiAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIDEwJSxcbiAgICAgICAgOTAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIDZweCk7XG4gICAgICAgIH1cblxuICAgICAgICA0MCUsXG4gICAgICAgIDYwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg2cHgsIC0xOHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIDUwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIC0xMnB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgYm91bmNlLWRpYWdvbmFsLWRvd24tcmV2ZXJ0IHtcblxuICAgICAgICAwJSxcbiAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIDEwJSxcbiAgICAgICAgOTAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDJweCwgNHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIDQwJSxcbiAgICAgICAgNjAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0yNXB4LCAtNTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICA1MCUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTIzcHgsIC00NnB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgYm91bmNlLXZlcnRpY2FsLWRvd24ge1xuXG4gICAgICAgIDAlLFxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgMTAlLFxuICAgICAgICA5MCUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTRweCk7XG4gICAgICAgIH1cblxuICAgICAgICA0MCUsXG4gICAgICAgIDYwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1MHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIDUwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA0NnB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqKioqKioqKioqKi9cbi8qKiBJbWFnZXMgKiovXG4vKioqKioqKioqKioqL1xuXG4uaW1nLWdyYXlzY2FsZSB7XG4gICAgZmlsdGVyOiBncmF5O1xuICAgIC8qIElFNi05ICovXG4gICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgICAvKiBHb29nbGUgQ2hyb21lLCBTYWZhcmkgNisgJiBPcGVyYSAxNSsgKi9cbiAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgICAvKiBNaWNyb3NvZnQgRWRnZSBhbmQgRmlyZWZveCAzNSsgKi9cbn1cblxuLy9Db29raWVzXG4jY29va2llQ29uc2VudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RmZTZlOTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNjUwMDA7XG4gICAgYm90dG9tOiAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4jY29va2llQ29uc2VudCBidXR0b24uY29va2llQWNjZXB0IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5KTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMmVtO1xuICAgIG1hcmdpbjogMC41ZW07XG4gICAgcGFkZGluZzogMC4yZW0gMC41ZW0gMC4yZW0gMC41ZW07XG59XG5cbi8qKioqKioqKioqKiovXG4vKiogQmFkZ2VzICoqL1xuLyoqKioqKioqKioqKi9cblxuLmJhZGdlIHtcbiAgICAmLmJhZGdlLWVzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXdhcm5pbmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1leHRyYWxpZ2h0KTtcbiAgICB9XG5cbiAgICAmLmJhZGdlLWVuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5mbyk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5KTtcbiAgICB9XG5cbiAgICAmLmJhZGdlLXpoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0teHRyZW1saWdodCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnkpO1xuICAgIH1cblxuICAgICYuYmFkZ2UtcnUge1xuICAgICAgICBjb2xvcjogdmFyKC0tZGFyayk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmtsaWdodCk7XG4gICAgfVxuXG4gICAgJi5iYWRnZS1pdCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLXB1cnBsZSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LXB1cnBsZSk7XG4gICAgfVxuXG4gICAgJi5iYWRnZS1sYW5ndWFnZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13YXJuaW5nKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZXh0cmFsaWdodCk7XG4gICAgfVxufVxuXG4udGVhbS1pY29uIHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbn1cblxuLmNhcm91c2VsIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG59XG5cbi5jYXJvdXNlbCAuY2FyZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5jYXJvdXNlbCAuY2FyZDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5KTtcbn1cblxuLnByaWNpbmctY2FyZCB7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuXG4ucHJpY2luZy1pdGVtIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwcHggMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC45KTtcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygxLjEpO1xuICAgIH1cbn1cblxuLnByaWNpbmctaXRlbS1tb2JpbGUge1xuICAgIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uZm9ybXVsYS1jYXJkIHtcbiAgICBtYXgtd2lkdGg6IDI0JTtcbn1cblxuI2JhY2tncm91bmQtcHJpY2luZy1sZWZ0IHtcbiAgICBsZWZ0OiAtNDAlO1xuICAgIHRvcDogLTU1JTtcbiAgICBmaWx0ZXI6IGJsdXIoNTBweCk7XG4gICAgei1pbmRleDogLTEwO1xuICAgIGhlaWdodDogMTQwMHB4O1xufVxuXG4jYmFja2dyb3VuZC1wcmljaW5nLXJpZ2h0IHtcbiAgICByaWdodDogLTQwJTtcbiAgICB0b3A6IC00MCU7XG4gICAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICAgIHotaW5kZXg6IC0xMDtcbiAgICBoZWlnaHQ6IDE0MDBweDtcbn1cblxuLm1hc2NvdHRlLXByaWNpbmcge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG4ucHJpY2luZy1zZWN0aW9uIHtcbiAgICB0cmFuc2l0aW9uOiAwLjJzO1xufVxuXG4uYmctc2Vjb25kYXJ5LXd3dyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyMzgsIDkxLCA0LCAwLjUpIDAlLCByZ2JhKDIzOCwgOTEsIDQsIDAuNykgNDAlLCByZ2JhKDIzOCwgOTEsIDQsIDEpIDEwMCUpO1xufVxuXG4vKioqKioqKioqKioqL1xuLyoqIFByZXNzZSAqKi9cbi8qKioqKioqKioqKiovXG4ucHJlc3NlLWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWZlZmVmO1xuXG4gICAgLnByZXNzZS1pdGVtLXJlc3VtZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjZyZW07XG4gICAgfVxufVxuXG4jaW1nLW9mZmljZSB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDQ1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG59XG5cbiNtYXNjb3R0ZS1vZmZpY2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtYXgtaGVpZ2h0OiAyNTBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICByaWdodDogLTEyJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTg1cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICByaWdodDogMTYlO1xuICAgIH1cbn1cblxuLmNhcmQtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg2OCwgMTg3LCAyNDksIDAuNykgMCUsIHJnYmEoNDgsIDEzMSwgMTg1LCAwLjk1KSAxMDAlKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMXB4IDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uY2FyZC1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjM4LCA5MSwgNCwgMC41KSAwJSwgcmdiYSgyMzgsIDkxLCA0LCAwLjcpIDQwJSwgcmdiYSgyMzgsIDkxLCA0LCAxKSAxMDAlKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMXB4IDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uY2FyZC13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDFweCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLyoqKioqKioqKioqKiovXG4vKiogQ291cnNlcyAqKi9cbi8qKioqKioqKioqKioqL1xuI2NvdXJzZXMtaGVhZGxpbmUge1xuICAgIC5jb3Vyc2VzLWhlYWRsaW5lLWltZy1tb2JpbGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogMzVkdmg7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNjb3Vyc2VzLXN0ZXBzIHtcbiAgICAuc3RlcHMtY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XG5cbiAgICAgICAgLnN0ZXBzLWxpbmUtY291cnNlcyB7XG4gICAgICAgICAgICB3aWR0aDogNTYlO1xuICAgICAgICAgICAgdG9wOiA4JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdGVwcy1jb250YWluZXItbW9iaWxlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzNTBweDtcblxuICAgICAgICAuc3RlcHMtbGluZS1jb3Vyc2VzLW1vYmlsZSB7XG4gICAgICAgICAgICB0b3A6IDUlO1xuICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKioqKioqKioqKioqL1xuLyoqIFN0YXRpYyAqKi9cbi8qKioqKioqKioqKiovXG4jcmV2aWV3cyB7XG4gICAgaDIge1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIH1cblxuICAgIC5jYXJvdXNlbC1yZXZpZXcge1xuICAgICAgICBjdXJzb3I6IGdyYWI7XG4gICAgICAgIG1heC13aWR0aDogMTAwMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIzMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN0YXJzIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDE1cHggMCAwO1xuICAgICAgICAgICAgICAgIGdhcDogNXB4O1xuXG4gICAgICAgICAgICAgICAgLnN0YXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJldmlldy10ZXh0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAn4oCcJztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnU25pZ2xldCcsIHN5c3RlbS11aTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICfigJwnO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnU25pZ2xldCcsIHN5c3RlbS11aTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb290bGluZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcblxuICAgICAgICAgICAgICAgIGltZyxcbiAgICAgICAgICAgICAgICBwLFxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzQwQTNGRiAwJSwgIzIyMzA3RSAxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDExMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoM2RlZyk7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZsYWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1leHRyYWxpZ2h0KTtcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgYm94LXNoYWRvdzogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcblxuICAgICAgICAmIGJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldixcbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgfVxuXG4gICAgLnNsaWNrLXByZXY6OmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDo6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLXByZXY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vLi4vcHVibGljL2Fzc2V0cy9pbWcvaWNvbnMvY2hldnJvbi1zZWNvbmRhcnktbGVmdC5zdmcnKTtcbiAgICB9XG5cbiAgICAuc2xpY2stbmV4dDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogdXJsKCcuLi8uLi9wdWJsaWMvYXNzZXRzL2ltZy9pY29ucy9jaGV2cm9uLXNlY29uZGFyeS1yaWdodC5zdmcnKTtcbiAgICAgICAgO1xuICAgIH1cblxuICAgIC5zbGljay1kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbn1cblxuI2Jsb2ctc3VnZ2VzdGlvbiB7XG4gICAgLmNhcm91c2VsLWJsb2cge1xuICAgICAgICBjdXJzb3I6IGdyYWI7XG4gICAgICAgIG1heC13aWR0aDogODAwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDVweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyBsaSBidXR0b246OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWV4dHJhbGlnaHQpO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBib3gtc2hhZG93OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuXG4gICAgICAgICYgYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1wcmV2LFxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICB9XG5cbiAgICAuc2xpY2stcHJldjo6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OjpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogdXJsKCcuLi8uLi9wdWJsaWMvYXNzZXRzL2ltZy9pY29ucy9jaGV2cm9uLXNlY29uZGFyeS1sZWZ0LnN2ZycpO1xuICAgIH1cblxuICAgIC5zbGljay1uZXh0OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiB1cmwoJy4uLy4uL3B1YmxpYy9hc3NldHMvaW1nL2ljb25zL2NoZXZyb24tc2Vjb25kYXJ5LXJpZ2h0LnN2ZycpO1xuICAgICAgICA7XG4gICAgfVxuXG4gICAgLnNsaWNrLWRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxufVxuXG4jbGFuZ3VhZ2VzIHtcbiAgICAubGFuZy10YXJnZXQge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYXZhaWxhYmxlOmhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmV3LXBlbGxldCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgbGVmdDogMzAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jbGFuZ3VhZ2VzLWZ1bGwge1xuICAgIC5pbmFjdGl2ZS1mbGFnIHtcbiAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNkb3dubG9hZCB7XG4gICAgLm1vY2t1cCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIH1cblxuICAgIC5zdG9yZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE4MHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jc29sdXRpb25zIHtcbiAgICAuY2FyZC1zb2x1dGlvbiB7XG4gICAgICAgIHdpZHRoOiAyNzVweDtcbiAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgLmNhcmQtdGl0bGUge1xuICAgICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgcC5jYXJkLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMjVweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTBweCk7XG5cbiAgICAgICAgICAgIHAuY2FyZC1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mYXEtcXVlc3Rpb25zIHtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuXG4gICAgI2JsdWUtY2lyY2xlLTEge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICB0b3A6IDQ1JTtcbiAgICAgICAgbGVmdDogLTEzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgdG9wOiA2MCU7XG4gICAgICAgICAgICBsZWZ0OiAtMzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNibHVlLWNpcmNsZS0yIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgICAgYm90dG9tOiA1MCU7XG4gICAgICAgIHJpZ2h0OiAtMTMwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgICBib3R0b206IDUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAtNDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNibHVlLWNpcmNsZS0zIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICB0b3A6IDg1JTtcbiAgICAgICAgbGVmdDogLTYwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjYmx1ZS1jaXJjbGUtNCB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgIHRvcDogLTI1JTtcbiAgICAgICAgcmlnaHQ6IC0yMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICB0b3A6IC0yMCU7XG4gICAgICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjYmx1ZS1jaXJjbGUtNSB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xuICAgICAgICB3aWR0aDogMTEwcHg7XG4gICAgICAgIHRvcDogODUlO1xuICAgICAgICBsZWZ0OiAzNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICB0b3A6IDkwJTtcbiAgICAgICAgICAgIGxlZnQ6IDcwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjYmx1ZS1jaXJjbGUtNiB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xuICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgYm90dG9tOiA4NSU7XG4gICAgICAgIHJpZ2h0OiA5MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBib3R0b206IDg1JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICAjYmx1ZS1jaXJjbGUtMSB7XG4gICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IC0xODBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICNibHVlLWNpcmNsZS0yIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB3aWR0aDogMjMwcHg7XG4gICAgICAgICAgICBib3R0b206IDUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTkwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAjYmx1ZS1jaXJjbGUtMyB7XG4gICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgIHRvcDogMTA1JTtcbiAgICAgICAgICAgIGxlZnQ6IC0xMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICNibHVlLWNpcmNsZS00IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgICAgICB0b3A6IC00NSU7XG4gICAgICAgICAgICByaWdodDogLTUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAjYmx1ZS1jaXJjbGUtNSB7XG4gICAgICAgICAgICB3aWR0aDogMTEwcHg7XG4gICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICBsZWZ0OiAzNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgI2JsdWUtY2lyY2xlLTYge1xuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgICAgICBib3R0b206IDEwMCU7XG4gICAgICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNmYXEtY29tcG9uZW50IHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2Y3OWI2NiAwJSwgI2YzNWIwNCA0MCUsICNmMzViMDQgNzAlLCAjZjc5YjY2IDEwMCUpO1xuXG4gICAgLmZhcS1pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNuZXdzbGV0dGVyIHtcbiAgICAjbmV3c2xldHRlci1tZXNzYWdlIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuICAgIH1cblxuICAgIC5pbWctbmV3c2xldHRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2hldnJvbiB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICByb3RhdGU6IC05MGRlZztcbiAgICB9XG59XG5cbi8qKioqKioqKioqKioqKioqL1xuLyoqIENvbXBvbmVudHMgKiovXG4vKioqKioqKioqKioqKioqKi9cbi5sYW5ndWFnZXMtYWNjb3JkaW9uIHtcbiAgICAubGFuZ3VhZ2VzLW1haW4ge1xuICAgICAgICAubGFuZy10YXJnZXQge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGFuZ3VhZ2VzLW9wdGlvbiB7XG4gICAgICAgIC5sYW5nLXRhcmdldC5hY3RpdmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWFpbi1mbGFnIHtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgfVxuXG4gICAgLnNlY29uZC1mbGFnIHtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgfVxuXG4gICAgLmNoZXZyb24ge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICB9XG5cbiAgICAubGFuZ3VhZ2VzLW1haW5bYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICAuY2hldnJvbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxhbmd1YWdlLWJhbm5lciB7XG4gICAgLmNoZXZyb24ge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgcm90YXRlOiAtOTBkZWc7XG4gICAgfVxuXG4gICAgLm1haW4tZmxhZyB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgIH1cbn1cblxuLmJsb2ctY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIGhlaWdodDogNTAwcHg7XG5cbiAgICAuY2FyZC1oZWFkbGluZS1pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDE4MHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAzMjVweDtcbiAgICAgICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgIC5hcnRpY2xlLXRhZ3Mge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICAgICAgICAgIGdhcDogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFydGljbGUtdGl0bGUge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNzZweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFydGljbGUtY29udGVudCB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA2N3B4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrKTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnRpY2xlLWxpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBlbmQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybWF0aW9uLWNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDQwMHB4O1xuICAgIGhlaWdodDogNTgwcHg7XG5cbiAgICAuYmFubmVyLWltZyB7XG4gICAgICAgIGhlaWdodDogMTVlbTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm1hdGlvbi1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXG4gICAgICAgIC5mbGFnIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm1hdGlvbi1kZXRhaWxzIHtcbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybWF0aW9uLXByaWNlIHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgfVxufVxuXG4jZm9ybWF0aW9uLWhlYWRsaW5lIHtcbiAgICAuZmxhZyB7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuICAgIH1cblxuICAgIC5pY29uIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzMHB4O1xuICAgIH1cblxuICAgIC5mb3JtYXRpb24taGVhZGxpbmUtaW1nIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogNjBkdmg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDUwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuZm9ybWF0aW9uLWhlYWRsaW5lLWltZy1tb2JpbGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDM1ZHZoO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgcm90YXRlOiAxODBkZWc7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNmb3JtYXRpb25zIHtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLXNvcnQge1xuICAgICAgICAuY2hldnJvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mbGFnIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgfVxuXG4gICAgLmljb24tZmlsdGVyIHtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgfVxuXG4gICAgLmNyb3NzIHtcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIHJvdGF0ZTogNDVkZWc7XG4gICAgICAgIHJpZ2h0OiA4cHg7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tYnV0dG9ucyB7XG4gICAgICAgIC5wYWdlLWJ0biB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI0Y2Q0VCNyAtMzEuNjclLCAjRjM1QjA0IDc5LjA3JSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYWdlLWJ0bi5pbmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmljb24tZmlsdGVyIHtcbiAgICB3aWR0aDogMjBweDtcbn1cblxuI2FydGljbGUtaGVhZGxpbmUge1xuICAgIC5pY29uIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzMHB4O1xuICAgIH1cblxuICAgIC5pY29uLXNoYXJlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MHB4O1xuICAgIH1cblxuICAgIC5jaGV2cm9uIHtcbiAgICAgICAgbWF4LXdpZHRoOiA4cHg7XG4gICAgfVxuXG4gICAgLmFydGljbGUtaGVhZGxpbmUtaW1nIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogNjBkdmg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA1MCUgMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuYXJ0aWNsZS1oZWFkbGluZS1pbWctbW9iaWxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAzNWR2aDtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFydGljbGUtYXV0aG9yLWNhcmQge1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICB9XG5cbiAgICAuaWNvbi1zaGFyZSB7XG4gICAgICAgIG1heC13aWR0aDogNDVweDtcbiAgICB9XG5cbiAgICAuc2hhcmUtbWVkaWEge1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLXNlY29uZGFyeSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4uYXJ0aWNsZS1mdWxsIHtcbiAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgLmNoZXZyb24ge1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgIC5jaGV2cm9uIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFydGljbGUtZnVsbC1jb250ZW50IHtcbiAgICAgICAgYm94LXNoYWRvdzogLTEwcHggMCA1cHggLTVweCByZ2JhKCRjb2xvcjogIzAwMDAwMCwgJGFscGhhOiAwLjEpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgxLFxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ1NuaWdsZXQnO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMy4ycmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAycmVtIDAgMS41cmVtIDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdTbmlnbGV0JztcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAxLjVyZW0gMCAxcmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcnRpY2xlLWxlYXJuLWNhcmQge1xuICAgIC5vcmFuZ2UtbGctbGVmdCB7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgYm90dG9tOiA1JTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgbGVmdDogLTgwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBsZWZ0OiAtMzBweDtcbiAgICAgICAgICAgIGJvdHRvbTogMTUlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9yYW5nZS1sZy1yaWdodCB7XG4gICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgYm90dG9tOiAxMCU7XG4gICAgICAgIHJpZ2h0OiAtNTBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIGJvdHRvbTogMCU7XG4gICAgICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3JhbmdlLXNtLWxlZnQge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgYm90dG9tOiAtMyU7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIGxlZnQ6IDYwcHg7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IDEwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibHVlLWxlZnQge1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGJvdHRvbTogMTUlO1xuICAgICAgICBsZWZ0OiAtNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IDAlO1xuICAgICAgICAgICAgbGVmdDogLTEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmx1ZS1yaWdodCB7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBib3R0b206IDIwJTtcbiAgICAgICAgcmlnaHQ6IC0xNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgYm90dG9tOiAxNSU7XG4gICAgICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmx1ZS1yaWdodC0yIHtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGJvdHRvbTogMTIlO1xuICAgICAgICAgICAgcmlnaHQ6IDYwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLnNlYXJjaGJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAycHggNXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgIGlucHV0IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6IDhweCAyMHB4O1xuICAgIH1cbn1cblxuXG4ucGFnaW5hdGlvbiB7XG4gICAgZ2FwOiAxMHB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAucGFnZS1pdGVtIHtcbiAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnkpO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI0Y2Q0VCNyAtMzEuNjclLCAjRjM1QjA0IDc5LjA3JSk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50YWdzLW1vZGFsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMGR2dztcbiAgICBoZWlnaHQ6IDEwMGR2aDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvcjogIzAwMDAwMCwgJGFscGhhOiAwLjUpO1xuICAgIHotaW5kZXg6IDk5OTkgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAudGFncy1tb2RhbC1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDQwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2xvc2UtYnRuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNkb3dubG9hZC1zdXBwb3J0IHtcbiAgICAjZG93bmxvYWQtc3VwcG9ydC1tb2RhbCB7XG4gICAgICAgIG1heC13aWR0aDogMzUwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbGVmdDogNDBweDtcbiAgICAgICAgYm90dG9tOiA0MHB4O1xuICAgICAgICB6LWluZGV4OiAxMDAgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNTAlKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICA7XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvc2UtYnRuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1cHBvcnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZS1pbi1vdXQgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaXRlbS1pbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNoZXZyb24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI2Rvd25sb2FkLXN1cHBvcnQtbW9kYWwtdHJpZ2dlciB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbGVmdDogNDBweDtcbiAgICAgICAgYm90dG9tOiA0MHB4O1xuICAgICAgICB6LWluZGV4OiAxMDAgIWltcG9ydGFudDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJyb3ctaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgIH1cbn1cblxuI2N1c3RvbWVycyB7XG4gICAgQGtleWZyYW1lcyBzbGlkZSB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgdG8ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvcyB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLmxvZ29zOmJlZm9yZSxcbiAgICAubG9nb3M6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLmxvZ29zOmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCB3aGl0ZSk7XG4gICAgfVxuXG4gICAgLmxvZ29zOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgd2hpdGUpO1xuICAgIH1cblxuICAgIC5sb2dvczpob3ZlciAubG9nb3Mtc2xpZGUge1xuICAgICAgICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xuICAgIH1cblxuICAgIC5sb2dvcy1zbGlkZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYW5pbWF0aW9uOiAzNXMgc2xpZGUgaW5maW5pdGUgbGluZWFyO1xuICAgIH1cblxuICAgIC5sb2dvcy1zbGlkZSBpbWcge1xuICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICBtYXJnaW46IDAgNDBweDtcbiAgICB9XG59XG4iLCJAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1SZWd1bGFyLnR0ZicpO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQtQm9sZCc7XG4gIHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtQm9sZC50dGYnKTtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdOdW5pdG9TYW5zJztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL051bml0b19TYW5zL051bml0b1NhbnMtUmVndWxhci50dGYnKTtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdOdW5pdG9TYW5zLUJvbGQnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvTnVuaXRvX1NhbnMvTnVuaXRvU2Fucy1Cb2xkLnR0ZicpO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1NuaWdsZXQnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvU25pZ2xldC9TbmlnbGV0LVJlZ3VsYXIudHRmJyk7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT3BlblNhbnMnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvT3Blbl9TYW5zL09wZW5TYW5zLVJlZ3VsYXIudHRmJyk7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT3BlblNhbnMtTGlnaHQnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvT3Blbl9TYW5zL09wZW5TYW5zLUxpZ2h0LnR0ZicpO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ09wZW5TYW5zLUJvbGQnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvT3Blbl9TYW5zL09wZW5TYW5zLUJvbGQudHRmJyk7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnb3BlbmR5c2xleGljJztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL29wZW5fZHlzbGV4aWMvT3BlbkR5c2xleGljLVJlZ3VsYXIub3RmJyk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdvcGVuZHlzbGV4aWMnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvb3Blbl9keXNsZXhpYy9PcGVuRHlzbGV4aWMtSXRhbGljLm90ZicpO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnb3BlbmR5c2xleGljJztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL29wZW5fZHlzbGV4aWMvT3BlbkR5c2xleGljLUJvbGQub3RmJyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnb3BlbmR5c2xleGljJztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL29wZW5fZHlzbGV4aWMvT3BlbkR5c2xleGljLUJvbGRJdGFsaWMub3RmJyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cbiIsIi8qIVxuICogQm9vdHN0cmFwIHY0LjYuMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMjIgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIyIFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICovXG5cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImlucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJzcGlubmVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuQGltcG9ydCBcInByaW50XCI7XG4iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNVxufVxuXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXG4vLyBvbiBlbGVtZW50cyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgcmVjZWl2ZSBmb2N1cyBidXQgd291bGRuJ3Qgbm9ybWFsbHkgc2hvdyBhIHZpc2libGVcbi8vIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXG4vLyBvciB0aGUgYnJvd3NlciBoYXMgc29tZWhvdyBkZXRlcm1pbmVkIHRoYXQgdGhlIHVzZXIgaXMgcHJpbWFyaWx5IGEga2V5Ym9hcmQgdXNlciBhbmQvb3Jcbi8vIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXG4vL1xuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxuLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gRGlzYWJsZSBhdXRvLWhpZGluZyBzY3JvbGxiYXIgaW4gSUUgJiBsZWdhY3kgRWRnZSB0byBhdm9pZCBvdmVybGFwLFxuICAvLyBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBpbnRlcmFjdCB3aXRoIHRoZSBjb250ZW50XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApLFxuICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4kc3BhY2VyczogbWFwLW1lcmdlKFxuICAoXG4gICAgMDogMCxcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXG4gICAgMzogJHNwYWNlcixcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogKCRzcGFjZXIgKiAzKVxuICApLFxuICAkc3BhY2Vyc1xuKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6IDI1JSxcbiAgICA1MDogNTAlLFxuICAgIDc1OiA3NSUsXG4gICAgMTAwOiAxMDAlLFxuICAgIGF1dG86IGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcbiRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2U6IDE1JSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kcm91bmRlZC1waWxsOiAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGg6ICAgd2lkdGggLjM1cyBlYXNlICFkZWZhdWx0O1xuXG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiAoKSAhZGVmYXVsdDtcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAgICAgIDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAgICAgIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAuODc1ZW0gIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplOiAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICBsaWdodGVuKCR0YWJsZS1kYXJrLWJnLCA3LjUlKSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLWxldmVsOiAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWxldmVsOiAgICAgICAgICAtNiAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRsYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAqIC41KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1zbSAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14OiAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I6ICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I6ICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnPjxwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAuNSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSc+PHBhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgZXNjYXBlLXN2ZygkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3IpIHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplIG5vLXJlcGVhdCAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgIGNlbnRlciByaWdodCAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBJRS9FZGdlXG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9JzAgMCAxMiAxMic+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuXG5cbi8vIE5hdmJhclxuXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAqIC41ICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1zY3JvbGwtbWF4LWhlaWdodDogICAgICA3NXZoICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vLyBTcGlubmVyc1xuXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItdmVydGljYWwtYWxpZ246ICAtLjEyNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gVXRpbGl0aWVzXG5cbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5ICFkZWZhdWx0O1xuJHVzZXItc2VsZWN0czogYWxsLCBhdXRvLCBub25lICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG5cbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIGZvbnQgc2l6ZXNcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL3Y4LngvTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtZm9udC1zaXplLXVuaXQgIT0gcmVtIGFuZCAkcmZzLWZvbnQtc2l6ZS11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mb250LXNpemUtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtZm9udC1zaXplLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xufVxuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIGZvbnQtc2l6ZSBzdGFydHMgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgZm9udCBzaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUsICRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJyZW1cIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6IGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplLCBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZGlzYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1kaXNhYmxlLWNsYXNzIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXG4gICAgJixcbiAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udCBzaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xuICAgIEBpZiAkZnMtdW5pdCA9PSBcInB4XCIge1xuICAgICAgJGZzOiBkaXZpZGUoJGZzLCAkZnMgKiAwICsgMSk7XG4gICAgfVxuICAgIEBlbHNlIGlmICRmcy11bml0ID09IFwicmVtXCIge1xuICAgICAgJGZzOiBkaXZpZGUoJGZzLCBkaXZpZGUoJGZzICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGRlZmF1bHQgZm9udCBzaXplXG4gICAgJHJmcy1zdGF0aWM6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkZnMsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JGZzfXB4KTtcblxuICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgZm9udCBzaXplIGlzIGJpZ2dlciB0aGFuIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZVxuICAgIEBpZiAkZnMgPD0gJHJmcy1iYXNlLWZvbnQtc2l6ZSBvciBub3QgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgZm9udC1zaXplOiAjeyRyZnMtc3RhdGljfSN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gZm9udCBzaXplIGZvciAkZnNcbiAgICAgICRmcy1taW46ICRyZnMtYmFzZS1mb250LXNpemUgKyBkaXZpZGUoJGZzIC0gJHJmcy1iYXNlLWZvbnQtc2l6ZSwgJHJmcy1mYWN0b3IpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICRmcyBhbmQgdGhlIG1pbmltdW0gZm9udCBzaXplXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcblxuICAgICAgLy8gQmFzZSBmb250LXNpemUgZm9ybWF0dGluZ1xuICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCRmcy1taW4sICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JGZzLW1pbn1weCk7XG5cbiAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcbiAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAkdmFyaWFibGUtd2lkdGg6ICN7ZGl2aWRlKCRmcy1kaWZmICogMTAwLCAkcmZzLWJyZWFrcG9pbnQpfSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplXG4gICAgICAkcmZzLWZsdWlkOiBjYWxjKCN7JG1pbi13aWR0aH0gKyAjeyR2YXJpYWJsZS13aWR0aH0pICN7JHJmcy1zdWZmaXh9O1xuXG4gICAgICAvLyBCcmVha3BvaW50IGZvcm1hdHRpbmdcbiAgICAgICRtcS12YWx1ZTogaWYoJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgsICN7JHJmcy1icmVha3BvaW50fXB4LCAje2RpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtcmVtLXZhbHVlKX0jeyRyZnMtYnJlYWtwb2ludC11bml0fSk7XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtZGlzYWJsZS1jbGFzcyB7XG4gICAgICAgIGZvbnQtc2l6ZTogI3skcmZzLXN0YXRpY30jeyRyZnMtc3VmZml4fTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSgkbXEtdmFsdWUpIHtcbiAgICAgICAgQGluY2x1ZGUgX3Jmcy1lbmFibGUtY2xhc3Mge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIGZvbnQtc2l6ZSAmIHJlc3BvbnNpdmUtZm9udC1zaXplIG1peGlucyB1c2UgUkZTIHRvIHJlc2NhbGUgdGhlIGZvbnQgc2l6ZVxuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyKCkge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMoKSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTsgfVxuaDIsIC5oMiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTsgfVxuaDMsIC5oMyB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTsgfVxuaDQsIC5oNCB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTsgfVxuaDUsIC5oNSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTsgfVxuaDYsIC5oNiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTsgfVxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5MS1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkyLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5NC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoOTAlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkKCkge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgKiAuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkKCkge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vY3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuIiwiLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTAwJSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lcixcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHRlbmQgZWFjaCBicmVha3BvaW50IHdoaWNoIGlzIHNtYWxsZXIgb3IgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgbmVnYXRpdmUgbWFyZ2luIGZyb20gZGVmYXVsdCAucm93LCB0aGVuIHRoZSBob3Jpem9udGFsIHBhZGRpbmdcbiAgLy8gZnJvbSBhbGwgaW1tZWRpYXRlIGNoaWxkcmVuIGNvbHVtbnMgKHRvIHByZXZlbnQgcnVuYXdheSBzdHlsZSBpbmhlcml0YW5jZSkuXG4gIC5uby1ndXR0ZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICA+IC5jb2wsXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAqIC41O1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgKiAuNTtcbn1cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzYCBtaXhpblwiLCBcInY0LjUuMlwiLCBcInY1XCIpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXJvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGRpdmlkZSgxMDAlLCAkY291bnQpO1xuICAgIG1heC13aWR0aDogZGl2aWRlKDEwMCUsICRjb3VudCk7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgY29sb3I6ICR0YWJsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnOyAvLyBSZXNldCBmb3IgbmVzdGluZyB3aXRoaW4gcGFyZW50cyB3aXRoIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItdG9wOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyICogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoLFxuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjY2VudC1iZztcbiAgfVxufVxuXG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgdGJvZHkgdHIge1xuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgY29sb3I6ICR0YWJsZS1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1ob3Zlci1iZztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJvcmRlci1sZXZlbCkpO1xufVxuXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsICR0YWJsZS1hY3RpdmUtYmcpO1xuXG5cbi8vIERhcmsgc3R5bGVzXG4vL1xuLy8gU2FtZSB0YWJsZSBtYXJrdXAsIGJ1dCBpbnZlcnRlZCBjb2xvciBzY2hlbWU6IGRhcmsgYmFja2dyb3VuZCBhbmQgbGlnaHQgdGV4dC5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi50YWJsZSB7XG4gIC50aGVhZC1kYXJrIHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC50aGVhZC1saWdodCB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1oZWFkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1kYXJrIHtcbiAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcblxuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoIHtcbiAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCB7XG4gICAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWFjY2VudC1iZztcbiAgICB9XG4gIH1cblxuICAmLnRhYmxlLWhvdmVyIHtcbiAgICB0Ym9keSB0ciB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRib3JkZXI6IG51bGwpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgQGlmICRib3JkZXIgIT0gbnVsbCB7XG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciB7XG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+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+IC5hcnJvdyB7XG4gICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuXG5AaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy1ncmFkaWVudC12YXJpYW50YCBtaXhpblwiLCBcInY0LjUuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbkBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG4gIH1cbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogJHJvdW5kZWQtcGlsbCAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAgIC5kI3skaW5maXh9LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAuZC1wcmludC0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teDogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMSk7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAyKTtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS0jeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14fWJ5I3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teX0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZShkaXZpZGUoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXksICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14KSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICR1c2VyLXNlbGVjdHMge1xuICAudXNlci1zZWxlY3QtI3skdmFsdWV9IHsgdXNlci1zZWxlY3Q6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmIFwiI3skc2l6ZX1cIiAhPSBcIjBcIiB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gRGVwcmVjYXRlZCwgYnV0IGF2b2lkcyBpc3N1ZXMgd2l0aCBmbGV4IGNvbnRhaW5lcnNcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL21haW4uY3NzL2Jsb2IvbWFzdGVyL3NyYy9fcHJpbnQuY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAvLyBDb21tb24gdmFsdWVzXG4gICAgQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAgICAgLnBvc2l0aW9uI3skaW5maXh9LSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufSIsIkBmdW5jdGlvbiBtYXRlcmlhbC1pY29ucy1zdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogJycpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArXG4gICAgICBtYXRlcmlhbC1pY29ucy1zdHItcmVwbGFjZShcbiAgICAgICAgc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLFxuICAgICAgICAkc2VhcmNoLFxuICAgICAgICAkcmVwbGFjZVxuICAgICAgKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuQGZ1bmN0aW9uIG1hdGVyaWFsLWljb25zLWNvbnRlbnQoJGNvZGVwb2ludCkge1xuICBAcmV0dXJuIHVucXVvdGUoJ1wiXFxcXCN7JGNvZGVwb2ludH1cIicpO1xufVxuXG5AbWl4aW4gbWF0ZXJpYWwtaWNvbnMtZm9udC1mYWNlKFxuICAkZm9udC1mYW1pbHk6ICRtYXRlcmlhbC1pY29ucy1mb250LWZhbWlseSxcbiAgJGZvbnQtbmFtZTogJG1hdGVyaWFsLWljb25zLWZvbnQtbmFtZSxcbiAgJG90ZjogZmFsc2UsXG4gICRmb250LXBhdGg6ICRtYXRlcmlhbC1pY29ucy1mb250LXBhdGgsXG4gICRmb250LWRpc3BsYXk6ICRtYXRlcmlhbC1pY29ucy1mb250LWRpc3BsYXlcbikge1xuICAkZm9udC1maWxlOiAkZm9udC1wYXRoICsgJGZvbnQtbmFtZTtcblxuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZGlzcGxheTogJGZvbnQtZGlzcGxheTtcbiAgICBzcmM6IHVybCgnI3skZm9udC1maWxlfS5lb3QnKTsgLyogRm9yIElFNi04ICovXG4gICAgc3JjOiBsb2NhbCgkZm9udC1mYW1pbHkpLCBsb2NhbCgkZm9udC1uYW1lKSxcbiAgICAgIHVybCgnI3skZm9udC1maWxlfS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgIHVybCgnI3skZm9udC1maWxlfS53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICBpZihcbiAgICAgICAgJG90ZixcbiAgICAgICAgdXJsKCcjeyRmb250LWZpbGV9Lm90ZicpIGZvcm1hdCgnb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcjeyRmb250LWZpbGV9LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKVxuICAgICAgKTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0ZXJpYWwtaWNvbnMoXG4gICRmb250LWZhbWlseTogJG1hdGVyaWFsLWljb25zLWZvbnQtZmFtaWx5LFxuICAkZm9udC1zaXplOiAkbWF0ZXJpYWwtaWNvbnMtZm9udC1zaXplXG4pIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlyZWN0aW9uOiBsdHI7XG5cbiAgLyogU3VwcG9ydCBmb3IgYWxsIFdlYktpdCBicm93c2Vycy4gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC8qIFN1cHBvcnQgZm9yIFNhZmFyaSBhbmQgQ2hyb21lLiAqL1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuXG4gIC8qIFN1cHBvcnQgZm9yIEZpcmVmb3guICovXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgLyogU3VwcG9ydCBmb3IgSUUuICovXG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xufVxuXG5AbWl4aW4gbWF0ZXJpYWwtaWNvbigkbmFtZSwgJHBzZXVkbzogJ2JlZm9yZScpIHtcbiAgJGNvZGVwb2ludDogbWFwLWdldCgkbWF0ZXJpYWwtaWNvbnMtY29kZXBvaW50cywgJG5hbWUpO1xuXG4gICY6I3skcHNldWRvfSB7XG4gICAgY29udGVudDogbWF0ZXJpYWwtaWNvbnMtY29udGVudCgkY29kZXBvaW50KTtcbiAgfVxufVxuIiwiQGltcG9ydCAnY29kZXBvaW50cy5zY3NzJztcblxuJG1hdGVyaWFsLWljb25zLWZvbnQtcGF0aDogJycgIWRlZmF1bHQ7XG4kbWF0ZXJpYWwtaWNvbnMtZm9udC1uYW1lOiAnTWF0ZXJpYWxJY29ucy1SZWd1bGFyJyAhZGVmYXVsdDtcbiRtYXRlcmlhbC1pY29ucy1mb250LXNpemU6IDI0cHggIWRlZmF1bHQ7XG4kbWF0ZXJpYWwtaWNvbnMtZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucycgIWRlZmF1bHQ7XG4kbWF0ZXJpYWwtaWNvbnMtZm9udC1kaXNwbGF5OiBibG9jayAhZGVmYXVsdDtcbiIsIkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdtaXhpbnMnO1xuXG5AaW5jbHVkZSBtYXRlcmlhbC1pY29ucy1mb250LWZhY2UoKTtcblxuLm1hdGVyaWFsLWljb25zIHtcbiAgQGluY2x1ZGUgbWF0ZXJpYWwtaWNvbnMoKTtcbn1cblxuQGVhY2ggJG5hbWUgaW4gJ091dGxpbmVkJywgJ1JvdW5kJywgJ1NoYXJwJywgJ1R3byBUb25lJyB7XG4gICRmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zICN7JG5hbWV9JztcbiAgJGZvbnQtbmFtZTogbWF0ZXJpYWwtaWNvbnMtc3RyLXJlcGxhY2UoJG5hbWUsICcgJywgJycpO1xuICAkZm9udC1uYW1lOiAnTWF0ZXJpYWxJY29ucyN7JGZvbnQtbmFtZX0tUmVndWxhcic7XG4gICRjbGFzcy1uYW1lOiBtYXRlcmlhbC1pY29ucy1zdHItcmVwbGFjZSh0by1sb3dlci1jYXNlKCRuYW1lKSwgJyAnLCAnLScpO1xuXG4gIEBpbmNsdWRlIG1hdGVyaWFsLWljb25zLWZvbnQtZmFjZSgkZm9udC1mYW1pbHksICRmb250LW5hbWUsIHRydWUpO1xuXG4gIC5tYXRlcmlhbC1pY29ucy0jeyRjbGFzcy1uYW1lfSB7XG4gICAgQGV4dGVuZCAubWF0ZXJpYWwtaWNvbnM7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgfVxufVxuIiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuXG4vLyBTbGljayBpY29uIGVudGl0eSBjb2RlcyBvdXRwdXRzIHRoZSBmb2xsb3dpbmdcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXG4vLyBcIlxcMjAyMlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oCiXCJcblxuJHNsaWNrLWZvbnQtcGF0aDogXCIuL2ZvbnRzL1wiICFkZWZhdWx0O1xuJHNsaWNrLWZvbnQtZmFtaWx5OiBcInNsaWNrXCIgIWRlZmF1bHQ7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9cIiAhZGVmYXVsdDtcbiRzbGljay1hcnJvdy1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yOiBibGFjayAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkc2xpY2stZG90LWNvbG9yICFkZWZhdWx0O1xuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcMjE5MFwiICFkZWZhdWx0O1xuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlxcMjE5MlwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWZvbnQtcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgfVxufVxuXG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG59XG5cbi8qIEFycm93cyAqL1xuXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgZm9udC1zaXplOiAwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxufVxuXG4uc2xpY2stcHJldiB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBEb3RzICovXG5cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTI1cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDBweDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiJHByaW1hcnk6ICMyMzMwN2U7XG4kc2Vjb25kYXJ5OiAjRjM1QjA0O1xuJG5ldXRyYWw6ICNmZmY7XG4kbmV1dHJhbC0zMDogI0Q5RDlEOTtcbiRuZXV0cmFsLTUwOiAjNkU2RTZFO1xuJHN1Y2Nlc3M6ICMwN0I1NUI7XG4kZGFuZ2VyOiAjRTAzMTI4O1xuJHdhcm5pbmc6ICNGRkI0MDU7XG4kaW5mbzogIzA5N0RFMjtcbiRsaWdodDogI0MzQ0FEOTtcbiRkYXJrOiAjMzMzMzMzO1xuJGxpZ2h0LXByaW1hcnk6ICMzOTg5RTI7XG5cbiR0aGVtZS1jb2xvcnM6IChcbiAgXCJmYWtlLXdoaXRlXCI6ICNGNUY1RjUsXG4gIFwieHRyZW1saWdodFwiOiAjRjNGM0Y5LFxuICBcImV4dHJhbGlnaHRcIjogI0U2RTZFNixcbiAgXCJleHRyYW1lZGl1bVwiOiAjNDQ0NDQ0LFxuICBcInRpdGxlXCI6ICMyRTMzMzMsXG4gIFwiZmFjZWJvb2tcIiA6ICMxNzZDRjEsXG4gIFwidHVycXVvaXNlXCIgOiAjMzU3NGE1LFxuICBcIm1lZGl1bVwiIDogIzhlOGU4ZSxcbiAgXCJwdXJwbGVcIjogI2UzZTRmYyxcbiAgXCJwdXJwbGUtc2hhZG93XCI6ICM3YjdlYjUsXG4gIFwiY291cnNlLWZyXCI6ICNlNWYyZmMsXG4gIFwidHJvcGh5LXVua25vd1wiIDogI2NkMDAwMCxcbiAgXCJ0cm9waHktYnJvbnplXCIgOiAjNjE0RTFBLFxuICBcInRyb3BoeS1zaWx2ZXJcIiA6ICNEQURBREEsXG4gIFwidHJvcGh5LWdvbGRcIiA6ICNENzlBMTAsXG4gIFwidHJvcGh5LWphZGVcIiA6ICM4NUI4M0YsXG4gIFwiYmx1ZXNreVwiIDogIzdGQkRGMixcbiAgXCJkYXJrbGlnaHRcIiA6ICM3MDcwNzAsXG4gIFwiZXh0cmFkYXJrXCIgOiAjMUMxQzFDLFxuICBcInByby1wcmltYXJ5XCIgOiAjZWM0YTcyLFxuICBcInByby1zZWNvbmRhcnlcIiA6ICM3ZjZjZTMsXG4gIFwicHJvLW1lZGl1bVwiIDogI2FlYjFiYixcbiAgXCJsaWdodC1wdXJwbGVcIiA6ICNhMjliZmUsXG4gIFwiZGFyay1wdXJwbGVcIiA6ICM2YzYyZTdcbik7XG4iXSwic291cmNlUm9vdCI6IiJ9*/