/**
 * jQuery toast plugin created by Kamran Ahmed copyright MIT license 2014
 */
.jq-toast-wrap { display: block; position: fixed; width: 250px;  pointer-events: none !important; margin: 0; padding: 0; letter-spacing: normal; z-index: 9000 !important; }
.jq-toast-wrap * { margin: 0; padding: 0; }

.jq-toast-wrap.bottom-left { bottom: 20px; left: 20px; }
.jq-toast-wrap.bottom-right { bottom: 20px; right: 40px; }
.jq-toast-wrap.top-left { top: 20px; left: 20px; }
.jq-toast-wrap.top-right { top: 20px; right: 40px; }

.jq-toast-single { display: block; width: 100%; padding: 10px; margin: 0px 0px 5px; border-radius: 4px; font-size: 12px; font-family: arial, sans-serif; line-height: 17px; position: relative;  pointer-events: all !important; background-color: #444444; color: white; }

.jq-toast-single h2 { font-family: arial, sans-serif; font-size: 14px; margin: 0px 0px 7px; background: none; color: inherit; line-height: inherit; letter-spacing: normal; }
.jq-toast-single a { color: #eee; text-decoration: none; font-weight: bold; border-bottom: 1px solid white; padding-bottom: 3px; font-size: 12px; }

.jq-toast-single ul { margin: 0px 0px 0px 15px; background: none; padding:0px; }
.jq-toast-single ul li { list-style-type: disc !important; line-height: 17px; background: none; margin: 0; padding: 0; letter-spacing: normal; }

.close-jq-toast-single { position: absolute; top: 3px; right: 7px; font-size: 14px; cursor: pointer; }

.jq-toast-loader { display: block; position: absolute; top: -2px; height: 5px; width: 0%; left: 0; border-radius: 5px; background: red; }
.jq-toast-loaded { width: 100%; }
.jq-has-icon { padding: 10px 10px 10px 50px; background-repeat: no-repeat; background-position: 10px; }
.jq-icon-info { background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII='); background-color: #31708f; color: #d9edf7; border-color: #bce8f1; }
.jq-icon-warning { background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII='); background-color: #8a6d3b; color: #fcf8e3; border-color: #faebcc; }
.jq-icon-error { background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII='); background-color: #a94442; color: #f2dede; border-color: #ebccd1; }
.jq-icon-success { background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg=='); color: #dff0d8; background-color: #3c763d; border-color: #d6e9c6; }
@charset "UTF-8";
/*!
 * Bootstrap v4.5.3 (https://getbootstrap.com/)
 * Copyright 2011-2020 The Bootstrap Authors
 * Copyright 2011-2020 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto 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", 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: #007bff;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: #0056b3;
  text-decoration: underline;
}

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

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

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

figure {
  margin: 0 0 1rem;
}

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

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

table {
  border-collapse: collapse;
}

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

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

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

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

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: 80%;
  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: 80%;
  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.3333333333%;
  max-width: 8.3333333333%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@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.3333333333%;
    max-width: 8.3333333333%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
}
@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.3333333333%;
    max-width: 8.3333333333%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
}
@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.3333333333%;
    max-width: 8.3333333333%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}
@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.3333333333%;
    max-width: 8.3333333333%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
}
.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}
.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}
.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}
.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.table-dark {
  color: #fff;
  background-color: #343a40;
}
.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}
.table-dark.table-bordered {
  border: 0;
}
.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}
.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:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}
.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

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

select.form-control: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: 80%;
  color: #28a745;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}
.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}
.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}
.btn-secondary:focus, .btn-secondary.focus {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}
.btn-secondary.disabled, .btn-secondary:disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b;
}
.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success:hover {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
}
.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}
.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #1e7e34;
  border-color: #1c7430;
}
.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}
.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}
.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #117a8b;
  border-color: #10707f;
}
.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}
.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}
.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}
.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}
.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #bd2130;
  border-color: #b21f2d;
}
.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}
.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}
.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}
.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}
.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}
.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1d2124;
  border-color: #171a1d;
}
.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

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

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

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

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}
.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, .show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

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

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

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

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}
.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, .show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none;
}
.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
}
.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}
.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

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

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

.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 0.5rem;
}

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

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

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

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

.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: #16181b;
  text-decoration: none;
  background-color: #f8f9fa;
}
.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: #6c757d;
  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(:last-child),
.input-group > .custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.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-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 > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .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;
  color-adjust: exact;
}

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

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}
.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #007bff;
  background-color: #007bff;
}
.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #80bdff;
}
.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}
.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}
.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}
.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: #adb5bd solid 1px;
}
.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: no-repeat 50%/50% 50%;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff;
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

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

.custom-switch {
  padding-left: 2.25rem;
}
.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}
.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}
.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  transform: translateX(0.75rem);
}
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none;
}
.custom-select:focus {
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}
.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}
.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}
.custom-select::-ms-expand {
  display: none;
}
.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

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

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

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

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  opacity: 0;
}
.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-file-input[disabled] ~ .custom-file-label, .custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}
.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}
.custom-file-input ~ .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;
  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: none;
}
.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-range::-moz-focus-outer {
  border: 0;
}
.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    transition: none;
  }
}
.custom-range::-webkit-slider-thumb:active {
  background-color: #b3d7ff;
}
.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    transition: none;
  }
}
.custom-range::-moz-range-thumb:active {
  background-color: #b3d7ff;
}
.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    transition: none;
  }
}
.custom-range::-ms-thumb:active {
  background-color: #b3d7ff;
}
.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}
.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}
.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}
.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}
.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}
.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}
.custom-range:disabled::-moz-range-track {
  cursor: default;
}
.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
.custom-file-label,
.custom-select {
    transition: none;
  }
}

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

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}
.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}
.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}
.nav-tabs .nav-item {
  margin-bottom: -1px;
}
.nav-tabs .nav-link {
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}
.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 {
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff;
}

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

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

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

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}
.navbar .container,
.navbar .container-fluid,
.navbar .container-sm,
.navbar .container-md,
.navbar .container-lg,
.navbar .container-xl {
  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: no-repeat center center;
  background-size: 100% 100%;
}

@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-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-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-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-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}
.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  flex-wrap: nowrap;
}
.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 {
  display: flex;
}
.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}
.breadcrumb-item.active {
  color: #6c757d;
}

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

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}
.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}
.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

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

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

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}
a.badge:hover, a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

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

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

.badge-primary {
  color: #fff;
  background-color: #007bff;
}
a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: #0062cc;
}
a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.badge-secondary {
  color: #fff;
  background-color: #6c757d;
}
a.badge-secondary:hover, a.badge-secondary:focus {
  color: #fff;
  background-color: #545b62;
}
a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #28a745;
}
a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: #1e7e34;
}
a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #17a2b8;
}
a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  background-color: #117a8b;
}
a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}
a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}
a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #dc3545;
}
a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: #bd2130;
}
a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}
a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}
a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #343a40;
}
a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  background-color: #1d2124;
}
a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}
@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

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

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

.alert-heading {
  color: inherit;
}

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

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

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}
.alert-primary hr {
  border-top-color: #9fcdff;
}
.alert-primary .alert-link {
  color: #002752;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}
.alert-secondary hr {
  border-top-color: #c8cbcf;
}
.alert-secondary .alert-link {
  color: #202326;
}

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}
.alert-success hr {
  border-top-color: #b1dfbb;
}
.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}
.alert-info hr {
  border-top-color: #abdde5;
}
.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}
.alert-warning hr {
  border-top-color: #ffe8a1;
}
.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}
.alert-danger hr {
  border-top-color: #f1b0b7;
}
.alert-danger .alert-link {
  color: #491217;
}

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}
.alert-light hr {
  border-top-color: #ececf6;
}
.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}
.alert-dark hr {
  border-top-color: #b9bbbe;
}
.alert-dark .alert-link {
  color: #040505;
}

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

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

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

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

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

.media-body {
  flex: 1;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}
.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}
.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: min-content;
  content: "";
}
.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}
.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

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

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

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

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

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

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

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

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

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

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

  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
.modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", 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;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 0.9;
}
.tooltip .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", 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;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}
.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}
.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

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

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

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

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

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

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

.carousel {
  position: relative;
}

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

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

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

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

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

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

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

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

.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: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: spinner-border 0.75s linear infinite;
}

.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: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: spinner-grow 0.75s linear infinite;
}

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

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

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

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

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

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

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

.bg-primary {
  background-color: #007bff !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #0062cc !important;
}

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

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important;
}

.bg-success {
  background-color: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

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

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

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

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

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

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

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

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

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

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

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

.border-info {
  border-color: #17a2b8 !important;
}

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

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

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

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

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

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

a.text-primary:hover, a.text-primary:focus {
  color: #0056b3 !important;
}

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

a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

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

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}

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

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !important;
}

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

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

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

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

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

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
*::before,
*::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a:not(.btn) {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  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;
  }
}
.color-red {
  background-color: #cc3300 !important;
}

.color-blue {
  background-color: #006699 !important;
}

.color-white {
  background-color: white !important;
}

.color-yellow {
  background-color: #ffcc00 !important;
}

.color-green {
  background-color: #009966 !important;
}

.color-grey {
  background-color: #b7b7b7 !important;
}

.color-orange {
  background-color: #c68503 !important;
}

.color-gold {
  background-color: #A67C01 !important;
}

.color-pink {
  background-color: #fa00ff !important;
}

* {
  -webkit-text-size-adjust: none;
}

body {
  font-family: Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  line-height: 25.2px;
  background-color: #193657;
}
@media (min-width: 576px) {
  body {
    background-color: #e1e1e1;
  }
}
body.pdf {
  background-color: #fff;
}
body img.emoji {
  width: 16px;
  display: block;
}

.main {
  background-color: #193657;
  padding: 1rem 0;
}
.main.sub {
  padding-bottom: 0;
}
.main .wrapper {
  background-color: #fff;
  padding: 0;
}
.main .wrapper .back {
  margin-right: 8px;
}
.main .wrapper .back a {
  padding: 0.25rem;
}
.main .wrapper .back a img {
  margin-left: 0;
}
.main .wrapper .title {
  background: #e1e1e1;
  padding: 10px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.main .wrapper .title .meta, .main .wrapper .title .buttons {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex-grow: 1;
  min-width: 0;
}
.main .wrapper .title .title-content label {
  margin-bottom: 0;
  line-height: 14px;
}
.main .wrapper .title h3, .main .wrapper .title h4, .main .wrapper .title h5, .main .wrapper .title h6 {
  margin-bottom: 0;
}
.main .wrapper .title h5 {
  font-size: 1.35rem;
}
.main .wrapper .title .meta {
  flex-shrink: 0;
  margin-right: 20px;
  margin-bottom: 0;
}
.main .wrapper .title .buttons {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
  gap: 6px;
}
.main .wrapper .title .buttons .btn {
  flex-shrink: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
}
.main .wrapper .title .buttons .btn:last-of-type {
  margin-right: 0;
}
.main .wrapper .content {
  padding: 10px;
  position: relative;
}
.main .wrapper .content .content-overlay {
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 999;
}
.main .wrapper .content .content-overlay .alert {
  display: block;
  position: absolute;
  top: 50px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  width: 200px;
  text-align: center;
}

.main-panel {
  padding: 0;
  background: #193657;
}

.button-bar {
  padding: 10px 0;
  margin-bottom: 50px;
  background: #cccccc;
}

#breadcrumbs {
  background-color: #e1e1e1;
}

#alerts {
  background-color: #193657;
}

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

.form-check-label-sm {
  font-size: 14px;
  line-height: 14px;
}

.dropdown-menu .dropdown-item span {
  font-size: smaller;
}
.dropdown-menu .dropdown-item:hover small {
  text-decoration: underline;
}

.gate.red, .rider.red, .result-rider.red, .team-color.red, .color.red {
  background-color: #cc3300;
}
.gate.blue, .rider.blue, .result-rider.blue, .team-color.blue, .color.blue {
  background-color: #006699;
}
.gate.white, .rider.white, .result-rider.white, .team-color.white, .color.white {
  background-color: white;
}
.gate.yellow, .rider.yellow, .result-rider.yellow, .team-color.yellow, .color.yellow {
  background-color: #ffcc00;
}
.gate.green, .rider.green, .result-rider.green, .team-color.green, .color.green {
  background-color: #009966;
}
.gate.grey, .rider.grey, .result-rider.grey, .team-color.grey, .color.grey {
  background-color: #b7b7b7;
}
.gate.orange, .rider.orange, .result-rider.orange, .team-color.orange, .color.orange {
  background-color: #c68503;
}
.gate.pink, .rider.pink, .result-rider.pink, .team-color.pink, .color.pink {
  background-color: #fa00ff;
}

table td[contenteditable]:hover {
  font-weight: bolder;
  cursor: pointer;
  background: #d8d8d8;
}

.modal-header, .modal-body {
  padding: 10px;
}

.loader {
  top: 0;
  position: fixed;
  height: 100vh;
  width: 100vw;
  background: rgba(0, 0, 0, 0.8);
  z-index: 1000000;
  display: flex;
  justify-content: center;
  align-items: center;
}

.modal-body .modal-footer {
  padding: 10px 0 0;
}
.modal-body .modal-footer > * {
  margin: 0;
}

h3 {
  font-size: 25px;
}

h4 {
  font-size: 23px;
}

h5 {
  font-size: 21px;
}

@media (min-width: 576px) {
  .main-panel {
    padding: 0;
  }

  .main {
    padding: 1.5rem 0;
  }
  .main .wrapper .title, .main .wrapper .content {
    padding: 1rem;
  }
}
.alert {
  display: flex;
  padding: 10px;
  margin-bottom: 0;
  border-radius: 0;
}
.alert p, .alert span {
  line-height: 16px;
  font-size: 13px;
  font-weight: normal;
  margin-bottom: 0;
}
.alert img {
  align-self: center;
  margin-right: 5px;
}
.alert.info {
  display: block;
}
.alert.info img {
  display: inline-block;
  margin-left: 1px;
  margin-right: 1px;
  width: 12px;
  height: 12px;
}
.alert ul {
  margin-bottom: 0;
  padding-left: 1rem;
}
.alert ul li {
  line-height: 20px;
}

header {
  background: #fff;
}

#top-bar {
  display: none;
}
@media (min-width: 576px) {
  #top-bar {
    display: block;
    background: #000;
    text-align: right;
    padding-top: 5px;
    padding-bottom: 5px;
  }
  #top-bar a {
    color: #fff;
    font-size: 12px;
    line-height: 12px;
    margin-left: 5px;
    text-decoration: none;
  }
  #top-bar a:first-of-type {
    margin-left: 0;
  }
  #top-bar a:hover {
    text-decoration: underline !important;
  }
}

#header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 10px;
}
#header .logo {
  display: block;
}
#header .logo img {
  width: 220px;
}
#header .sub-header > * {
  display: none;
}
#header .sub-header .menu {
  display: inline-block;
  background: #e1e1e1;
  align-self: center;
}
#header .sub-header .menu .user {
  display: none;
  padding: 5px 5px 5px 10px;
}
#header .sub-header .menu .user .hey {
  margin-right: 10px;
}
#header .sub-header .menu button {
  padding: 10px;
}
#header .sub-header .menu .dropdown-menu {
  padding: 0;
}
#header .sub-header .menu .dropdown-menu .dropdown-item {
  padding: 5px;
  display: flex;
  align-items: center;
}
#header .sub-header .menu .dropdown-menu .dropdown-item span {
  margin-right: 5px;
}
#header .sub-header .menu .dropdown-menu .dropdown-item span img {
  width: 12px;
}
#header .sub-header .menu .dropdown-menu .dropdown-item small {
  line-height: 16px;
}
@media (min-width: 576px) {
  #header {
    padding: 15px 0;
  }
  #header .logo {
    margin: 0;
  }
  #header .logo img {
    width: 250px;
  }
  #header .sub-header {
    display: inline-flex;
  }
  #header .sub-header .dropdown-item {
    display: inline-flex;
    align-items: center;
    width: auto;
    padding: 0;
    margin-left: 10px;
  }
  #header .sub-header .dropdown-item:hover {
    background: none;
  }
  #header .sub-header .dropdown-item:hover small {
    text-decoration: underline;
  }
  #header .sub-header .dropdown-item span {
    margin-right: 5px;
  }
  #header .sub-header .dropdown-item small {
    font-size: 17px;
    line-height: 17px;
  }
  #header .sub-header .dropdown-item:first-of-type {
    margin-left: 0;
  }
  #header .sub-header .menu {
    width: auto;
    margin: 0 0 0 30px;
  }
  #header .sub-header .menu .user {
    display: flex;
    align-items: center;
    flex-grow: 1;
    padding: 5px 10px;
  }
  #header .sub-header .menu .user .hey {
    font-weight: bolder;
  }
  #header .sub-header .menu button {
    display: none;
  }
}

h1, h2, h3, h4, h5, h6 {
  font-family: rift, sans-serif;
  font-weight: 700;
}

form input, form select, form textarea {
  -webkit-appearance: none;
}
form input[type=checkbox] {
  -webkit-appearance: checkbox;
}
form input[type=radio] {
  -webkit-appearance: radio;
}
form select {
  -webkit-appearance: listbox;
}
form label.required:after {
  content: " *";
  color: #ff0000;
}
form textarea.form-control {
  height: 150px;
}
form .main-panel {
  padding-bottom: 140px;
}
form .main-panel.has-info {
  padding-bottom: 180px;
}
form .button-bar {
  position: fixed;
  bottom: 0;
  margin: 0;
  padding: 10px 0;
  width: 100%;
  border-top: 5px #193657 solid;
  box-shadow: 0 0 20px 10px #193657;
}
form .button-bar .container {
  padding: 0 10px;
}
form .button-bar .info {
  margin-bottom: 10px;
  padding: 5px;
}
form .button-bar .buttons {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
form .modal-footer {
  margin-top: 20px;
}
form .modal-footer.dialog-buttons {
  display: flex;
  justify-content: space-between;
}
form .form-group:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 576px) {
  form .button-bar {
    padding: 10px 0;
  }
  form .button-bar .container {
    padding: 0;
  }
  form .button-bar .buttons {
    justify-content: center;
  }
}

.modal-dialog textarea.form-control {
  height: 80px;
}

[data-emoji] {
  font-style: normal;
  font-weight: normal;
}

[data-emoji]:before {
  content: attr(data-emoji);
  margin-right: 4px;
}

.btn.btn-emoji {
  display: flex;
  align-items: center;
}
.btn.btn-emoji .emoji {
  margin-left: 5px;
}

.wave {
  animation: wave 2s infinite;
  display: inline-block;
}

@keyframes wave {
  0% {
    transform: rotate(0deg);
  }
  10% {
    transform: rotate(14deg);
  }
  20% {
    transform: rotate(-8deg);
  }
  30% {
    transform: rotate(14deg);
  }
  40% {
    transform: rotate(-4deg);
  }
  50% {
    transform: rotate(10deg);
  }
  60% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.fade-in {
  animation: fadeIn linear 1s;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#breadcrumbs {
  padding: 10px;
  overflow: scroll;
}
#breadcrumbs .container {
  position: relative;
}
#breadcrumbs ol.breadcrumb {
  background: none;
  flex-wrap: nowrap;
}
#breadcrumbs ol.breadcrumb li {
  display: flex;
  align-items: center;
}
#breadcrumbs ol.breadcrumb li:last-of-type {
  padding-right: 10px;
}
#breadcrumbs ol.breadcrumb li a, #breadcrumbs ol.breadcrumb li span {
  font-size: 12px;
  line-height: 12px;
}
#breadcrumbs ol.breadcrumb li a:hover {
  text-decoration: none;
}
#breadcrumbs ol.breadcrumb li a span {
  text-decoration: underline;
  color: #000;
}
#breadcrumbs ol.breadcrumb li span {
  white-space: nowrap;
}
#breadcrumbs ol.breadcrumb li span.separator {
  padding: 0 6px;
}
#breadcrumbs ol.breadcrumb li span.separator img {
  width: 12px;
}

@media (min-width: 576px) {
  #breadcrumbs ol.breadcrumb {
    flex-wrap: nowrap;
  }
}
a:not(.btn):not(.emoji):not(.dropdown-item) {
  color: #000;
  text-decoration: underline;
}
a:not(.btn):not(.emoji):not(.dropdown-item):hover {
  text-decoration: none;
}
a.emoji {
  line-height: 14px;
  text-decoration: none;
}
a.emoji:hover {
  opacity: 0.5;
}
a.emoji:hover img {
  opacity: 0.5;
}

.content .nav-tabs {
  display: flex;
  flex-wrap: nowrap;
}
.content .nav-tabs .nav-item {
  overflow: hidden;
}
.content .nav-tabs .nav-item .nav-link {
  font-size: 14px;
  font-weight: bolder;
  padding: 5px 10px;
  text-decoration: none;
}
.content .nav-tabs .nav-item .nav-link:hover {
  text-decoration: underline;
}
@media (min-width: 576px) {
  .content .nav-tabs .nav-tabs {
    display: block;
  }
}
.content .tab-content {
  padding: 15px 10px;
  border: 1px solid #dee2e6;
  border-top: 0;
  overflow: auto;
}
.content .tab-content .tab-pane .form-group:last-of-type {
  margin-bottom: 0;
}
table {
  table-layout: fixed;
}
table thead th {
  border-top: 0 !important;
  padding-top: 0 !important;
}
table tr th, table tr td {
  font-family: Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  line-height: 19.6px;
}
table tr th.center, table tr td.center {
  text-align: center;
}
table tr th.draw, table tr td.draw {
  width: 30px;
}
table tr th.number, table tr td.number {
  width: 40px;
}
table tr th.date, table tr td.date {
  width: 90px;
}
table tr th.nat, table tr td.nat {
  width: 40px;
}
table tr th.fmn, table tr td.fmn {
  width: 50px;
}
table tr th.reserve, table tr td.reserve {
  width: 50px;
}
table tr th.timing, table tr td.timing {
  width: 75px;
}
table tr th.ellipsis, table tr td.ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
table tr th.mobile-hidden, table tr td.mobile-hidden {
  display: none;
}
table tr th img.flag, table tr td img.flag {
  width: 25px;
  display: block;
}
table tr th.bar, table tr td.bar {
  white-space: nowrap;
  text-align: center;
  padding: 0 5px 0 0;
}
table tr th.bar a, table tr td.bar a {
  margin-left: 4px;
}
table tr th.track .wrapper, table tr td.track .wrapper {
  background: none;
  display: flex;
  align-items: center;
}
table tr th.track .wrapper span, table tr td.track .wrapper span {
  margin-right: 5px;
}
table tr th.track .wrapper img.flag, table tr td.track .wrapper img.flag {
  width: 18px;
  align-self: center;
}
table tr th div.text-emoji, table tr td div.text-emoji {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
table tr th div.text-emoji .text, table tr td div.text-emoji .text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-right: 5px;
}
table tr th div.text-emoji .emoji, table tr td div.text-emoji .emoji {
  flex-shrink: 0;
}
table tr th.dropdown-cell .dropdown-toggle, table tr td.dropdown-cell .dropdown-toggle {
  padding: 0;
  width: 30px;
  text-align: center;
}
table tr th.dropdown-cell .dropdown-toggle span, table tr td.dropdown-cell .dropdown-toggle span {
  height: 24px;
  font-size: 24px;
  line-height: 24px;
}
table tr th a.emoji, table tr td a.emoji {
  display: inline-block;
}
table tr th a.emoji img, table tr td a.emoji img {
  display: inline-block;
}
table tr th.license .license-wrapper, table tr td.license .license-wrapper {
  display: flex;
  align-items: center;
}
table tr th.license .license-wrapper img, table tr td.license .license-wrapper img {
  width: 10px;
  align-self: center;
  display: inline-block;
}
table tr th.license .license-wrapper small, table tr td.license .license-wrapper small {
  margin-left: 4px;
  font-size: 12px;
  line-height: 12px;
}
table tr th.license-header, table tr td.license-header {
  width: 100px;
}
table tr th.license-header img, table tr td.license-header img {
  display: inline-block;
}
table tr th {
  font-weight: 700;
}
table tr td.remove {
  background-color: #ffcbcb;
  border-left: 1px #000 solid;
}
table tr th, table tr td {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
table tr th[contenteditable], table tr td[contenteditable] {
  text-overflow: initial;
}
table tr th.icon, table tr td.icon {
  padding: 0;
  width: 25px;
}
table tr th.icon.last, table tr td.icon.last {
  width: 38px;
  padding-right: 8px;
}
table tr th.icon a.emoji, table tr td.icon a.emoji {
  display: block;
  text-align: center;
}
table tr th.icon a.emoji img, table tr td.icon a.emoji img {
  margin: 0 auto auto;
}
table tr th a.move, table tr td a.move {
  cursor: move;
}
table tr th.html, table tr td.html {
  width: 60px;
}
table tr th.active, table tr td.active {
  width: 100px;
}
table tr th.links, table tr td.links {
  text-align: right;
  white-space: normal;
  line-height: 18px;
  width: 142px;
  padding-right: 10px;
}
table tr th.links a, table tr td.links a {
  margin-left: 5px;
}
table tr th.links a:first-of-type, table tr td.links a:first-of-type {
  margin-left: 0;
}
table tr th span.heat-finished a.reset, table tr td span.heat-finished a.reset {
  display: none;
}
table tr th span.heat-finished:hover a.finished, table tr td span.heat-finished:hover a.finished {
  display: none;
}
table tr th span.heat-finished:hover a.reset, table tr td span.heat-finished:hover a.reset {
  display: block;
}
table tr th.totals, table tr td.totals {
  width: 60px;
}
table tr.grading th, table tr.grading td {
  background-color: #d8d8d8;
}
table.race-team-list td.rider-list {
  white-space: normal;
}
table.race-team-list td.rider-list a {
  font-size: smaller;
  line-height: 16px;
  display: block;
}
table .selected {
  border: 2px #000 solid;
  background-color: #f4d7d7;
  box-shadow: 6px 3px 5px #555, 0 1px 0 #ccc inset, 0 -1px 0 #ccc inset;
}
table tr th.nav-mobile, table tr td.nav-mobile {
  display: table-cell;
  width: 24px;
}
table tr th.nav-desktop, table tr td.nav-desktop {
  display: none;
}

@media (min-width: 576px) {
  table tr th.mobile-hidden, table tr td.mobile-hidden {
    display: table-cell;
  }
  table tr th.pos, table tr td.pos {
    width: 20px;
  }
  table tr th.nat, table tr td.nat {
    width: 40px;
  }
  table tr th.sub, table tr td.sub {
    width: 120px;
  }
  table tr th.date, table tr td.date {
    width: 100px;
  }
  table tr th.reserve, table tr td.reserve {
    width: 80px;
  }
  table tr th.link, table tr td.link {
    width: 120px;
  }
  table tr th.nav-mobile, table tr td.nav-mobile {
    display: none;
  }
  table tr th.nav-desktop, table tr td.nav-desktop {
    display: table-cell;
  }
  table.event-list th.track, table.event-list td.track {
    width: 200px;
  }
  table.event-list th.enabled, table.event-list td.enabled {
    width: 100px;
  }
  table.rider-list th.team, table.rider-list td.team {
    width: 100px;
  }
}
.foldable-trigger img.emoji {
  width: 20px;
  display: block;
}

.foldable-content {
  display: none;
}
.foldable-content.open {
  display: block;
}
.foldable-content.open.buttons {
  display: inline-flex;
}
.foldable-content.open.buttons .emoji img {
  display: inline;
}

@media (min-width: 576px) {
  .foldable-trigger:not(.heat-config) {
    display: none !important;
  }

  .foldable-content:not(.heat-config) {
    display: block !important;
  }
  .foldable-content:not(.heat-config).buttons {
    display: inline-flex !important;
  }
}
.page-header {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.page-header .meta {
  width: 100%;
  position: relative;
  padding: 15px 10px;
}
.page-header .meta h3, .page-header .meta h4 {
  margin: 0;
}
.page-header .meta h3.header-title, .page-header .meta h4.header-title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  flex-grow: 1;
  flex-shrink: 1;
  line-height: 100%;
}
.page-header .meta .buttons {
  padding: 0;
}
.page-header .meta .buttons a {
  margin: 2px;
}
.page-header .buttons {
  width: 100%;
  border-top: 1px #e1e1e1 solid;
  text-align: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  padding: 10px;
  flex-shrink: 0;
}
.page-header .buttons a {
  font-size: 14px;
  line-height: 14px;
  padding: 6px 4px;
  align-self: center;
}
.page-header .buttons a.emoji {
  padding: 0;
  flex: 1;
  text-align: right;
}
.page-header .buttons a.no-mobile {
  display: none;
}
.page-header .buttons a img.emoji {
  width: 20px;
}
@media (min-width: 576px) {
  .page-header {
    justify-content: space-between;
    flex-direction: row;
  }
  .page-header.wrapper {
    padding: 1rem;
  }
  .page-header .meta {
    width: auto;
    margin-bottom: 0;
    flex-grow: 1;
    padding: 0;
  }
  .page-header .meta .buttons {
    display: none;
  }
  .page-header .buttons {
    width: auto;
    padding: 0;
    border-top: 0;
  }
  .page-header .buttons a {
    padding: 8px 6px;
    font-size: 14px;
  }
  .page-header .buttons a.no-mobile {
    display: inline-block;
  }
}

#event-header.page-header .meta .meta-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
#event-header.page-header .meta .meta-title h3 {
  margin-right: 10px;
}
#event-header.page-header .meta .meta-title h3.pointer {
  cursor: pointer;
}
#event-header.page-header .meta .meta-title h3.pointer:hover {
  text-decoration: underline;
}
#event-header.page-header .meta .meta-title a.emoji img {
  width: 20px;
}
#event-header.page-header .meta .meta-title .dropdown {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}
#event-header.page-header .meta .meta-title .dropdown .dropdown-menu .dropdown-item {
  width: 360px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  font-size: 12px;
}
#event-header.page-header .meta .meta-left {
  display: block;
}
#event-header.page-header .meta .meta-left .wrapper {
  min-width: 0;
  margin-right: 10px;
}
#event-header.page-header .meta .meta-left .menu {
  margin-top: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#event-header.page-header .meta .meta-left .menu .items {
  display: flex;
  gap: 6px;
}
#event-header.page-header .meta .meta-left .menu .items button.mylaps {
  display: inline-block;
}
#event-header.page-header .meta .meta-left .menu .dropdown.hamburger .dropdown-toggle {
  padding: 0;
  margin-left: 10px;
}
#event-header.page-header .meta .meta-left .menu .dropdown.hamburger .dropdown-toggle img {
  height: 20px;
  display: block;
}
#event-header.page-header .meta .meta-left .menu .dropdown.hamburger .dropdown-toggle:after {
  display: none;
}
#event-header.page-header .meta .meta-left a.btn {
  align-self: flex-end;
  text-wrap: nowrap;
}
#event-header.page-header .meta .event-track {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 5px;
}
#event-header.page-header .meta .event-track span {
  font-size: 16px;
  line-height: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-right: 5px;
}
#event-header.page-header .meta .event-track .flag {
  width: 18px;
  align-self: center;
  display: block;
}
#event-header.page-header .meta .event-heat, #event-header.page-header .meta .event-update {
  line-height: 12px;
  font-size: 12px;
}
#event-header.page-header .meta .event-heat span, #event-header.page-header .meta .event-update span {
  font-weight: bolder;
}
#event-header.page-header .meta .event-meta p {
  margin-bottom: 4px;
  font-size: 12px;
  line-height: 12px;
}
#event-header.page-header .meta .event-meta p span, #event-header.page-header .meta .event-meta p strong {
  font-size: 12px;
  line-height: 12px;
}
#event-header.page-header .meta .event-meta p:last-of-type {
  margin-bottom: 0;
}
#event-header.page-header a.btn {
  background: #e1e1e1;
}
@media (min-width: 576px) {
  #event-header.page-header .meta .event-title {
    text-align: left;
    padding-right: 0;
  }
  #event-header.page-header .meta .event-track {
    justify-content: flex-start;
  }
  #event-header.page-header .meta .meta-left {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  #event-header.page-header .meta .meta-left .menu {
    margin-top: 0;
  }
}

#race-header.page-header {
  background-color: #e1e1e1;
}
#race-header.page-header .meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
#race-header.page-header .meta .form-control {
  width: 100px;
}
#race-header.page-header .meta .race-title {
  flex-shrink: 0;
}
#race-header.page-header .meta .race-buttons {
  display: flex;
  overflow: scroll;
  gap: 6px;
}
#race-header.page-header .meta .race-buttons a {
  margin-right: 0;
}
#race-header.page-header .meta .race-buttons a.nav-mobile {
  display: inline-block;
}
#race-header.page-header .meta .race-buttons a.nav-desktop {
  display: none;
}
@media (min-width: 576px) {
  #race-header.page-header .meta .race-buttons a.nav-mobile {
    display: none;
  }
  #race-header.page-header .meta .race-buttons a.nav-desktop {
    display: inline-block;
  }
}
#race-header.page-header .meta .race-menu {
  flex-shrink: 0;
  display: flex;
  gap: 6px;
}
#race-header.page-header .meta .race-menu .dropdown-toggle {
  padding: 0;
}
#race-header.page-header .meta .race-menu .dropdown-toggle img {
  height: 20px;
  display: block;
}
#race-header.page-header .meta .race-menu .dropdown-toggle:after {
  display: none;
}
#race-header.page-header .meta h4 {
  flex-grow: 1;
}
@media (min-width: 576px) {
  #race-header.page-header .meta select {
    width: 120px;
  }
  #race-header.page-header .meta .race-buttons {
    overflow: hidden;
  }
  #race-header.page-header .buttons {
    border-top: 0;
  }
}

#race-buttons, #event-buttons {
  flex-wrap: nowrap;
}
#race-buttons .left, #event-buttons .left {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
#race-buttons a.emoji, #event-buttons a.emoji {
  flex-shrink: 0;
}

#screen-switcher {
  background: #e1e1e1;
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#screen-switcher a, #screen-switcher span {
  font-size: 12px;
  line-height: 12px;
}

.container.championship {
  padding-top: 8px;
  padding-bottom: 8px;
  background: #000;
  color: #fff;
  font-size: 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 16px;
}
.container.championship a {
  color: #fff !important;
}
.container.championship .alert {
  padding: 4px;
  text-align: center;
}

.read-only-meta {
  display: flex;
  line-height: 16px;
}
.read-only-meta img {
  align-self: center;
  display: inline-block;
  margin-right: 6px;
}

#user-event-list {
  max-height: 300px;
  overflow-y: scroll;
}

body.pdf {
  margin: 0;
}
body.pdf h1, body.pdf h2, body.pdf h3, body.pdf h4, body.pdf h5, body.pdf h6, body.pdf p, body.pdf span, body.pdf td, body.pdf th {
  font-family: "Roboto", sans-serif;
}
body.pdf h1 {
  font-size: 26px;
  line-height: 26px;
}
body.pdf h2 {
  font-size: 23.4px;
  line-height: 23.4px;
}
body.pdf h3 {
  font-size: 20.8px;
  line-height: 20.8px;
}
body.pdf h4 {
  font-size: 18.2px;
  line-height: 18.2px;
}
body.pdf h5 {
  font-size: 15.6px;
  line-height: 15.6px;
}
body.pdf table {
  table-layout: fixed;
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  border: 2px #000 solid;
}
body.pdf table tr th {
  font-weight: bolder;
}
body.pdf table tr th, body.pdf table tr td {
  font-size: 18px;
  line-height: 32.4px;
  border: 1px #000 solid;
  background: none;
  vertical-align: middle;
}
body.pdf table tr th.center, body.pdf table tr td.center {
  text-align: center;
}
body.pdf table tr th.name, body.pdf table tr td.name {
  line-height: 25.2px;
}
body.pdf header {
  position: relative;
  overflow: hidden;
}
body.pdf header .top {
  text-align: center;
  height: 34px;
}
body.pdf header .top p {
  color: #000;
  font-size: 20px;
  font-weight: bolder;
  line-height: 20px;
  margin-bottom: 0;
  padding: 8px 4px 4px;
  text-align: center;
}
body.pdf header .top img.fim-logo {
  width: 66px;
  margin-top: 4px;
}
body.pdf header .skewer {
  position: absolute;
  background: #000;
  height: 30px;
  width: 340px;
  top: 15px;
}
body.pdf header .skewer.left {
  left: -4px;
  transform: skew(30deg);
}
body.pdf header .skewer.right {
  right: -4px;
  transform: skew(-30deg);
}
body.pdf header .logos {
  padding: 20px 10px;
  margin-bottom: 20px;
  background: #000;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
body.pdf header .logos .logo {
  position: relative;
  width: 100px;
}
body.pdf header .logos .logo img {
  max-width: 100px;
  max-height: 60px;
  display: block;
}
body.pdf header .logos .logo img.swc {
  position: absolute;
  max-width: 200px;
  right: 0;
  top: -25px;
}
body.pdf header .logos .logo p {
  color: #fff;
  text-align: center;
  font-size: 12px;
  line-height: 12px;
  margin-top: 10px;
  margin-bottom: 0;
}
body.pdf header .logos .logo.logo-right {
  text-align: center;
}
body.pdf header .logos .logo.logo-right img {
  display: inline-block;
}
body.pdf header .logos .meta {
  display: flex;
  flex-grow: 1;
  justify-content: space-evenly;
  align-items: center;
}
body.pdf header .logos .meta .left p {
  margin: 0;
  text-align: center;
  color: #fff;
}
body.pdf header .logos .meta .left p.title {
  font-size: 25px;
  line-height: 25px;
  margin-bottom: 6px;
  font-weight: bolder;
}
body.pdf header .logos .meta .left p.sub-title {
  font-size: 22px;
  line-height: 22px;
  margin-bottom: 6px;
  font-weight: bolder;
}
body.pdf header .logos .meta .left p.date {
  font-size: 20px;
  line-height: 20px;
}
body.pdf header .logos .meta .officials p {
  font-size: 16px;
  line-height: 16px;
  color: #fff;
}
body.pdf header .logos .meta .officials p:first-of-type {
  margin-bottom: 10px;
}
body.pdf header.fime .top {
  padding-top: 4px;
  padding-bottom: 4px;
  height: auto;
}
body.pdf header.fime .top img {
  width: 80px;
}
body.pdf header.fime .logos .meta .left .date {
  margin-top: 10px;
  display: flex;
  justify-content: center;
  gap: 20px;
}
body.pdf header.fime .logos .meta .left .date span {
  font-size: 18px;
  line-height: 18px;
}
body.pdf header.flattrack {
  margin-bottom: 20px;
}
body.pdf header.flattrack .logo img {
  width: 100%;
}
body.pdf header.flattrack .meta {
  background: #f2b936;
  border-top: 2px #142c46 solid;
  display: flex;
  justify-content: space-around;
}
body.pdf header.flattrack .meta span {
  font-size: 18px;
  color: #142c46;
  line-height: 20px;
  padding: 10px;
  width: 260px;
  text-align: center;
}
body.pdf header.flattrack.classification .logo {
  text-align: center;
  background: linear-gradient(90deg, #efe047 0%, #efe047 40%, #122d46 60%);
}
body.pdf header.flattrack.classification .logo img {
  width: 60%;
}
body.pdf header.flattrack.classification .meta span {
  font-size: 16px;
  line-height: 14px;
}
body.pdf main {
  margin: 0 0 10px;
  padding: 0 20px;
}
body.pdf main .footer * {
  margin-bottom: 5px;
}
body.pdf main .footer *:last-child {
  margin-bottom: 0;
}
body.pdf main .footer p {
  font-size: 16px;
  line-height: 16px;
  text-align: center;
}
body.pdf main .footer p.head {
  font-weight: bolder;
}
body.pdf footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}
body.pdf footer p {
  margin-bottom: 3px;
  font-size: 14px;
  line-height: 14px;
  font-weight: bolder;
  text-align: center;
}
body.pdf footer p:nth-child(2) {
  font-weight: normal;
  margin-bottom: 10px;
}
body.pdf footer .logo {
  margin-top: 10px;
  background: #000;
  text-align: center;
  height: 30px;
}
body.pdf footer .logo img {
  display: inline-block;
  width: 100px;
}
body.pdf footer .logo.dmsb, body.pdf footer .logo.fmi, body.pdf footer .logo.mams, body.pdf footer .logo.knmv, body.pdf footer .logo.hms {
  height: 40px;
}
body.pdf footer .logo.dmsb p, body.pdf footer .logo.fmi p, body.pdf footer .logo.mams p, body.pdf footer .logo.knmv p, body.pdf footer .logo.hms p {
  color: #fff;
  margin: 0;
  line-height: 40px;
}
body.pdf footer .logos {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 20px;
  background: #000;
}
body.pdf footer .logos img {
  max-width: 100px;
  max-height: 60px;
}
body.pdf footer .logos img.anlas {
  max-width: 140px;
}
body.pdf footer .logos img.koopmann {
  max-width: 135px;
}
body.pdf footer .logos img.fim-moto {
  max-width: 120px;
}
body.pdf footer.fime {
  background: #000;
  padding-top: 10px;
  padding-bottom: 10px;
}
body.pdf footer.fime p {
  color: #fff;
}
body.pdf footer div.flattrack img {
  width: 100%;
}
body.pdf .sf-toolbar {
  display: none !important;
}
body.pdf.speedwaygp header .top, body.pdf.speedwaygp2 header .top, body.pdf.speedwaygp3 header .top {
  background: #e9ff15;
}
body.pdf.longtrack header .top {
  background: #2a6429;
}
body.pdf.longtrack header .top p {
  color: #fff;
}
body.pdf.longtrack-u23 header .top {
  background: #173c85;
}
body.pdf.longtrack-u23 header .top p {
  color: #fff;
}
body.pdf.flattrack header .top {
  background: #e6c86f;
}
body.pdf.fime-ice header .top {
  background: #017FC9;
}
body.pdf.fime-ice header .top p {
  color: #fff;
}
body.pdf.fim-isg header .top {
  background: #03b3fc;
}
body.pdf.fim-isg header .top p {
  color: #fff;
}
body.pdf.heats header .skewer {
  width: 500px;
}
body.pdf.fim-swc header .top {
  background: #fdb34c;
}
body.pdf.knmv header .top {
  background: #F28C00;
}
body.pdf.womens header .top {
  background: #d4af37;
}
body.pdf.womens header .top p {
  color: #000;
}

body.result .table, body.sprint .table, body.practice-times .table, body.qualifying-result .table {
  margin-bottom: 20px;
}
body.result .table h3, body.sprint .table h3, body.practice-times .table h3, body.qualifying-result .table h3 {
  margin-bottom: 10px;
}
body.result .runoffs, body.result .extra-heats, body.sprint .runoffs, body.sprint .extra-heats, body.practice-times .runoffs, body.practice-times .extra-heats, body.qualifying-result .runoffs, body.qualifying-result .extra-heats {
  margin-bottom: 20px;
}
body.result .runoffs p, body.result .extra-heats p, body.sprint .runoffs p, body.sprint .extra-heats p, body.practice-times .runoffs p, body.practice-times .extra-heats p, body.qualifying-result .runoffs p, body.qualifying-result .extra-heats p {
  line-height: 16px;
  margin-bottom: 4px;
}
body.result table tr th, body.result table tr td, body.sprint table tr th, body.sprint table tr td, body.practice-times table tr th, body.practice-times table tr td, body.qualifying-result table tr th, body.qualifying-result table tr td {
  padding: 0 10px;
}
body.result table tr th.place, body.result table tr td.place, body.sprint table tr th.place, body.sprint table tr td.place, body.practice-times table tr th.place, body.practice-times table tr td.place, body.qualifying-result table tr th.place, body.qualifying-result table tr td.place {
  width: 75px;
}
body.result table tr th.number, body.result table tr td.number, body.sprint table tr th.number, body.sprint table tr td.number, body.practice-times table tr th.number, body.practice-times table tr td.number, body.qualifying-result table tr th.number, body.qualifying-result table tr td.number {
  width: 100px;
}
body.result table tr th.fmn, body.result table tr td.fmn, body.sprint table tr th.fmn, body.sprint table tr td.fmn, body.practice-times table tr th.fmn, body.practice-times table tr td.fmn, body.qualifying-result table tr th.fmn, body.qualifying-result table tr td.fmn {
  width: 90px;
}
body.result table tr th.nation, body.result table tr td.nation, body.sprint table tr th.nation, body.sprint table tr td.nation, body.practice-times table tr th.nation, body.practice-times table tr td.nation, body.qualifying-result table tr th.nation, body.qualifying-result table tr td.nation {
  width: 160px;
}
body.result table tr th.points, body.result table tr td.points, body.sprint table tr th.points, body.sprint table tr td.points, body.practice-times table tr th.points, body.practice-times table tr td.points, body.qualifying-result table tr th.points, body.qualifying-result table tr td.points {
  width: 100px;
}
body.result table tr th.red, body.result table tr td.red, body.sprint table tr th.red, body.sprint table tr td.red, body.practice-times table tr th.red, body.practice-times table tr td.red, body.qualifying-result table tr th.red, body.qualifying-result table tr td.red {
  background: #cc3300;
}
body.result table tr th.blue, body.result table tr td.blue, body.sprint table tr th.blue, body.sprint table tr td.blue, body.practice-times table tr th.blue, body.practice-times table tr td.blue, body.qualifying-result table tr th.blue, body.qualifying-result table tr td.blue {
  background: #006699;
}
body.result table tr th.white, body.result table tr td.white, body.sprint table tr th.white, body.sprint table tr td.white, body.practice-times table tr th.white, body.practice-times table tr td.white, body.qualifying-result table tr th.white, body.qualifying-result table tr td.white {
  background: #ffffff;
}
body.result table tr th.yellow, body.result table tr td.yellow, body.sprint table tr th.yellow, body.sprint table tr td.yellow, body.practice-times table tr th.yellow, body.practice-times table tr td.yellow, body.qualifying-result table tr th.yellow, body.qualifying-result table tr td.yellow {
  background: #ffcc00;
}
body.result table tr th.time, body.result table tr td.time, body.sprint table tr th.time, body.sprint table tr td.time, body.practice-times table tr th.time, body.practice-times table tr td.time, body.qualifying-result table tr th.time, body.qualifying-result table tr td.time {
  width: 110px;
}
body.result table tr th.gap, body.result table tr td.gap, body.sprint table tr th.gap, body.sprint table tr td.gap, body.practice-times table tr th.gap, body.practice-times table tr td.gap, body.qualifying-result table tr th.gap, body.qualifying-result table tr td.gap {
  width: 80px;
}
body.result table tr th.other-time, body.result table tr td.other-time, body.sprint table tr th.other-time, body.sprint table tr td.other-time, body.practice-times table tr th.other-time, body.practice-times table tr td.other-time, body.qualifying-result table tr th.other-time, body.qualifying-result table tr td.other-time {
  width: 90px;
  font-size: 15px;
}
body.result table tr th, body.sprint table tr th, body.practice-times table tr th, body.qualifying-result table tr th {
  background-color: #ededed;
}
body.result table tr td.other-time, body.sprint table tr td.other-time, body.practice-times table tr td.other-time, body.qualifying-result table tr td.other-time {
  color: #8f8f8f;
}
body.result table.solo-table tr td:first-of-type, body.sprint table.solo-table tr td:first-of-type, body.practice-times table.solo-table tr td:first-of-type, body.qualifying-result table.solo-table tr td:first-of-type {
  background-color: #ededed;
}
body.result table.team-table, body.sprint table.team-table, body.practice-times table.team-table, body.qualifying-result table.team-table {
  table-layout: auto;
}
body.result table.team-table tr th.team-name .wrapper, body.sprint table.team-table tr th.team-name .wrapper, body.practice-times table.team-table tr th.team-name .wrapper, body.qualifying-result table.team-table tr th.team-name .wrapper {
  display: flex;
  justify-content: space-between;
}
body.result table.team-table tr th.team-name .wrapper .manager, body.sprint table.team-table tr th.team-name .wrapper .manager, body.practice-times table.team-table tr th.team-name .wrapper .manager, body.qualifying-result table.team-table tr th.team-name .wrapper .manager {
  font-size: 13px;
}
body.result table.team-table tr td, body.sprint table.team-table tr td, body.practice-times table.team-table tr td, body.qualifying-result table.team-table tr td {
  line-height: 28px;
}
body.result table.team-table tr td.place, body.sprint table.team-table tr td.place, body.practice-times table.team-table tr td.place, body.qualifying-result table.team-table tr td.place {
  font-size: 20px;
  font-weight: bolder;
}
body.result table.team-table tr td.number, body.sprint table.team-table tr td.number, body.practice-times table.team-table tr td.number, body.qualifying-result table.team-table tr td.number {
  width: 60px;
}
body.result table.team-table tr td.flag, body.sprint table.team-table tr td.flag, body.practice-times table.team-table tr td.flag, body.qualifying-result table.team-table tr td.flag {
  width: 100px;
  padding-top: 5px;
  padding-bottom: 5px;
}
body.result table.team-table tr td.flag img, body.sprint table.team-table tr td.flag img, body.practice-times table.team-table tr td.flag img, body.qualifying-result table.team-table tr td.flag img {
  width: 100%;
  display: block;
}
body.result table.team-table tr td.flag span, body.sprint table.team-table tr td.flag span, body.practice-times table.team-table tr td.flag span, body.qualifying-result table.team-table tr td.flag span {
  display: block;
  text-align: center;
  font-weight: bolder;
  margin-top: 4px;
  font-size: 16px;
  line-height: 16px;
}
body.result table.team-table tr td.points, body.sprint table.team-table tr td.points, body.practice-times table.team-table tr td.points, body.qualifying-result table.team-table tr td.points {
  width: 60px;
}
body.result table.team-table tr td.total, body.sprint table.team-table tr td.total, body.practice-times table.team-table tr td.total, body.qualifying-result table.team-table tr td.total {
  width: 60px;
  font-size: 28px;
  font-weight: bolder;
}
body.result .officials, body.sprint .officials, body.practice-times .officials, body.qualifying-result .officials {
  margin-bottom: 20px;
  display: flex;
  justify-content: space-between;
}
body.result .officials .official p, body.sprint .officials .official p, body.practice-times .officials .official p, body.qualifying-result .officials .official p {
  margin-bottom: 6px;
  font-size: 18px;
  line-height: 18px;
}
body.result .officials .official p.label, body.sprint .officials .official p.label, body.practice-times .officials .official p.label, body.qualifying-result .officials .official p.label {
  font-weight: bolder;
}
body.result .officials .official:nth-child(2) p, body.sprint .officials .official:nth-child(2) p, body.practice-times .officials .official:nth-child(2) p, body.qualifying-result .officials .official:nth-child(2) p {
  text-align: right;
}
body.result.team, body.sprint.team, body.practice-times.team, body.qualifying-result.team {
  padding: 0 40px;
}
body.result.team .table, body.sprint.team .table, body.practice-times.team .table, body.qualifying-result.team .table {
  width: 400px;
  margin: 0 auto 50px;
}
body.result.team table tr th.place, body.result.team table tr td.place, body.sprint.team table tr th.place, body.sprint.team table tr td.place, body.practice-times.team table tr th.place, body.practice-times.team table tr td.place, body.qualifying-result.team table tr th.place, body.qualifying-result.team table tr td.place {
  width: 70px;
}
body.result.team table tr th.flag, body.result.team table tr td.flag, body.sprint.team table tr th.flag, body.sprint.team table tr td.flag, body.practice-times.team table tr th.flag, body.practice-times.team table tr td.flag, body.qualifying-result.team table tr th.flag, body.qualifying-result.team table tr td.flag {
  text-align: center;
}
body.result.team table tr th.fmn, body.result.team table tr td.fmn, body.sprint.team table tr th.fmn, body.sprint.team table tr td.fmn, body.practice-times.team table tr th.fmn, body.practice-times.team table tr td.fmn, body.qualifying-result.team table tr th.fmn, body.qualifying-result.team table tr td.fmn {
  width: 100px;
}
body.result.youth table tr th, body.result.youth table tr td, body.sprint.youth table tr th, body.sprint.youth table tr td, body.practice-times.youth table tr th, body.practice-times.youth table tr td, body.qualifying-result.youth table tr th, body.qualifying-result.youth table tr td {
  font-size: 17px;
  line-height: 27px;
  padding: 0 4px;
}
body.result.flattrack table tr th, body.result.flattrack table tr td, body.sprint.flattrack table tr th, body.sprint.flattrack table tr td, body.practice-times.flattrack table tr th, body.practice-times.flattrack table tr td, body.qualifying-result.flattrack table tr th, body.qualifying-result.flattrack table tr td {
  font-size: 13px;
  line-height: 22px;
  padding: 0 4px;
}
body.result.flattrack table tr th.place, body.result.flattrack table tr td.place, body.sprint.flattrack table tr th.place, body.sprint.flattrack table tr td.place, body.practice-times.flattrack table tr th.place, body.practice-times.flattrack table tr td.place, body.qualifying-result.flattrack table tr th.place, body.qualifying-result.flattrack table tr td.place {
  width: 50px;
}
body.result.flattrack table tr th.number, body.result.flattrack table tr td.number, body.sprint.flattrack table tr th.number, body.sprint.flattrack table tr td.number, body.practice-times.flattrack table tr th.number, body.practice-times.flattrack table tr td.number, body.qualifying-result.flattrack table tr th.number, body.qualifying-result.flattrack table tr td.number {
  width: 70px;
}
body.result.flattrack table tr th.fmn, body.result.flattrack table tr td.fmn, body.sprint.flattrack table tr th.fmn, body.sprint.flattrack table tr td.fmn, body.practice-times.flattrack table tr th.fmn, body.practice-times.flattrack table tr td.fmn, body.qualifying-result.flattrack table tr th.fmn, body.qualifying-result.flattrack table tr td.fmn {
  width: 70px;
}
body.result.flattrack table tr th.nation, body.result.flattrack table tr td.nation, body.sprint.flattrack table tr th.nation, body.sprint.flattrack table tr td.nation, body.practice-times.flattrack table tr th.nation, body.practice-times.flattrack table tr td.nation, body.qualifying-result.flattrack table tr th.nation, body.qualifying-result.flattrack table tr td.nation {
  width: 110px;
}
body.result.flattrack table tr th.points, body.result.flattrack table tr td.points, body.sprint.flattrack table tr th.points, body.sprint.flattrack table tr td.points, body.practice-times.flattrack table tr th.points, body.practice-times.flattrack table tr td.points, body.qualifying-result.flattrack table tr th.points, body.qualifying-result.flattrack table tr td.points {
  width: 60px;
}
body.result.flattrack table tr th.manufacturer, body.result.flattrack table tr td.manufacturer, body.sprint.flattrack table tr th.manufacturer, body.sprint.flattrack table tr td.manufacturer, body.practice-times.flattrack table tr th.manufacturer, body.practice-times.flattrack table tr td.manufacturer, body.qualifying-result.flattrack table tr th.manufacturer, body.qualifying-result.flattrack table tr td.manufacturer {
  width: 110px;
}
body.result.flattrack table tr th.team, body.result.flattrack table tr td.team, body.sprint.flattrack table tr th.team, body.sprint.flattrack table tr td.team, body.practice-times.flattrack table tr th.team, body.practice-times.flattrack table tr td.team, body.qualifying-result.flattrack table tr th.team, body.qualifying-result.flattrack table tr td.team {
  width: 120px;
}
body.result main.manufacturer table tr th, body.result main.manufacturer table tr td, body.sprint main.manufacturer table tr th, body.sprint main.manufacturer table tr td, body.practice-times main.manufacturer table tr th, body.practice-times main.manufacturer table tr td, body.qualifying-result main.manufacturer table tr th, body.qualifying-result main.manufacturer table tr td {
  font-size: 16px;
  line-height: 40px;
  padding: 0 10px;
}
body.result main.manufacturer table tr th:first-of-type, body.result main.manufacturer table tr td:first-of-type, body.sprint main.manufacturer table tr th:first-of-type, body.sprint main.manufacturer table tr td:first-of-type, body.practice-times main.manufacturer table tr th:first-of-type, body.practice-times main.manufacturer table tr td:first-of-type, body.qualifying-result main.manufacturer table tr th:first-of-type, body.qualifying-result main.manufacturer table tr td:first-of-type {
  background-color: #ededed;
}
body.result main.manufacturer table tr th.place, body.result main.manufacturer table tr td.place, body.sprint main.manufacturer table tr th.place, body.sprint main.manufacturer table tr td.place, body.practice-times main.manufacturer table tr th.place, body.practice-times main.manufacturer table tr td.place, body.qualifying-result main.manufacturer table tr th.place, body.qualifying-result main.manufacturer table tr td.place {
  width: 100px;
}
body.result main.manufacturer table tr th.points, body.result main.manufacturer table tr td.points, body.sprint main.manufacturer table tr th.points, body.sprint main.manufacturer table tr td.points, body.practice-times main.manufacturer table tr th.points, body.practice-times main.manufacturer table tr td.points, body.qualifying-result main.manufacturer table tr th.points, body.qualifying-result main.manufacturer table tr td.points {
  width: 100px;
}
body.result.fmi-flat-track table tr th.fmn, body.result.fmi-flat-track table tr td.fmn, body.sprint.fmi-flat-track table tr th.fmn, body.sprint.fmi-flat-track table tr td.fmn, body.practice-times.fmi-flat-track table tr th.fmn, body.practice-times.fmi-flat-track table tr td.fmn, body.qualifying-result.fmi-flat-track table tr th.fmn, body.qualifying-result.fmi-flat-track table tr td.fmn {
  width: 80px;
}
body.result.fmi-flat-track table tr th.nation, body.result.fmi-flat-track table tr td.nation, body.sprint.fmi-flat-track table tr th.nation, body.sprint.fmi-flat-track table tr td.nation, body.practice-times.fmi-flat-track table tr th.nation, body.practice-times.fmi-flat-track table tr td.nation, body.qualifying-result.fmi-flat-track table tr th.nation, body.qualifying-result.fmi-flat-track table tr td.nation {
  width: 100px;
}
body.result.fmi-flat-track table tr th.manufacturer, body.result.fmi-flat-track table tr td.manufacturer, body.sprint.fmi-flat-track table tr th.manufacturer, body.sprint.fmi-flat-track table tr td.manufacturer, body.practice-times.fmi-flat-track table tr th.manufacturer, body.practice-times.fmi-flat-track table tr td.manufacturer, body.qualifying-result.fmi-flat-track table tr th.manufacturer, body.qualifying-result.fmi-flat-track table tr td.manufacturer {
  width: 140px;
}
body.result .speedway-of-nations table tr td, body.sprint .speedway-of-nations table tr td, body.practice-times .speedway-of-nations table tr td, body.qualifying-result .speedway-of-nations table tr td {
  line-height: 22px;
}
body.result .speedway-of-nations table tr td.flag, body.sprint .speedway-of-nations table tr td.flag, body.practice-times .speedway-of-nations table tr td.flag, body.qualifying-result .speedway-of-nations table tr td.flag {
  text-align: center;
}
body.result .speedway-of-nations table tr td.flag img, body.sprint .speedway-of-nations table tr td.flag img, body.practice-times .speedway-of-nations table tr td.flag img, body.qualifying-result .speedway-of-nations table tr td.flag img {
  width: 60%;
  display: inline-block;
  border: 1px #000 solid;
}
body.result .speedway-of-nations-2 table tr td, body.result .pairs-8 table tr td, body.sprint .speedway-of-nations-2 table tr td, body.sprint .pairs-8 table tr td, body.practice-times .speedway-of-nations-2 table tr td, body.practice-times .pairs-8 table tr td, body.qualifying-result .speedway-of-nations-2 table tr td, body.qualifying-result .pairs-8 table tr td {
  line-height: 20px;
}
body.result .speedway-of-nations-2 table tr td.flag, body.result .pairs-8 table tr td.flag, body.sprint .speedway-of-nations-2 table tr td.flag, body.sprint .pairs-8 table tr td.flag, body.practice-times .speedway-of-nations-2 table tr td.flag, body.practice-times .pairs-8 table tr td.flag, body.qualifying-result .speedway-of-nations-2 table tr td.flag, body.qualifying-result .pairs-8 table tr td.flag {
  text-align: center;
}
body.result .speedway-of-nations-2 table tr td.flag img, body.result .pairs-8 table tr td.flag img, body.sprint .speedway-of-nations-2 table tr td.flag img, body.sprint .pairs-8 table tr td.flag img, body.practice-times .speedway-of-nations-2 table tr td.flag img, body.practice-times .pairs-8 table tr td.flag img, body.qualifying-result .speedway-of-nations-2 table tr td.flag img, body.qualifying-result .pairs-8 table tr td.flag img {
  width: 60%;
  display: inline-block;
  border: 1px #000 solid;
}
body.result .long-track-nations div.table, body.sprint .long-track-nations div.table, body.practice-times .long-track-nations div.table, body.qualifying-result .long-track-nations div.table {
  margin-bottom: 10px;
}
body.result .long-track-nations table tr td, body.sprint .long-track-nations table tr td, body.practice-times .long-track-nations table tr td, body.qualifying-result .long-track-nations table tr td {
  line-height: 18px;
  font-size: 16px;
}
body.result .long-track-nations table tr td.flag, body.sprint .long-track-nations table tr td.flag, body.practice-times .long-track-nations table tr td.flag, body.qualifying-result .long-track-nations table tr td.flag {
  text-align: center;
}
body.result .long-track-nations table tr td.flag img, body.sprint .long-track-nations table tr td.flag img, body.practice-times .long-track-nations table tr td.flag img, body.qualifying-result .long-track-nations table tr td.flag img {
  width: 60%;
  display: inline-block;
}
body.result main.long-track-challenge table tr td, body.sprint main.long-track-challenge table tr td, body.practice-times main.long-track-challenge table tr td, body.qualifying-result main.long-track-challenge table tr td {
  line-height: 18px;
  font-size: 18px;
}
body.result.pairs-10 table tr th, body.result.pairs-10 table tr td, body.sprint.pairs-10 table tr th, body.sprint.pairs-10 table tr td, body.practice-times.pairs-10 table tr th, body.practice-times.pairs-10 table tr td, body.qualifying-result.pairs-10 table tr th, body.qualifying-result.pairs-10 table tr td {
  font-size: 14px;
  line-height: 15px;
}
body.result.pairs-10 table tr th.team-name span, body.result.pairs-10 table tr td.team-name span, body.sprint.pairs-10 table tr th.team-name span, body.sprint.pairs-10 table tr td.team-name span, body.practice-times.pairs-10 table tr th.team-name span, body.practice-times.pairs-10 table tr td.team-name span, body.qualifying-result.pairs-10 table tr th.team-name span, body.qualifying-result.pairs-10 table tr td.team-name span {
  display: block;
  font-size: 16px;
  line-height: 20px;
}
body.result.pairs-10 table tr th.flag, body.result.pairs-10 table tr td.flag, body.sprint.pairs-10 table tr th.flag, body.sprint.pairs-10 table tr td.flag, body.practice-times.pairs-10 table tr th.flag, body.practice-times.pairs-10 table tr td.flag, body.qualifying-result.pairs-10 table tr th.flag, body.qualifying-result.pairs-10 table tr td.flag {
  text-align: center;
}
body.result.pairs-10 table tr th.flag img, body.result.pairs-10 table tr td.flag img, body.sprint.pairs-10 table tr th.flag img, body.sprint.pairs-10 table tr td.flag img, body.practice-times.pairs-10 table tr th.flag img, body.practice-times.pairs-10 table tr td.flag img, body.qualifying-result.pairs-10 table tr th.flag img, body.qualifying-result.pairs-10 table tr td.flag img {
  width: 30%;
  display: inline-block;
  border: 1px #000 solid;
}
body.result.pairs-10 table tr th.flag .fmn, body.result.pairs-10 table tr td.flag .fmn, body.sprint.pairs-10 table tr th.flag .fmn, body.sprint.pairs-10 table tr td.flag .fmn, body.practice-times.pairs-10 table tr th.flag .fmn, body.practice-times.pairs-10 table tr td.flag .fmn, body.qualifying-result.pairs-10 table tr th.flag .fmn, body.qualifying-result.pairs-10 table tr td.flag .fmn {
  display: block;
  font-size: 14px;
  line-height: 14px;
}
body.result.pairs-10 table tr th.place, body.result.pairs-10 table tr th.total, body.result.pairs-10 table tr td.place, body.result.pairs-10 table tr td.total, body.sprint.pairs-10 table tr th.place, body.sprint.pairs-10 table tr th.total, body.sprint.pairs-10 table tr td.place, body.sprint.pairs-10 table tr td.total, body.practice-times.pairs-10 table tr th.place, body.practice-times.pairs-10 table tr th.total, body.practice-times.pairs-10 table tr td.place, body.practice-times.pairs-10 table tr td.total, body.qualifying-result.pairs-10 table tr th.place, body.qualifying-result.pairs-10 table tr th.total, body.qualifying-result.pairs-10 table tr td.place, body.qualifying-result.pairs-10 table tr td.total {
  font-size: 18px;
}
body.result.bayern-cup table tr td, body.sprint.bayern-cup table tr td, body.practice-times.bayern-cup table tr td, body.qualifying-result.bayern-cup table tr td {
  line-height: 18px;
  font-size: 16px;
}
body.result.bayern-cup table tr td.flag, body.sprint.bayern-cup table tr td.flag, body.practice-times.bayern-cup table tr td.flag, body.qualifying-result.bayern-cup table tr td.flag {
  text-align: center;
}
body.result.bayern-cup table tr td.flag img, body.sprint.bayern-cup table tr td.flag img, body.practice-times.bayern-cup table tr td.flag img, body.qualifying-result.bayern-cup table tr td.flag img {
  display: none;
}

body.sprint div.table {
  margin-bottom: 100px;
}

body.qualifying-result table tr:nth-child(4), body.qualifying-result table tr:nth-child(8) {
  border-bottom: 2px #000 solid;
}
body.qualifying-result table tr th, body.qualifying-result table tr td {
  padding: 0 5px;
}
body.qualifying-result table tr th.place, body.qualifying-result table tr td.place {
  width: 60px;
}
body.qualifying-result table tr th.number, body.qualifying-result table tr td.number {
  width: 85px;
}
body.qualifying-result table tr th.name, body.qualifying-result table tr td.name {
  padding: 0 10px;
}
body.qualifying-result table tr th.fmn, body.qualifying-result table tr td.fmn {
  width: 80px;
}
body.qualifying-result table tr th.nation, body.qualifying-result table tr td.nation {
  width: 145px;
}
body.qualifying-result table tr th.session, body.qualifying-result table tr td.session {
  width: 90px;
}
body.qualifying-result table tr th.result, body.qualifying-result table tr td.result {
  width: 90px;
}

body.heats header {
  margin-bottom: 10px;
}
body.heats header .skewer {
  top: 15px;
  height: 20px;
  width: 500px;
}
body.heats header .logos {
  padding: 0 20px 10px;
  margin-bottom: 0;
  min-height: 88px;
}
body.heats header .logos .meta .left {
  flex-grow: 1;
}
body.heats header .logos .meta .left p.title {
  font-size: 23px;
}
body.heats header .logos .meta .officials {
  width: 290px;
}
body.heats header .officials p {
  margin-bottom: 6px;
  font-size: 16px;
  line-height: 16px;
}
body.heats header .officials p:last-of-type {
  margin-bottom: 0;
}
body.heats header.fime .logos {
  padding-bottom: 0;
}
body.heats main .table {
  margin-bottom: 0;
}
body.heats main .table h3 {
  margin-bottom: 6px;
  font-size: 16px;
  line-height: 16px;
}
body.heats main table {
  margin-bottom: 10px;
}
body.heats main table tr th, body.heats main table tr td {
  font-size: 14px;
  line-height: 14px;
  padding: 4px 10px !important;
}
body.heats main table tr th.title, body.heats main table tr td.title {
  width: 80px;
}
body.heats main table tr th.time, body.heats main table tr td.time {
  width: 80px;
}
body.heats main table tr th {
  background-color: #ededed;
}
body.heats main table tr td:first-of-type {
  background-color: #ededed;
}
body.heats main table.total-gates-1 th.position, body.heats main table.total-gates-1 td.position {
  width: calc((1080px - 160px) / 1);
}
body.heats main table.total-gates-2 th.position, body.heats main table.total-gates-2 td.position {
  width: calc((1080px - 160px) / 2);
}
body.heats main table.total-gates-3 th.position, body.heats main table.total-gates-3 td.position {
  width: calc((1080px - 160px) / 3);
}
body.heats main table.total-gates-4 th.position, body.heats main table.total-gates-4 td.position {
  width: calc((1080px - 160px) / 4);
}
body.heats main table.total-gates-5 th.position, body.heats main table.total-gates-5 td.position {
  width: calc((1080px - 160px) / 5);
}
body.heats main table.total-gates-6 th.position, body.heats main table.total-gates-6 td.position {
  width: calc((1080px - 160px) / 6);
}
body.heats main table.total-gates-7 th.position, body.heats main table.total-gates-7 td.position {
  width: calc((1080px - 160px) / 7);
}
body.heats main table.total-gates-8 th.position, body.heats main table.total-gates-8 td.position {
  width: calc((1080px - 160px) / 8);
}
body.heats main table.total-gates-9 th.position, body.heats main table.total-gates-9 td.position {
  width: calc((1080px - 160px) / 9);
}
body.heats main table.total-gates-10 th.position, body.heats main table.total-gates-10 td.position {
  width: calc((1080px - 160px) / 10);
}
body.heats main .codes {
  border: 2px solid #000;
  padding: 2px 10px;
}
body.heats main .codes .title strong, body.heats main .codes .title span, body.heats main .codes .code strong, body.heats main .codes .code span {
  display: inline-block;
  font-size: 12px;
  line-height: 12px;
}
body.heats main .codes .title {
  position: relative;
}
body.heats main .codes .title span {
  font-size: 10px;
  line-height: 10px;
}
body.heats main .codes .title:after {
  content: ":";
  display: inline-block;
  font-size: 10px;
  line-height: 10px;
  margin-left: -2px;
}
body.heats main.long-track-challenge table tr th, body.heats main.long-track-challenge table tr td {
  font-size: 13px;
  line-height: 12px;
}
body.heats.youth main .table table tr th, body.heats.youth main .table table tr td {
  padding: 2px 6px !important;
}
body.heats.speedwaygp main .table table tr th, body.heats.speedwaygp main .table table tr td, body.heats.speedwaygp2 main .table table tr th, body.heats.speedwaygp2 main .table table tr td, body.heats.speedwaygp3 main .table table tr th, body.heats.speedwaygp3 main .table table tr td {
  padding: 3px 6px !important;
}
body.heats.fim-swc header .logos .logo-right {
  width: 200px;
}
body.heats .race-1145 table tr td {
  padding-top: 1px !important;
  padding-bottom: 1px !important;
}
body.heats.fim-son table tr th, body.heats.fim-son table tr td {
  padding: 3px 6px !important;
}
body.heats.flattrack table tr th, body.heats.flattrack table tr td {
  padding: 3px 6px !important;
  font-size: 11px;
  line-height: 11px;
}
body.heats.flattrack table tr th.title, body.heats.flattrack table tr td.title {
  width: 50px;
}
body.heats.flattrack table tr th.time, body.heats.flattrack table tr td.time {
  width: 50px;
}
body.heats.speedway-of-nations-2 table tr th, body.heats.speedway-of-nations-2 table tr td {
  line-height: 11px;
}
body.heats footer .logos img {
  max-width: 70px;
  max-height: 60px;
}
body.heats footer .logos img.anlas {
  max-width: 110px;
}
body.heats footer .logos img.koopmann {
  max-width: 110px;
}
body.heats footer .logos img.fim-moto {
  max-width: 110px;
}

body.event-schedule {
  padding-top: 20px;
}
body.event-schedule h1, body.event-schedule h2, body.event-schedule h3, body.event-schedule h4, body.event-schedule h5, body.event-schedule h6 {
  margin-bottom: 10px;
}
body.event-schedule table {
  height: 1020px;
}
body.event-schedule table thead tr {
  background: #d8d8d8;
}
body.event-schedule table tr.spacer td {
  background: #d8d8d8;
  text-align: left;
  font-weight: bolder;
  padding-left: 5px;
}
body.event-schedule table tr th, body.event-schedule table tr td {
  font-size: 14px;
  line-height: 14px;
  text-align: left;
  padding-top: 0;
  padding-bottom: 0;
}
body.event-schedule table tr th.number, body.event-schedule table tr td.number {
  width: 60px;
  font-weight: bolder;
}
body.event-schedule table tr th.race, body.event-schedule table tr th.heat, body.event-schedule table tr td.race, body.event-schedule table tr td.heat {
  padding-left: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.event-schedule table tr th.heat, body.event-schedule table tr td.heat {
  width: 100px;
}
body.event-schedule table tr th.gate, body.event-schedule table tr td.gate {
  padding-left: 0;
  padding-right: 0;
}
body.event-schedule table.total-gates-1 th.gate, body.event-schedule table.total-gates-1 td.gate {
  width: calc(400px / 1);
}
body.event-schedule table.total-gates-2 th.gate, body.event-schedule table.total-gates-2 td.gate {
  width: calc(400px / 2);
}
body.event-schedule table.total-gates-3 th.gate, body.event-schedule table.total-gates-3 td.gate {
  width: calc(400px / 3);
}
body.event-schedule table.total-gates-4 th.gate, body.event-schedule table.total-gates-4 td.gate {
  width: calc(400px / 4);
}
body.event-schedule table.total-gates-5 th.gate, body.event-schedule table.total-gates-5 td.gate {
  width: calc(400px / 5);
}
body.event-schedule table.total-gates-6 th.gate, body.event-schedule table.total-gates-6 td.gate {
  width: calc(400px / 6);
}
body.event-schedule table.total-gates-7 th.gate, body.event-schedule table.total-gates-7 td.gate {
  width: calc(400px / 7);
}
body.event-schedule table.total-gates-8 th.gate, body.event-schedule table.total-gates-8 td.gate {
  width: calc(400px / 8);
}
body.event-schedule table.total-gates-9 th.gate, body.event-schedule table.total-gates-9 td.gate {
  width: calc(400px / 9);
}
body.event-schedule table.total-gates-10 th.gate, body.event-schedule table.total-gates-10 td.gate {
  width: calc(400px / 10);
}
body.event-schedule table.total-gates-11 th.gate, body.event-schedule table.total-gates-11 td.gate {
  width: calc(400px / 11);
}
body.event-schedule table.total-gates-12 th.gate, body.event-schedule table.total-gates-12 td.gate {
  width: calc(400px / 12);
}
body.event-schedule table.total-gates-13 th.gate, body.event-schedule table.total-gates-13 td.gate {
  width: calc(400px / 13);
}
body.event-schedule table.total-gates-14 th.gate, body.event-schedule table.total-gates-14 td.gate {
  width: calc(400px / 14);
}
body.event-schedule table.total-gates-15 th.gate, body.event-schedule table.total-gates-15 td.gate {
  width: calc(400px / 15);
}
body.event-schedule table.total-gates-16 th.gate, body.event-schedule table.total-gates-16 td.gate {
  width: calc(400px / 16);
}
body.event-schedule table.total-gates-17 th.gate, body.event-schedule table.total-gates-17 td.gate {
  width: calc(400px / 17);
}
body.event-schedule table.total-gates-18 th.gate, body.event-schedule table.total-gates-18 td.gate {
  width: calc(400px / 18);
}
body.event-schedule table.total-gates-19 th.gate, body.event-schedule table.total-gates-19 td.gate {
  width: calc(400px / 19);
}
body.event-schedule table.total-gates-20 th.gate, body.event-schedule table.total-gates-20 td.gate {
  width: calc(400px / 20);
}

body.classification header {
  margin-bottom: 10px;
}
body.classification header .skewer {
  top: 15px;
  height: 20px;
  width: 500px;
}
body.classification header .logos {
  padding: 0 20px 10px;
  margin-bottom: 0;
  min-height: 88px;
}
body.classification header .logos .meta .left {
  flex-grow: 1;
}
body.classification header .logos .meta .left p.title {
  font-size: 23px;
}
body.classification header .logos .meta .officials {
  width: 290px;
}
body.classification header .officials p {
  margin-bottom: 6px;
  font-size: 16px;
  line-height: 16px;
}
body.classification header .officials p:last-of-type {
  margin-bottom: 0;
}
body.classification header.fime .logos {
  padding-bottom: 0;
}
body.classification .table {
  margin-bottom: 0;
}
body.classification .table h3 {
  margin-bottom: 6px;
  font-size: 16px;
  line-height: 16px;
}
body.classification table {
  margin-bottom: 0;
}
body.classification table thead tr {
  height: 34px;
}
body.classification table tr th {
  background-color: #ededed;
  height: 30px;
}
body.classification table tr td:first-of-type {
  background-color: #ededed;
}
body.classification table tr th, body.classification table tr td {
  font-size: 12px;
  line-height: 16px;
  padding: 0 6px;
}
body.classification table tr th.place, body.classification table tr td.place {
  width: 50px;
}
body.classification table tr th.number, body.classification table tr td.number {
  width: 70px;
}
body.classification table tr th.name, body.classification table tr td.name {
  line-height: 18px;
}
body.classification table tr th.manufacturer, body.classification table tr td.manufacturer {
  width: 100px;
}
body.classification table tr th.fmn, body.classification table tr td.fmn {
  width: 60px;
}
body.classification table tr th.nation, body.classification table tr td.nation {
  width: 120px;
}
body.classification table tr th.total, body.classification table tr td.total {
  width: 60px;
}
body.classification table tr th.round, body.classification table tr td.round {
  width: 90px;
}
body.classification table tr th.round span, body.classification table tr td.round span {
  display: block;
  overflow: hidden;
  line-height: 14px;
}
body.classification table tr th.round span.track, body.classification table tr td.round span.track {
  font-weight: normal;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.classification table tr th.pos-1, body.classification table tr td.pos-1 {
  background-color: gold;
}
body.classification table tr th.pos-2, body.classification table tr td.pos-2 {
  background-color: silver;
}
body.classification table tr th.pos-3, body.classification table tr td.pos-3 {
  background-color: #A56A3F;
}
body.classification table tr th span.suffix, body.classification table tr td span.suffix {
  font-size: smaller;
}
body.classification table tr.line {
  border-bottom: 2px #000 solid;
}
body.classification .runoffs {
  margin-top: 6px;
}
body.classification .runoffs p {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 14px;
}
body.classification.speedwaygp table tr th {
  height: 26px;
}
body.classification.speedwaygp table tr th, body.classification.speedwaygp table tr td {
  font-size: 12px;
  line-height: 13px;
}
body.classification.speedwaygp table tr th.place, body.classification.speedwaygp table tr td.place {
  width: 46px;
}
body.classification.speedwaygp table tr th.number, body.classification.speedwaygp table tr td.number {
  width: 64px;
}
body.classification.speedwaygp table tr th.round, body.classification.speedwaygp table tr td.round {
  width: 60px;
}
body.classification.speedwaygp table tr th.round span, body.classification.speedwaygp table tr td.round span {
  line-height: 14px;
}
body.classification.speedwaygp.season-2024 table tr th.sprint, body.classification.speedwaygp.season-2025 table tr th.sprint {
  background: #e9ff15;
}
body.classification.speedwaygp.season-2024 table tr th, body.classification.speedwaygp.season-2024 table tr td, body.classification.speedwaygp.season-2025 table tr th, body.classification.speedwaygp.season-2025 table tr td {
  font-size: 10px;
  line-height: 11px;
  padding: 0 2px;
}
body.classification.speedwaygp.season-2024 table tr th.place, body.classification.speedwaygp.season-2024 table tr td.place, body.classification.speedwaygp.season-2025 table tr th.place, body.classification.speedwaygp.season-2025 table tr td.place {
  width: 35px;
}
body.classification.speedwaygp.season-2024 table tr th.number, body.classification.speedwaygp.season-2024 table tr td.number, body.classification.speedwaygp.season-2025 table tr th.number, body.classification.speedwaygp.season-2025 table tr td.number {
  width: 50px;
}
body.classification.speedwaygp.season-2024 table tr th.name, body.classification.speedwaygp.season-2024 table tr td.name, body.classification.speedwaygp.season-2025 table tr th.name, body.classification.speedwaygp.season-2025 table tr td.name {
  padding: 0 6px;
}
body.classification.speedwaygp.season-2024 table tr th.fmn, body.classification.speedwaygp.season-2024 table tr td.fmn, body.classification.speedwaygp.season-2025 table tr th.fmn, body.classification.speedwaygp.season-2025 table tr td.fmn {
  width: 50px;
}
body.classification.speedwaygp.season-2024 table tr th.nation, body.classification.speedwaygp.season-2024 table tr td.nation, body.classification.speedwaygp.season-2025 table tr th.nation, body.classification.speedwaygp.season-2025 table tr td.nation {
  width: 80px;
}
body.classification.speedwaygp.season-2024 table tr th.total, body.classification.speedwaygp.season-2024 table tr td.total, body.classification.speedwaygp.season-2025 table tr th.total, body.classification.speedwaygp.season-2025 table tr td.total {
  width: 40px;
}
body.classification.speedwaygp.season-2024 table tr th.round, body.classification.speedwaygp.season-2024 table tr td.round, body.classification.speedwaygp.season-2025 table tr th.round, body.classification.speedwaygp.season-2025 table tr td.round {
  width: 50px;
}
body.classification.speedwaygp.season-2025 table tr th.round, body.classification.speedwaygp.season-2025 table tr td.round {
  width: 46px;
}
body.classification.speedwaygp2 table tr th, body.classification.speedwaygp2 table tr td {
  font-size: 14px;
  line-height: 14px;
}
body.classification.speedwaygp2 table tr th.fmn, body.classification.speedwaygp2 table tr td.fmn {
  width: 100px;
}
body.classification.speedwaygp2 table tr th.nation, body.classification.speedwaygp2 table tr td.nation {
  width: 140px;
}
body.classification.speedwaygp2 table tr th.round, body.classification.speedwaygp2 table tr td.round {
  width: 120px;
}
body.classification.speedwaygp2 table tr th.round span, body.classification.speedwaygp2 table tr td.round span {
  line-height: 14px;
}
body.classification.flattrack table tr th, body.classification.flattrack table tr td {
  font-size: 10px;
  line-height: 10px;
}
body.classification.flattrack table tr th.round, body.classification.flattrack table tr td.round {
  width: 60px;
}
body.classification.flattrack table tr th.fmn, body.classification.flattrack table tr td.fmn {
  width: 75px;
}
body.classification.flattrack table tr th.nation, body.classification.flattrack table tr td.nation {
  width: 110px;
}
body.classification.flattrack table tr th.manufacturer, body.classification.flattrack table tr td.manufacturer {
  text-align: center;
}
body.classification.flattrack main.manufacturer-classification table tr th, body.classification.flattrack main.manufacturer-classification table tr td {
  font-size: 15px;
  line-height: 15px;
}
body.classification.flattrack main.manufacturer-classification table tr th.place, body.classification.flattrack main.manufacturer-classification table tr td.place {
  width: 80px;
}
body.classification.flattrack main.manufacturer-classification table tr th.round, body.classification.flattrack main.manufacturer-classification table tr td.round {
  width: 120px;
}
body.classification.fime-ice table tr th, body.classification.fime-ice table tr td {
  font-size: 14px;
  line-height: 26px;
}
body.classification.fime-ice table tr th.fmn, body.classification.fime-ice table tr td.fmn {
  width: 120px;
}
body.classification.fime-ice table tr th.nation, body.classification.fime-ice table tr td.nation {
  width: 160px;
}
body.classification.fime-ice table tr th.round, body.classification.fime-ice table tr td.round {
  width: 140px;
}
body.classification.fime-ice table tr th.round span, body.classification.fime-ice table tr td.round span {
  line-height: 16px;
}
body.classification.fime-ice table tr th {
  height: 40px;
}
body.classification.fim-isg table tr th, body.classification.fim-isg table tr td {
  font-size: 14px;
}
body.classification.fim-isg table tr th.fmn, body.classification.fim-isg table tr td.fmn {
  width: 100px;
}
body.classification.fim-isg table tr th.round, body.classification.fim-isg table tr td.round {
  width: 100px;
}
body.classification.fim-isg table tr th.round span, body.classification.fim-isg table tr td.round span {
  line-height: 16px;
}
body.classification.fim-isg table tr th {
  height: 40px;
}
body.classification.fmi-italiano-open table tr th, body.classification.fmi-italiano-open table tr td {
  font-size: 12px;
  line-height: 22px;
  padding: 0 3px;
}
body.classification.fmi-italiano-open table tr th.fmn, body.classification.fmi-italiano-open table tr td.fmn {
  width: 60px;
}
body.classification.fmi-italiano-open table tr th.round, body.classification.fmi-italiano-open table tr td.round {
  width: 70px;
}
body.classification.fmi-italiano-open table tr th.round span, body.classification.fmi-italiano-open table tr td.round span {
  line-height: 16px;
}
body.classification.fmi-italiano-open table tr th {
  height: 40px;
}
body.classification.fmi-flat-track table tr th, body.classification.fmi-flat-track table tr td {
  font-size: 12px;
  line-height: 12px;
}
body.classification.fmi-flat-track table tr th.place, body.classification.fmi-flat-track table tr td.place {
  width: 45px;
}
body.classification.fmi-flat-track table tr th.number, body.classification.fmi-flat-track table tr td.number {
  width: 60px;
}
body.classification.fmi-flat-track table tr th.round, body.classification.fmi-flat-track table tr td.round {
  width: 60px;
}
body.classification.fmi-flat-track table tr th.fmn, body.classification.fmi-flat-track table tr td.fmn {
  width: 60px;
}
body.classification.fmi-flat-track table tr th.nation, body.classification.fmi-flat-track table tr td.nation {
  width: 110px;
}
body.classification.fmi-flat-track table tr th.manufacturer, body.classification.fmi-flat-track table tr td.manufacturer {
  width: 100px;
  text-align: center;
}
body.classification.fmi-flat-track table tr th.total, body.classification.fmi-flat-track table tr td.total {
  width: 40px;
}
body.classification.pairs-10 table tr th, body.classification.pairs-10 table tr td {
  font-size: 14px;
  line-height: 22px;
}
body.classification.pairs-10 table tr th.place, body.classification.pairs-10 table tr td.place {
  width: 70px;
}
body.classification.pairs-10 table tr th.round, body.classification.pairs-10 table tr td.round {
  width: 120px;
}
body.classification.pairs-10 table tr th.round span, body.classification.pairs-10 table tr td.round span {
  line-height: 16px;
}
body.classification.pairs-10 table tr th {
  height: 40px;
}
body.classification footer .logos img {
  max-width: 70px;
  max-height: 60px;
}
body.classification footer .logos img.anlas {
  max-width: 110px;
}
body.classification footer .logos img.koopmann {
  max-width: 110px;
}
body.classification footer .logos img.fim-moto {
  max-width: 110px;
}

body.practice .header {
  display: flex;
  justify-content: space-between;
}
body.practice .header .type {
  display: flex;
  justify-content: space-between;
  width: 140px;
}
body.practice .header .type p {
  margin-bottom: 0;
  font-size: 18px;
  font-weight: bolder;
}
body.practice .header .type p:nth-child(1) {
  margin-left: 15px;
}
body.practice .header .type p:nth-child(2) {
  margin-right: 17px;
}
body.practice .groups .group {
  margin-bottom: 4px;
}
body.practice .groups .group table {
  border: 0;
}
body.practice .groups .group table tr th {
  background: #000;
  color: #fff;
}
body.practice .groups .group table tr th, body.practice .groups .group table tr td {
  line-height: 32px;
}
body.practice .groups .group table tr th.number, body.practice .groups .group table tr td.number {
  text-align: center;
  width: 50px;
}
body.practice .groups .group table tr th.name, body.practice .groups .group table tr td.name {
  padding-left: 10px;
}
body.practice .groups .group table tr th.spacer, body.practice .groups .group table tr td.spacer {
  width: 20px;
}
body.practice .groups .group table tr th.session, body.practice .groups .group table tr td.session {
  text-align: center;
  width: 60px;
}
body.practice .groups .group table tr.grading-row td {
  border: 0;
  text-overflow: initial;
  white-space: normal;
  line-height: 12px;
}
body.practice .groups .group table tr.grading-row td span.grading {
  margin-top: 15px;
  background: #d8d8d8;
  font-weight: bolder;
  font-size: 14px;
  line-height: 14px;
  display: block;
  text-align: center;
  padding: 4px;
}
body.practice .groups .group:nth-child(n+2) table tr th.number, body.practice .groups .group:nth-child(n+2) table tr th.name {
  opacity: 0;
  border: 0;
}
body.practice .groups.has-sprint .group table tr th, body.practice .groups.has-sprint .group table tr td {
  line-height: 26px;
}
body.practice .sprint {
  margin-top: -22px;
}
body.practice table.sprint-table tr th {
  background: #000;
  color: #fff;
}
body.practice table.sprint-table tr th, body.practice table.sprint-table tr td {
  height: 24px;
}
body.practice table.sprint-table tr th.gate, body.practice table.sprint-table tr td.gate {
  text-align: center;
  width: 60px;
}
body.practice table.sprint-table tr th.number, body.practice table.sprint-table tr td.number {
  width: 60px;
  text-align: center;
}
body.practice table.sprint-table tr th.name, body.practice table.sprint-table tr td.name {
  padding-left: 10px;
}
body.practice table.sprint-table tr th.points, body.practice table.sprint-table tr td.points {
  text-align: center;
  width: 100px;
}

body.heat_table table tr th {
  padding-top: 3px !important;
}
body.heat_table table tr th, body.heat_table table tr td {
  padding: 2px;
  font-size: 17px;
  line-height: 18px;
  position: relative;
}
body.heat_table table tr th.red, body.heat_table table tr td.red {
  background: #cc3300;
}
body.heat_table table tr th.blue, body.heat_table table tr td.blue {
  background: #006699;
}
body.heat_table table tr th.white, body.heat_table table tr td.white {
  background: #ffffff;
}
body.heat_table table tr th.yellow, body.heat_table table tr td.yellow {
  background: #ffcc00;
}
body.heat_table table tr th.green, body.heat_table table tr td.green {
  background: #009966;
}
body.heat_table table tr th.grey, body.heat_table table tr td.grey {
  background: #b7b7b7;
}
body.heat_table table tr td.td-fmn {
  font-size: 14px;
}
body.heat_table table tfoot {
  display: none;
}
body.heat_table #heat-table {
  position: absolute;
  top: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
}
body.heat_table #header {
  padding: 0;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
body.heat_table #header .logo {
  padding: 10px;
  background: #000;
  display: flex;
  width: 120px;
  height: 75px;
}
body.heat_table #header .logo img {
  object-fit: contain;
  width: 100px;
  height: 55px;
}
body.heat_table #header .content {
  padding: 10px 20px;
  background: #e9ff15;
  align-items: center;
  flex-grow: 1;
  display: flex;
  border-bottom: 2px #000 solid;
}
body.heat_table #header .content .text {
  flex-grow: 1;
}
body.heat_table #header .content .text p {
  margin: 0;
  font-weight: bolder;
  text-transform: uppercase;
}
body.heat_table #header .content .text p.title {
  font-size: 26px;
  line-height: 26px;
  margin-bottom: 6px;
}
body.heat_table #header .content .text p.date {
  font-size: 18px;
  line-height: 18px;
}
body.heat_table #header .content .country img {
  width: 60px;
  border: 1px #000 solid;
}
body.heat_table #table, body.heat_table #finals {
  padding: 0 10px;
}
body.heat_table #table {
  margin-top: 10px;
  flex-grow: 1;
}
body.heat_table #table table {
  border: 0;
}
body.heat_table #table table thead:not(.timing) {
  border-top: 1px #000 solid;
}
body.heat_table #table table thead.timing th {
  border: 0;
  height: 42px;
  padding: 0 !important;
  text-align: center;
}
body.heat_table #table table thead.timing th span {
  writing-mode: vertical-rl;
  font-size: 12px;
  line-height: 12px;
  color: #757575;
}
body.heat_table #table table tr th.td-number, body.heat_table #table table tr td.td-number {
  width: 38px;
}
body.heat_table #table table tr th.td-name, body.heat_table #table table tr th.rider-name, body.heat_table #table table tr td.td-name, body.heat_table #table table tr td.rider-name {
  padding-left: 6px;
}
body.heat_table #table table tr th.td-fmn, body.heat_table #table table tr td.td-fmn {
  text-align: center;
  width: 70px;
}
body.heat_table #table table tr th.td-flag, body.heat_table #table table tr td.td-flag {
  width: 40px;
  text-align: center;
}
body.heat_table #table table tr th.td-flag img, body.heat_table #table table tr td.td-flag img {
  display: inline-block;
}
body.heat_table #table table tr th.td-small, body.heat_table #table table tr td.td-small {
  width: 26px;
  text-align: center;
}
body.heat_table #table table tr th.td-sub, body.heat_table #table table tr td.td-sub {
  width: 26px;
  text-align: center;
}
body.heat_table #table table tr th.td-final, body.heat_table #table table tr td.td-final {
  width: 32px;
  background: #fff;
}
body.heat_table #table table tr th.td-classification, body.heat_table #table table tr td.td-classification {
  display: none;
}
body.heat_table #table table tr th.no-points:not(.td-final):not(.is-run-off):not(.reserve-competing), body.heat_table #table table tr td.no-points:not(.td-final):not(.is-run-off):not(.reserve-competing) {
  background: #9f9f9f;
}
body.heat_table #table table tr th.reserve-competing, body.heat_table #table table tr td.reserve-competing {
  background: #eae8e8;
}
body.heat_table #table table tr th span.gate-position, body.heat_table #table table tr td span.gate-position {
  display: none;
}
body.heat_table #table table tr th.td-team-flag, body.heat_table #table table tr td.td-team-flag {
  width: 60px;
  text-align: center;
}
body.heat_table #table table tr th.td-team-flag img, body.heat_table #table table tr td.td-team-flag img {
  display: inline-block;
  width: 80%;
}
body.heat_table #table table tr th.no-gates, body.heat_table #table table tr td.no-gates {
  background: #fff !important;
}
body.heat_table #table table tr th.team-total, body.heat_table #table table tr td.team-total {
  background-color: #fff !important;
}
body.heat_table #table table tr.is-reserve th.no-points, body.heat_table #table table tr.is-reserve td.no-points {
  background: #fff;
}
body.heat_table #table table tr.team-row td span {
  font-weight: bolder;
}
body.heat_table #table table tr.manager-row td {
  font-size: 11px !important;
}
body.heat_table #table table tr.manager-row td strong {
  font-size: 11px !important;
}
body.heat_table #table.speedway-gp table tr, body.heat_table #table.speedway-gp-25 table tr {
  height: 26px;
}
body.heat_table #table.speedway-gp table tr th.td-fmn, body.heat_table #table.speedway-gp table tr td.td-fmn, body.heat_table #table.speedway-gp-25 table tr th.td-fmn, body.heat_table #table.speedway-gp-25 table tr td.td-fmn {
  width: 60px;
}
body.heat_table #table.speedway-gp table tr th.td-flag img, body.heat_table #table.speedway-gp table tr td.td-flag img, body.heat_table #table.speedway-gp-25 table tr th.td-flag img, body.heat_table #table.speedway-gp-25 table tr td.td-flag img {
  width: 28px;
}
body.heat_table #table.speedway-gp table tr th.td-small, body.heat_table #table.speedway-gp table tr td.td-small, body.heat_table #table.speedway-gp-25 table tr th.td-small, body.heat_table #table.speedway-gp-25 table tr td.td-small {
  width: 27px;
}
body.heat_table #table.speedway-gp table tr th.td-final, body.heat_table #table.speedway-gp table tr td.td-final, body.heat_table #table.speedway-gp-25 table tr th.td-final, body.heat_table #table.speedway-gp-25 table tr td.td-final {
  width: 29px;
}
body.heat_table #table.speedway-gp table tr th.interval, body.heat_table #table.speedway-gp table tr td.interval, body.heat_table #table.speedway-gp-25 table tr th.interval, body.heat_table #table.speedway-gp-25 table tr td.interval {
  width: 25px;
}
body.heat_table #table.speedway-gp.has-timings table tr, body.heat_table #table.speedway-gp-25.has-timings table tr {
  height: 20px;
}
body.heat_table #table.speedway-20-day-one table tr {
  height: 27px;
}
body.heat_table #table.speedway-20-day-one table tr th.td-small, body.heat_table #table.speedway-20-day-one table tr td.td-small {
  width: 30px;
}
body.heat_table #table.long-track-challenge table tr {
  height: 21px;
}
body.heat_table #table.long-track-challenge table tr th, body.heat_table #table.long-track-challenge table tr td {
  font-size: 14px;
  line-height: 14px;
}
body.heat_table #table.long-track-challenge table tr th.td-flag, body.heat_table #table.long-track-challenge table tr td.td-flag {
  width: 32px;
}
body.heat_table #table.long-track-challenge table tr th.td-flag img, body.heat_table #table.long-track-challenge table tr td.td-flag img {
  width: 23px;
}
body.heat_table #table.speedway-world-cup {
  margin-bottom: 0 !important;
}
body.heat_table #table.speedway-world-cup table tr.team-row {
  background-color: #fdb34c;
}
body.heat_table #table.speedway-world-cup table tr.team-row th, body.heat_table #table.speedway-world-cup table tr.team-row td {
  line-height: 22px;
}
body.heat_table #table.speedway-world-cup table tr th, body.heat_table #table.speedway-world-cup table tr td {
  font-size: 16px;
  line-height: 16px;
}
body.heat_table #table.speedway-world-cup table tr th.td-small, body.heat_table #table.speedway-world-cup table tr th.td-sub, body.heat_table #table.speedway-world-cup table tr td.td-small, body.heat_table #table.speedway-world-cup table tr td.td-sub {
  width: 32px;
}
body.heat_table #table.speedway-world-cup table tr th.td-small, body.heat_table #table.speedway-world-cup table tr td.td-small {
  position: relative;
}
body.heat_table #table.speedway-world-cup table tr th.td-small span.gate-position, body.heat_table #table.speedway-world-cup table tr td.td-small span.gate-position {
  display: inline-block;
  position: absolute;
  font-size: 11px;
  bottom: -3px;
  right: 1px;
}
body.heat_table #table.speedway-world-cup table tr th.team-name, body.heat_table #table.speedway-world-cup table tr td.team-name {
  text-transform: uppercase;
  padding-left: 4px;
}
body.heat_table #table.speedway-world-cup table tr.manager-row td {
  font-size: 12px;
}
body.heat_table #table.long-track-final table tr {
  height: 27px;
}
body.heat_table #table.long-track-final table tr th.td-small, body.heat_table #table.long-track-final table tr th.td-sub, body.heat_table #table.long-track-final table tr td.td-small, body.heat_table #table.long-track-final table tr td.td-sub {
  width: 36px;
}
body.heat_table #table.long-track-final table.has-fmn tr th.td-small, body.heat_table #table.long-track-final table.has-fmn tr th.td-sub, body.heat_table #table.long-track-final table.has-fmn tr td.td-small, body.heat_table #table.long-track-final table.has-fmn tr td.td-sub {
  width: 33px;
}
body.heat_table #table.long-track-nations {
  margin-bottom: 0;
}
body.heat_table #table.long-track-nations table tr {
  height: 18px;
}
body.heat_table #table.long-track-nations table tr th, body.heat_table #table.long-track-nations table tr td {
  font-size: 13px;
  line-height: 14px;
}
body.heat_table #table.long-track-nations table tr th.td-small, body.heat_table #table.long-track-nations table tr th.td-sub, body.heat_table #table.long-track-nations table tr td.td-small, body.heat_table #table.long-track-nations table tr td.td-sub {
  width: 28px;
}
body.heat_table #table.long-track-nations table tr th.no-points, body.heat_table #table.long-track-nations table tr td.no-points {
  background: #595959;
}
body.heat_table #table.long-track-nations table tr th.is-run-off, body.heat_table #table.long-track-nations table tr td.is-run-off {
  background: #fff;
}
body.heat_table #table.long-track-nations table tr.team-row {
  display: none;
}
body.heat_table #table.speedway-12 {
  margin-bottom: 0;
}
body.heat_table #table.speedway-12 table tr {
  height: 38px;
}
body.heat_table #table.speedway-12 table tr th, body.heat_table #table.speedway-12 table tr td {
  font-size: 18px;
  line-height: 18px;
}
body.heat_table #table.speedway-12 table tr th.td-small, body.heat_table #table.speedway-12 table tr th.td-sub, body.heat_table #table.speedway-12 table tr td.td-small, body.heat_table #table.speedway-12 table tr td.td-sub {
  width: 32px;
}
body.heat_table #table.speedway-14 {
  margin-bottom: 0;
}
body.heat_table #table.speedway-14 table tr {
  height: 32px;
}
body.heat_table #table.speedway-14 table tr th, body.heat_table #table.speedway-14 table tr td {
  font-size: 18px;
  line-height: 18px;
}
body.heat_table #table.speedway-14 table tr th.td-small, body.heat_table #table.speedway-14 table tr th.td-sub, body.heat_table #table.speedway-14 table tr td.td-small, body.heat_table #table.speedway-14 table tr td.td-sub {
  width: 29px;
}
body.heat_table #table.speedway-14 table tr th.interval, body.heat_table #table.speedway-14 table tr td.interval {
  width: 25px;
}
body.heat_table #table.speedway-14 table tr th.td-final, body.heat_table #table.speedway-14 table tr td.td-final {
  width: 32px;
}
body.heat_table #finals {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
body.heat_table #finals .final {
  max-width: 240px;
}
body.heat_table #finals .final table {
  border-width: 1px;
}
body.heat_table #finals .final table col.gate, body.heat_table #finals .final table col.points, body.heat_table #finals .final table th.gate, body.heat_table #finals .final table th.points, body.heat_table #finals .final table td.gate, body.heat_table #finals .final table td.points {
  width: 28px;
}
body.heat_table #finals .final .final-title {
  background: #E7E7E7;
  padding: 2px;
}
body.heat_table #finals .final .final-title .content {
  display: flex;
  justify-content: space-evenly;
}
body.heat_table #finals .final .final-title .content .proposal {
  font-size: smaller;
}
body.heat_table #finals .logo img {
  width: 120px;
}
body.heat_table #finals .logo img.fim-2024-white {
  filter: invert(1);
}
body.heat_table #finals .logo.qr p {
  margin-bottom: 0;
  line-height: 14px;
  text-align: center;
  font-weight: bolder;
}
body.heat_table #footer {
  margin-top: 10px;
  background: #000;
  display: flex;
  justify-content: space-between;
  padding: 6px 20px;
}
body.heat_table #footer .official p {
  margin: 0;
  color: #fff;
  font-size: 14px;
  line-height: 20px;
}
body.heat_table #footer .official p.label {
  font-weight: bolder;
}
body.heat_table #footer .logo {
  display: flex;
}
body.heat_table #footer .logo img {
  width: 140px;
  display: inline-block;
  align-self: center;
}
body.heat_table #footer .logos {
  display: flex;
  gap: 40px;
}
body.heat_table #footer .logos img {
  max-height: 30px;
  display: inline-block;
  align-self: center;
}
body.heat_table.fim-swc #header .content {
  background: #fdb34c;
}
body.heat_table.longtrack #header .content, body.heat_table.long-track-challenge #header .content {
  background: green;
}
body.heat_table.longtrack #header .content .text p, body.heat_table.long-track-challenge #header .content .text p {
  color: #fff;
}
body.heat_table.fim-son table tr.team-row {
  background-color: #e9ff15;
}
body.heat_table.fim-son table tr.team-row th, body.heat_table.fim-son table tr.team-row td {
  padding-left: 4px;
}
body.heat_table.fim-son table tr.team-row th span, body.heat_table.fim-son table tr.team-row td span {
  font-size: 15px;
  line-height: 14px;
}
body.heat_table.fim-son table tr th, body.heat_table.fim-son table tr td {
  font-size: 15px;
  line-height: 12px;
}
body.heat_table.fim-son table tr th.td-small, body.heat_table.fim-son table tr td.td-small {
  width: 28px !important;
}
body.heat_table.longtrack-u23 #header .content {
  background: #173c85;
}
body.heat_table.longtrack-u23 #header .content .text p {
  color: #fff;
}
body.heat_table.flattrack #header .content {
  background: #e6c86f;
}
body.heat_table.flattrack #table {
  margin-bottom: 0 !important;
}
body.heat_table.flattrack #table table tr th, body.heat_table.flattrack #table table tr td {
  font-size: 14px;
  line-height: 12px;
}
body.heat_table.flattrack #table table tr th.td-flag, body.heat_table.flattrack #table table tr td.td-flag {
  width: 31px;
}
body.heat_table.flattrack #table table tr th.td-flag img, body.heat_table.flattrack #table table tr td.td-flag img {
  width: 80%;
}
body.heat_table.flattrack #table table tr th.td-manufacturer, body.heat_table.flattrack #table table tr td.td-manufacturer {
  width: 120px;
  text-align: center;
}
body.heat_table.flattrack #table table tr th.td-small, body.heat_table.flattrack #table table tr td.td-small {
  width: 31px;
  position: relative;
}
body.heat_table.flattrack #table table tr th.td-small span.gate-position, body.heat_table.flattrack #table table tr td.td-small span.gate-position {
  display: inline-block;
  position: absolute;
  font-size: 10px;
  bottom: -1px;
  right: 1px;
}
body.heat_table.flattrack #finals {
  display: none;
}
body.heat_table.speedway-of-nations-2 #table table tr th, body.heat_table.speedway-of-nations-2 #table table tr td {
  font-size: 14px;
  line-height: 14px;
}
body.heat_table.speedway-of-nations-2 #table table tr th.td-flag, body.heat_table.speedway-of-nations-2 #table table tr td.td-flag {
  width: 31px;
}
body.heat_table.speedway-of-nations-2 #table table tr th.td-flag img, body.heat_table.speedway-of-nations-2 #table table tr td.td-flag img {
  width: 80%;
}
body.heat_table.speedway-of-nations-2 #table table tr th.td-small, body.heat_table.speedway-of-nations-2 #table table tr td.td-small {
  width: 22px !important;
  position: relative;
}
body.heat_table.speedway-of-nations-2 #table table tr.manager-row {
  display: none;
}
body.heat_table.speedway-of-nations-2 #footer {
  margin-top: 0;
}
body.heat_table.fmi-flat-track #table table tr th.td-fmn, body.heat_table.fmi-flat-track #table table tr td.td-fmn {
  width: 64px;
}
body.heat_table.fmi-flat-track #table table tr th.td-manufacturer, body.heat_table.fmi-flat-track #table table tr td.td-manufacturer {
  text-align: center;
  width: 100px;
}
body.heat_table.fmi-flat-track #table table tr th.td-small, body.heat_table.fmi-flat-track #table table tr td.td-small {
  width: 40px;
  position: relative;
}
body.heat_table.fmi-flat-track #table table tr th.td-small span.gate-position, body.heat_table.fmi-flat-track #table table tr td.td-small span.gate-position {
  display: inline-block;
  position: absolute;
  font-size: 11px;
  bottom: -3px;
  right: 1px;
}
body.heat_table.fmi-flat-track #finals div.final {
  display: none;
}
body.heat_table.fmi-flat-track.flat-track-12 #table table tr th, body.heat_table.fmi-flat-track.flat-track-12 #table table tr td {
  line-height: 29px;
}
body.heat_table.fmi-flat-track.flat-track-13 #table table tr th, body.heat_table.fmi-flat-track.flat-track-13 #table table tr td {
  line-height: 28px;
}
body.heat_table.etsc #table {
  margin-bottom: 0 !important;
}
body.heat_table.etsc #table table tr th, body.heat_table.etsc #table table tr td {
  font-size: 16px;
  line-height: 17px;
}
body.heat_table.etsc #table table tr th.td-small, body.heat_table.etsc #table table tr td.td-small {
  width: 29px;
  text-align: center;
}
body.heat_table.womens-cup-13 #header .content {
  background: #d4af37;
}
body.heat_table.womens-cup-13 #header .content .text p {
  color: #000;
}
body.heat_table.womens-cup-13 #table table tr th, body.heat_table.womens-cup-13 #table table tr td {
  line-height: 28px;
}
body.heat_table.womens-cup-13 #table table tr th.td-small, body.heat_table.womens-cup-13 #table table tr td.td-small {
  width: 33px;
}
body.heat_table.pairs-8 #table {
  margin-bottom: 0 !important;
}
body.heat_table.pairs-8 #table table tr th, body.heat_table.pairs-8 #table table tr td {
  font-size: 14px;
  line-height: 14px;
}
body.heat_table.pairs-8 #table table tr th.td-small, body.heat_table.pairs-8 #table table tr td.td-small {
  width: 28px;
  text-align: center;
}
body.heat_table.pairs-8 #table table tr th.td-team-flag img, body.heat_table.pairs-8 #table table tr td.td-team-flag img {
  width: 45px;
}
body.heat_table.pairs-8 #table table tr.manager-row {
  display: none;
}
body.heat_table.pairs-10 #table {
  margin-bottom: 0 !important;
}
body.heat_table.pairs-10 #table table tr th, body.heat_table.pairs-10 #table table tr td {
  font-size: 12px;
  line-height: 10px;
}
body.heat_table.pairs-10 #table table tr th.td-small, body.heat_table.pairs-10 #table table tr td.td-small {
  width: 34px;
  text-align: center;
}
body.heat_table.pairs-10 #table table tr th.td-team-flag img, body.heat_table.pairs-10 #table table tr td.td-team-flag img {
  width: 30px;
}
body.heat_table.pairs-10 #table table tr.team-row td span em {
  margin-left: 10px;
}
body.heat_table.pairs-10 #table table tr.manager-row {
  display: none;
}
body.heat_table.bayern-cup #table {
  margin-bottom: 0 !important;
}
body.heat_table.bayern-cup #table table tr th, body.heat_table.bayern-cup #table table tr td {
  font-size: 12px;
  line-height: 11px;
}
body.heat_table.bayern-cup #table table tr th.td-flag, body.heat_table.bayern-cup #table table tr td.td-flag {
  width: 30px;
}
body.heat_table.bayern-cup #table table tr th.td-flag img, body.heat_table.bayern-cup #table table tr td.td-flag img {
  width: 16px;
}
body.heat_table.bayern-cup #table table tr th.td-small, body.heat_table.bayern-cup #table table tr td.td-small {
  width: 24px;
  text-align: center;
}
body.heat_table.bayern-cup #table table tr th.td-team-flag img, body.heat_table.bayern-cup #table table tr td.td-team-flag img {
  width: 45px;
}
body.heat_table.bayern-cup #table table tr.manager-row {
  display: none;
}
body.heat_table.fim-europe #header .content {
  background: #000;
}
body.heat_table.fim-europe #header .content .text p {
  color: #fff;
}

#starting-list {
  background: #fff;
}
#starting-list header, #starting-list .table, #starting-list .about {
  width: 640px;
  margin: 0 auto auto;
}
#starting-list .flattrack-header img {
  width: 100%;
}
#starting-list header {
  padding-top: 25px;
}
#starting-list header.flattrack {
  padding-top: 0;
}
#starting-list header .logos {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#starting-list header .logos img {
  max-width: 100px;
  max-height: 40px;
}
#starting-list header .logos img.flattrack {
  max-height: 55px;
}
#starting-list header .meta {
  margin-top: 20px;
  border: 1px solid #9f9f9f;
  padding: 10px;
  display: flex;
  justify-content: space-between;
}
#starting-list header .meta p {
  margin: 0;
  line-height: 20px;
}
#starting-list header .meta p span {
  display: block;
}
#starting-list .titles {
  margin-top: 20px;
}
#starting-list .titles h1, #starting-list .titles h2, #starting-list .titles h3 {
  text-align: center;
  margin: 0;
}
#starting-list .titles h1 {
  font-size: 24px;
  text-transform: uppercase;
  margin-bottom: 16px;
}
#starting-list .titles h2 {
  font-size: 19px;
  margin-bottom: 4px;
}
#starting-list .titles h3 {
  font-size: 15px;
}
#starting-list .table {
  margin-top: 20px;
}
#starting-list .table table {
  width: 100%;
}
#starting-list .table table thead {
  background: #000;
  color: #fff;
}
#starting-list .table table tbody tr:nth-child(even) {
  background: #efefef;
}
#starting-list .table table tbody tr.team-row {
  border-bottom: 1px solid #000;
}
#starting-list .table table tbody tr.team-row:last-of-type {
  border-bottom: 0;
}
#starting-list .table table th, #starting-list .table table td {
  padding: 4px !important;
  text-align: center;
  vertical-align: middle;
  font-size: 14px;
  line-height: 14px;
  border: 0;
}
#starting-list .table table th.number, #starting-list .table table td.number {
  width: 80px;
}
#starting-list .table table th.name, #starting-list .table table td.name {
  padding-left: 12px !important;
}
#starting-list .table table th.manufacturer, #starting-list .table table td.manufacturer {
  width: 125px;
}
#starting-list .table table th.team, #starting-list .table table td.team {
  width: 125px;
}
#starting-list .table table th.fmn, #starting-list .table table td.fmn {
  width: 65px;
}
#starting-list .table table th.nation, #starting-list .table table td.nation {
  width: 125px;
}
#starting-list .table.is-team table tbody tr:nth-child(even) {
  background: #fff;
}
#starting-list .table.is-team table tr th.team, #starting-list .table.is-team table tr td.team {
  width: 150px;
}
#starting-list .table.is-team table tr th.team div.name, #starting-list .table.is-team table tr td.team div.name {
  font-weight: bolder;
  font-size: 14px;
}
#starting-list .table.is-team table tr th.team div.manager, #starting-list .table.is-team table tr td.team div.manager {
  margin-top: 10px;
  font-size: 11px;
}
#starting-list .about {
  margin-top: 20px;
  padding-top: 8px;
  border-top: 1px dashed #000;
}
#starting-list .about p {
  margin: 0;
  font-size: 11px;
  line-height: 13px;
}
#starting-list .about p:first-of-type {
  font-weight: bolder;
  margin-bottom: 3px;
}
#starting-list footer {
  margin-top: 40px;
  text-align: right;
  margin-right: 40px;
}
#starting-list footer img {
  width: 400px;
}
#starting-list footer.logos {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 20px;
  background: #000;
}
#starting-list footer.logos img {
  max-width: 100px;
  max-height: 60px;
}
#starting-list footer.logos img.anlas {
  max-width: 140px;
}
#starting-list footer.logos img.koopmann {
  max-width: 135px;
}
#starting-list footer.logos img.fim-moto {
  max-width: 120px;
}
#starting-list.flattrack .table table tr th, #starting-list.flattrack .table table tr td {
  font-size: 11px;
}
#starting-list.flattrack .table table tr th.number, #starting-list.flattrack .table table tr td.number {
  width: 60px;
}
#starting-list.flattrack .table table tr th.fmn, #starting-list.flattrack .table table tr td.fmn {
  width: 50px;
}
#starting-list.flattrack .table table tr th.nation, #starting-list.flattrack .table table tr td.nation {
  width: 95px;
}
#starting-list.flattrack .table table tr th.manufacturer, #starting-list.flattrack .table table tr td.manufacturer {
  width: 110px;
}
#starting-list.flattrack .table table tr th.team, #starting-list.flattrack .table table tr td.team {
  width: 110px;
}
#starting-list.flattrack .about {
  margin-top: 0;
}
#starting-list.flattrack footer {
  position: absolute;
  bottom: 0;
  margin: 0;
}
#starting-list.flattrack footer img {
  width: 100%;
}

body.swc header .imn {
  display: none;
}
body.swc table tr {
  height: 55px;
}
body.swc table tr td.pos {
  width: 50px;
  text-align: center;
  font-weight: bolder;
}
body.swc table tr td.flag {
  width: 50px;
  text-align: center;
}
body.swc table tr td.flag img {
  width: 80%;
}
body.swc table tr td.name {
  padding-left: 10px;
}
body.swc table tr td.fmn {
  text-align: center;
  width: 100px;
}
body.swc .officials {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
}
body.swc .officials .official p {
  margin-bottom: 6px;
  font-size: 18px;
  line-height: 18px;
}
body.swc .officials .official p.label {
  font-weight: bolder;
}
body.swc .officials .official:nth-child(2) p {
  text-align: right;
}

body.positions .heat {
  margin-bottom: 10px;
}
body.positions .heat table {
  border-width: 1px;
}
body.positions .heat table tr td {
  font-size: 13px;
  line-height: 21px;
  padding-left: 4px;
  padding-right: 4px;
}
body.positions .heat table tr td.heat-number {
  text-align: center;
  font-weight: bolder;
  width: 80px;
  white-space: break-spaces;
}
body.positions .heat table tr td.heat-row {
  text-align: center;
  font-weight: bolder;
  width: 60px;
}
body.positions .heat table tr td.rider {
  text-align: center;
}

body.ranking-list table tr th, body.ranking-list table tr td {
  padding: 0 !important;
  padding-left: 6px !important;
  padding-right: 6px !important;
  font-size: 14px;
  line-height: 12px !important;
}
body.ranking-list table tr th.pos, body.ranking-list table tr td.pos {
  width: 40px;
}
body.ranking-list table tr th.fmn, body.ranking-list table tr td.fmn {
  width: 100px;
}
body.ranking-list table tr th.nation, body.ranking-list table tr td.nation {
  width: 200px;
}

body.qualifying header .logos {
  margin-bottom: 10px;
}
body.qualifying main #qualifying {
  gap: 50px;
}
body.qualifying main #qualifying .quali {
  width: 30%;
}
body.qualifying main #qualifying .quali p {
  font-size: 16px;
}
body.qualifying main #qualifying .quali .pairs {
  gap: 8px;
  position: relative;
}
body.qualifying main #qualifying .quali .pairs .pair {
  padding: 6px;
}
body.qualifying main #qualifying .quali .pairs .pair .title {
  padding: 6px;
  font-size: 10px;
  font-weight: bolder;
  text-transform: uppercase;
}
body.qualifying main #qualifying .quali .pairs .pair .riders .rider {
  gap: 8px;
}
body.qualifying main #qualifying .quali .pairs .pair .riders .rider .rider-name, body.qualifying main #qualifying .quali .pairs .pair .riders .rider .rider-time {
  font-size: 12px;
  line-height: 12px;
  display: flex;
  align-items: center;
  height: 22px;
  background: #fff;
}
body.qualifying main #qualifying .quali .pairs .pair .riders .rider .rider-name {
  flex-grow: 1;
  padding-left: 6px;
}
body.qualifying main #qualifying .quali .pairs .pair .riders .rider .rider-times {
  gap: 8px;
}
body.qualifying main #qualifying .quali .pairs .pair .riders .rider .rider-times .rider-time {
  width: 43px;
  justify-content: center;
  font-size: 11px;
  line-height: 11px;
}
body.qualifying main #qualifying .quali .pairs .grading {
  background: #d8d8d8;
  font-weight: bolder;
  font-size: 11px;
  line-height: 11px;
  display: block;
  text-align: center;
  padding: 6px;
  position: absolute;
  bottom: -30px;
}
body.qualifying main #qualifying .quali .sprint {
  flex-grow: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
}
body.qualifying main #qualifying .quali .sprint table {
  height: 120px;
  border: 1px #000 solid;
}
body.qualifying main #qualifying .quali .sprint table tr td {
  padding: 6px;
  font-size: 14px;
  line-height: 14px;
}
body.qualifying main #qualifying .quali .sprint table tr td.gate {
  width: 40px;
  text-align: center;
}
body.qualifying main #qualifying .quali .sprint table tr td.points {
  width: 60px;
  text-align: center;
}

#heat-gates .content.pre-selection {
  padding-top: 10px;
  padding-bottom: 10px;
  background: #e1e1e1;
}

.heat-gates .wrapper .title {
  flex-direction: column;
  align-items: flex-start;
}
.heat-gates .wrapper .title .meta {
  margin-right: 0;
  margin-bottom: 10px;
}
.heat-gates .wrapper .title .buttons {
  width: 100%;
  justify-content: space-between;
}
.heat-gates .wrapper .title .buttons a {
  flex-grow: 1;
}
@media (min-width: 576px) {
  .heat-gates .wrapper .title {
    flex-direction: row;
    align-items: center;
  }
  .heat-gates .wrapper .title .meta {
    flex-grow: 1;
    margin-bottom: 0;
  }
  .heat-gates .wrapper .title .buttons {
    flex-grow: 0;
    width: auto;
  }
}
.heat-gates .gates .gate {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px #193657 solid;
}
.heat-gates .gates .gate:nth-child(even) {
  background: #eeeeee;
}
.heat-gates .gates .gate .team-color {
  margin-left: 4px;
  margin-right: 4px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px #000 solid;
}
.heat-gates .gates .gate div {
  flex-shrink: 0;
  padding-top: 5px;
  padding-bottom: 5px;
  text-align: center;
}
.heat-gates .gates .gate div.icon {
  align-self: stretch;
  width: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.heat-gates .gates .gate div.icon a img.emoji {
  margin: 0 auto auto;
}
.heat-gates .gates .gate div.name {
  padding-left: 0.3rem;
  flex-grow: 1;
  flex-shrink: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}
.heat-gates .gates .gate div.name small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
  line-height: 10px;
}
.heat-gates .gates .gate div.name span, .heat-gates .gates .gate div.name small {
  line-height: 14px;
  margin-bottom: 5px;
}
.heat-gates .gates .gate div.name span:last-of-type, .heat-gates .gates .gate div.name small:last-of-type {
  margin-bottom: 0;
}
.heat-gates .gates .gate div.name small::before {
  width: 15px;
  display: inline-block;
}
.heat-gates .gates .gate div.name small.replaced::before {
  content: "🔄";
}
.heat-gates .gates .gate div.name small.warned::before {
  content: "⚠️";
}
.heat-gates .gates .gate div.race-time {
  width: 70px;
}
.heat-gates .gates .gate div.race-time input {
  text-align: center;
}
.heat-gates .gates .gate div.country {
  width: 50px;
}
.heat-gates .gates .gate div.country .flag {
  width: 30px;
  align-self: center;
  display: block;
  margin: 0 auto auto;
  border: 1px #444 solid;
}
.heat-gates .gates .gate div.color {
  width: 60px;
}
.heat-gates .gates .gate div.color select {
  margin: 0 auto auto;
  width: 50px;
  text-align: center;
  text-align-last: center;
  color: #000;
  font-size: 12px;
}
.heat-gates .gates .gate div.points, .heat-gates .gates .gate div.points-addition {
  width: 50px;
}
.heat-gates .gates .gate div.points input, .heat-gates .gates .gate div.points-addition input {
  text-align: center;
  margin: 0 auto auto;
  width: 30px;
}
.heat-gates .gates .gate div.remove {
  border-left: 1px #000 solid;
  background: #ffcbcb;
}
.heat-gates .gates .gate input, .heat-gates .gates .gate select {
  padding: 5px;
}
.heat-gates .gates .gate.head {
  padding-top: 0;
}
.heat-gates .gates .gate.head div {
  font-weight: bolder;
  padding-top: 0;
}
.heat-gates .gates .gate.head .remove {
  border-left: 0;
  background: none;
}
.heat-gates .gates .gate.is-replaced .name .full-name {
  color: #cc3300;
  text-decoration: line-through;
}
.heat-gates .gates .replacement {
  font-size: 12px;
  font-style: italic;
  background: #d8d8d8;
  padding: 5px;
}
@media (min-width: 576px) {
  .heat-gates .gates .gate div.color {
    width: 100px;
  }
  .heat-gates .gates .gate div.color select {
    width: 90%;
  }
  .heat-gates .gates .gate div.points, .heat-gates .gates .gate div.points-addition {
    width: 120px;
  }
  .heat-gates .gates .gate div.points input, .heat-gates .gates .gate div.points-addition input {
    width: 90%;
  }
}
.heat-gates p.non-starters {
  font-weight: bolder;
  margin: 10px 0;
}
.heat-gates.replaced-riders .wrapper .title .meta {
  margin-bottom: 0;
}

.result-rider {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 50px;
  padding: 0;
  position: relative;
}
.result-rider.no-color {
  height: 40px;
}
.result-rider.excluded {
  cursor: not-allowed;
}
.result-rider.excluded:after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.7);
}
.result-rider .rider {
  flex-grow: 1;
  display: flex;
}
.result-rider .rider:hover {
  font-weight: bolder;
}
.result-rider .rider div {
  flex-shrink: 0;
}
.result-rider .rider div.name {
  flex-grow: 1;
  flex-shrink: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: flex;
  align-items: center;
}
.result-rider .rider div.name .rider-warning {
  margin-left: 5px;
  padding: 2px;
  background: #fff;
  line-height: 16px;
}
.result-rider .rider div.name .rider-name {
  margin-left: 5px;
  flex-grow: 1;
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.result-rider .rider div.name .rider-replacement {
  align-self: stretch;
  width: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.result-rider .rider div.name .rider-replacement a {
  text-align: center;
}
.result-rider .rider div.name .rider-replacement a img.emoji {
  display: inline-block;
}
.result-rider .rider div.country {
  width: 50px;
  padding-top: 5px;
  padding-bottom: 5px;
}
.result-rider .rider div.country img {
  width: 30px;
  align-self: center;
  display: block;
  margin: 0 auto auto;
  border: 1px #444 solid;
}
.result-rider .points {
  margin-right: 5px;
}
.result-rider .points .dropdown .dropdown-menu {
  width: 80px;
  min-width: auto;
  padding: 0;
}
.result-rider .points .dropdown .dropdown-menu .dropdown-item {
  text-align: center;
  font-weight: bolder;
  font-size: 20px;
  padding: 4px;
}
.result-rider.none .name {
  padding-top: 5px;
  padding-bottom: 5px;
}
@media (min-width: 576px) {
  .result-rider .rider div.name .rider-name {
    max-width: none;
  }
}

#preview {
  display: none;
  border: 1px #d8d8d8 solid;
  padding: 10px;
  background: #f1f1f1;
  margin-top: 20px;
}
#preview h5 {
  font-size: 16px;
  margin-bottom: 10px;
}
#preview table td, #preview table th {
  padding: 5px;
  font-size: 12px;
}

#race_gates {
  padding-top: 10px;
}

#heat-results .content .heats {
  display: flex;
  flex-wrap: wrap;
  margin: -5px;
}
#heat-results .content .heats .heat {
  width: 100%;
  padding: 10px;
  margin: 5px;
  border: 1px #d8d8d8 solid;
}
#heat-results .content .heats .heat p {
  font-weight: bolder;
  font-size: 14px;
  margin-bottom: 10px;
}
#heat-results .content .heats .heat .riders {
  border: 1px #d8d8d8 solid;
}
#heat-results .content .heats .heat .riders .rider {
  padding: 5px;
  display: flex;
  align-items: center;
  cursor: grab;
  border-radius: 0;
}
#heat-results .content .heats .heat .riders .rider:active {
  cursor: grabbing;
}
#heat-results .content .heats .heat .riders .rider div {
  font-size: 13px;
}
#heat-results .content .heats .heat .riders .rider .number {
  width: 30px;
}
#heat-results .content .heats .heat .riders .rider .name {
  flex-grow: 1;
}
#heat-results .content .heats .heat .riders .rider .country {
  width: 15px;
  align-self: center;
  display: block;
}
#heat-results .content .heats .heat .riders .rider .result {
  width: 30px;
  text-align: center;
}
#heat-results .content .heats .heat .drag-ghost-class {
  background: #d8d8d8;
}

#add-gate-form .gates {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
}
#add-gate-form .gates .gate {
  width: calc(25% - 10px);
  border: 2px #000 solid;
  padding: 10px;
  cursor: pointer;
  flex-shrink: 0;
  text-align: center;
  font-size: 12px;
  font-weight: bolder;
}
#add-gate-form .gates .gate:hover {
  border-style: dashed;
}

@media (min-width: 576px) {
  #heat-results .content .heats .heat {
    width: calc(25% - 10px);
  }
  #heat-results.single-heat .content .heats .heat {
    width: 100%;
  }
}
#button-bar-heat {
  padding: 0 !important;
}
#button-bar-heat .container {
  padding: 0 !important;
}
#button-bar-heat .container .buttons {
  padding: 15px 10px;
}
@media (min-width: 576px) {
  #button-bar-heat {
    padding: 10px 0;
  }
  #button-bar-heat .container {
    padding: 0 10px;
  }
}

#next-heat-bar {
  padding: 5px 0;
  margin-bottom: 0;
}
#next-heat-bar .container {
  display: flex;
  align-items: center;
  justify-content: center;
}
#next-heat-bar .container input {
  margin-right: 5px;
}
#next-heat-bar .container label {
  margin-bottom: 0;
  display: flex;
}
#next-heat-bar .container label .emoji {
  margin-left: 5px;
  align-self: center;
}

#gate-selection .rider {
  display: flex;
  align-items: center;
  padding: 10px;
}
#gate-selection .rider:last-of-type {
  margin-bottom: 0;
}
#gate-selection .rider:nth-child(odd) {
  background: #e1e1e1;
}
#gate-selection .rider .name {
  width: 150px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-right: 10px;
}
#gate-selection .rider .gates {
  flex: 1;
  display: flex;
  justify-content: space-between;
  gap: 5px;
}
#gate-selection .rider .gates .gate {
  flex: 1;
  text-align: center;
  font-size: 10px;
  padding: 3px;
  text-decoration: none;
  border: 1px #000 solid;
  width: 30px;
  white-space: nowrap;
}
#gate-selection .rider .gates .gate.disabled-color, #gate-selection .rider .gates .gate.already-picked {
  background: #d8d8d8 !important;
  opacity: 0.3;
  pointer-events: none;
  text-decoration: none;
  cursor: default;
}
#pre-selection-form .rider {
  padding: 5px;
  display: flex;
  align-items: center;
}
#pre-selection-form .rider:hover {
  cursor: pointer;
}
#pre-selection-form .rider:hover label {
  cursor: pointer;
}
#pre-selection-form .rider:hover label .name {
  font-weight: bolder;
}
#pre-selection-form .rider:nth-child(odd) {
  background: #e1e1e1;
}
#pre-selection-form .rider label {
  display: flex;
  align-items: center;
  flex: 1;
  margin: 0 0 0 20px;
}
#pre-selection-form .rider label span {
  font-size: 13px;
  line-height: 13px;
}
#pre-selection-form .rider label .rank {
  width: 25px;
}
#pre-selection-form .rider label .number {
  width: 25px;
  font-size: smaller;
  font-weight: bolder;
}
#pre-selection-form .rider label .name {
  flex: 1;
}
#pre-selection-form .rider label .flag {
  height: 10px;
}
#pre-selection-form .rider label .points {
  width: 40px;
  text-align: right;
}

#add-result-form {
  margin-bottom: 20px;
}
#add-result-form .team-color {
  margin-left: 4px;
  margin-right: 4px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px #000 solid;
  width: 20px;
  height: 20px;
  display: block;
  margin-left: 0;
  margin-right: 0;
}

#heat-finished .content {
  padding-top: 8px;
  padding-bottom: 8px;
}
#heat-finished .finished-meta {
  display: flex;
}
#heat-finished .finished-meta img.emoji {
  margin-left: 3px;
  align-self: center;
}

#points-popup {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
  margin-bottom: 20px;
}
#points-popup span {
  border: 1px #000 solid;
  text-align: center;
  width: calc(20% - 20px);
  height: 50px;
}
#points-popup span h3 {
  line-height: 50px;
}
#points-popup span:hover {
  cursor: pointer;
}
#points-popup span:hover h3 {
  text-decoration: underline;
}

#add-riders-list {
  max-height: 400px;
  overflow: scroll;
}
#add-riders-list .rider {
  padding: 4px;
  display: flex;
  align-items: center;
}
#add-riders-list .rider .rank, #add-riders-list .rider .number, #add-riders-list .rider .name, #add-riders-list .rider .nat, #add-riders-list .rider .pts, #add-riders-list .rider .gate {
  flex-shrink: 0;
  font-size: 13px;
  line-height: 13px;
}
#add-riders-list .rider .name-wrapper {
  flex-grow: 1;
  overflow: hidden;
}
#add-riders-list .rider .name-wrapper .name-content {
  display: flex;
}
#add-riders-list .rider .name-wrapper .name-content .rank {
  width: 24px;
}
#add-riders-list .rider .name-wrapper .name-content .number {
  width: 30px;
}
#add-riders-list .rider .name-wrapper .name-content .name {
  flex-grow: 1;
}
#add-riders-list .rider .name-wrapper .proposed-info {
  font-size: 10px;
  line-height: 10px;
  margin-top: 2px;
  color: #808080;
}
#add-riders-list .rider .nat {
  width: 30px;
}
#add-riders-list .rider .nat img {
  width: 20px;
}
#add-riders-list .rider .pts {
  width: 50px;
}
#add-riders-list .rider .gate {
  width: 100px;
}
#add-riders-list .rider .gate select {
  width: 100%;
  padding: 0;
  line-height: 10px;
  height: 20px;
}
#add-riders-list .rider:nth-child(odd) {
  background: #e3e3e3;
}
#add-riders-list .rider.proposed {
  border: 2px #d80000 solid;
  margin-bottom: 2px;
  padding-left: 2px;
  padding-right: 2px;
}

#run-off-form .form-check {
  display: flex;
  align-items: center;
}
#run-off-form .form-check .form-check-input {
  margin-top: 0;
}
#run-off-form .form-check label {
  line-height: 22px;
}

#run-off-entries .entries {
  height: 200px;
  overflow-y: scroll;
  border: 1px #000 solid;
  padding: 10px;
}
#run-off-entries .entries p, #run-off-entries .entries div, #run-off-entries .entries label {
  line-height: 18px;
}
#run-off-entries .entries p {
  margin-bottom: 4px;
  font-weight: bolder;
}
#run-off-entries .entries .entry {
  display: flex;
}
#run-off-entries .entries .entry .pos {
  width: 30px;
}
#run-off-entries .entries .entry .name {
  flex: 1;
}
#run-off-entries .entries .entry .name:hover {
  cursor: pointer;
}
#run-off-entries .entries .entry .check {
  width: 40px;
  text-align: right;
  padding-right: 10px;
}
#run-off-entries .entries .entry:hover {
  cursor: pointer;
}
#run-off-entries .entries .entry:hover .name {
  font-weight: bolder;
}
#run-off-entries .entries .entry:hover .check input {
  cursor: pointer;
}

#run-off-series-help .card {
  margin-bottom: 10px;
  padding: 10px;
}
#run-off-series-help .card p {
  margin-bottom: 6px;
  font-size: 12px;
  line-height: 12px;
}
#run-off-series-help .card p:last-of-type {
  margin-bottom: 0;
}

#btn-finish-heat.blink {
  font-weight: bolder;
  border: 3px solid red;
  animation: blink-button 1s infinite;
}

@keyframes blink-button {
  0% {
    border-color: red;
    background-color: #28a745;
  }
  50% {
    border-color: transparent;
    background-color: rgba(40, 167, 69, 0.9);
  }
  100% {
    border-color: red;
    background-color: #28a745;
  }
}
.team-proposal .team {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.team-proposal .team .color {
  margin-left: 4px;
  margin-right: 4px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px #000 solid;
  margin-left: 0;
}
.team-proposal .team .name, .team-proposal .team .gate {
  line-height: 14px;
}
.team-proposal .team .name {
  flex: 1;
  text-align: left;
}
.team-proposal .team .gate {
  width: 50px;
  margin-left: 10px;
  border-bottom: none;
}
.team-proposal .team .riders {
  flex: 1;
  margin-left: 10px;
}

#team-gates-form .heats .heat {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
#team-gates-form .heats .heat .name {
  flex-grow: 1;
}
#team-gates-form .heats .heat .gate {
  flex-grow: 1;
  margin-left: 10px;
  border-bottom: none;
}
#team-gates-form .heats .heat .riders select {
  width: 180px;
}

#entries .entry {
  display: flex;
  align-items: center;
  padding-top: 8px;
  padding-bottom: 8px;
}
#entries .entry div {
  line-height: 14px;
}
#entries .entry .pos {
  padding-left: 5px;
  width: 34px;
  flex-shrink: 0;
}
#entries .entry .handle {
  cursor: move;
  background: url(https://cdnjs.cloudflare.com/ajax/libs/twemoji/14.0.2/72x72/2195.png);
  background-size: cover;
  width: 20px;
  height: 20px;
}
#entries .entry .handle:hover {
  opacity: 0.7;
}
#entries .entry .number {
  width: 40px;
  flex-shrink: 0;
  text-align: center;
}
#entries .entry .name {
  flex-grow: 1;
  flex-shrink: 1;
  display: flex;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#entries .entry .name img {
  margin-right: 6px;
  align-self: center;
  display: inline-block;
}
#entries .entry .name .entry-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#entries .entry .name .flag {
  width: 20px;
  align-self: center;
  display: inline-block;
  margin-left: 4px;
}
#entries .entry .ride {
  width: 20px;
  flex-shrink: 0;
}
#entries .entry .points {
  flex-shrink: 0;
  width: 35px;
  font-weight: bolder;
  text-align: right;
  padding-right: 5px;
}
#entries .entry .spacer {
  width: 100px;
}
#entries .entry:nth-child(odd) {
  background: #e1e1e1;
}
#entries .entry:hover div {
  font-weight: bolder;
}

#heading, #draw {
  display: flex;
}
#heading .numbers, #draw .numbers {
  width: 80px;
}
#heading .riders, #draw .riders {
  width: 300px;
}
#heading .head, #draw .head {
  font-weight: bolder;
}

#draw .riders, #draw .head {
  border: 1px #000 solid;
}
#draw .numbers {
  border: 1px #fff solid;
}
#draw .numbers .number {
  padding: 6px 6px 6px 0;
}
#draw .riders {
  margin-right: 40px;
}
#draw .entries {
  background: #d8d8d8;
}
#draw .entries .rider {
  padding: 6px;
  cursor: move;
  display: flex;
}
#draw .entries .rider:nth-child(odd) {
  background: #eee;
}
#draw .entries .rider .number {
  margin-right: 4px;
}
#draw .entries .rider:hover .name {
  font-weight: bolder;
}
#draw .rider, #draw .number {
  line-height: 15px;
}

#mylaps-header .meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#mylaps-header .meta .wrapper .meta-title h3 {
  margin-bottom: 5px;
}
#mylaps-header .meta .wrapper .meta-left p {
  line-height: 14px;
  margin-bottom: 5px;
}
#mylaps-header .meta .wrapper .meta-left p:last-child {
  margin-bottom: 0;
}

#mylaps-menu {
  background: #e1e1e1;
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  gap: 10px;
}
#mylaps-menu a, #mylaps-menu span {
  font-size: 14px;
  line-height: 14px;
}

#qualifying-content {
  position: relative;
}
#qualifying-content .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  display: none;
}

#qualifying {
  display: flex;
  align-items: stretch;
  flex-direction: column;
  gap: 10px;
}
#qualifying .quali {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
#qualifying .quali p {
  font-weight: bolder;
  text-transform: uppercase;
  margin-bottom: 4px;
}
#qualifying .quali .pairs {
  flex-grow: 1;
  gap: 10px;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}
#qualifying .quali .pairs .pair {
  background: #e1e1e1;
  padding: 8px;
  display: flex;
  align-items: center;
}
#qualifying .quali .pairs .pair .title {
  background: #0000cc;
  color: #fff;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  padding: 10px 4px;
  margin-right: 8px;
  line-height: 10px;
}
#qualifying .quali .pairs .pair .riders {
  flex-grow: 1;
}
#qualifying .quali .pairs .pair .riders .rider {
  margin-bottom: 4px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#qualifying .quali .pairs .pair .riders .rider .rider-times {
  display: flex;
  gap: 10px;
}
#qualifying .quali .pairs .pair .riders .rider .rider-times .rider-time {
  line-height: 14px;
  background: #fff;
  padding: 6px;
  font-weight: bolder;
}
#qualifying .quali .pairs .pair .riders .rider .rider-times .rider-time span.text-muted {
  font-weight: normal;
}
#qualifying .quali .pairs .pair .riders .rider:last-of-type {
  margin-bottom: 0;
}
@media (min-width: 576px) {
  #qualifying {
    flex-direction: row;
  }
}

.jq-toast-single {
  font-size: 14px;
  line-height: 20px;
}

.fancybox__container .fancybox__slide {
  padding: 20px;
}
.fancybox__container .fancybox__slide .fancybox__content {
  padding: 10px;
  height: 90% !important;
  max-width: 1100px !important;
  width: 100% !important;
}

.dropdown-menu {
  min-width: 100px;
  padding: 6px;
}
.dropdown-menu .dropdown-item {
  font-size: 14px;
  padding: 2px;
}
.dropdown-menu .dropdown-item:hover {
  text-decoration: underline;
}
.dropdown-menu .dropdown-item img {
  align-self: center;
}

.championship-round-flag {
  cursor: pointer;
}

#draw-by-numbers-form img.flag {
  width: 20px;
}

#sprint-form .riders .rider {
  display: flex;
  align-items: center;
}
#sprint-form .riders .rider.header {
  font-weight: bolder;
}
#sprint-form .riders .rider .color-wrapper {
  width: 50px;
}
#sprint-form .riders .rider .color-wrapper .color {
  margin-left: 4px;
  margin-right: 4px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px #000 solid;
  display: block;
  margin-left: 0;
}
#sprint-form .riders .rider .dropdown {
  flex-grow: 1;
}
#sprint-form .riders .rider .points, #sprint-form .riders .rider .addition {
  margin-left: 20px;
  width: 50px;
  text-align: center;
}
#sprint-form .riders .rider .points input, #sprint-form .riders .rider .addition input {
  width: 100%;
  text-align: center;
}

.btn.mylaps {
  background-color: #e1e1e1;
  display: flex;
  align-items: center;
}
.btn.mylaps:before {
  width: 18px;
  height: 18px;
}
.btn.mylaps:hover {
  background-color: #d1d1d1;
}
.btn.mylaps img {
  width: 60px;
  align-self: center;
}
.btn.mylaps span {
  margin-left: 4px;
  font-weight: bolder;
  text-transform: uppercase;
  font-size: 12px;
  height: 9px;
  line-height: 10px;
}

#modal-body .table tr th, #modal-body .table tr td {
  padding-left: 2px;
  padding-right: 2px;
}

#practice-times {
  padding-top: 0;
}
#practice-times .group p {
  font-weight: bolder;
  margin-bottom: 10px;
}
#practice-times .group table tr th.pos, #practice-times .group table tr td.pos {
  width: 24px;
}
#practice-times .group table tr th.time, #practice-times .group table tr td.time {
  width: 65px;
}
@media (min-width: 576px) {
  #practice-times {
    display: flex;
    gap: 20px;
  }
}

#pdf-exports table tr th.buttons a, #pdf-exports table tr td.buttons a {
  padding: 4px;
  font-size: 12px;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiQUFBQTs7RUFFRTtBQUNGLGlCQUFpQixjQUFjLEVBQUUsZUFBZSxFQUFFLFlBQVksR0FBRywrQkFBK0IsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLHNCQUFzQixFQUFFLHdCQUF3QixFQUFFO0FBQzNLLG1CQUFtQixTQUFTLEVBQUUsVUFBVSxFQUFFOztBQUUxQyw2QkFBNkIsWUFBWSxFQUFFLFVBQVUsRUFBRTtBQUN2RCw4QkFBOEIsWUFBWSxFQUFFLFdBQVcsRUFBRTtBQUN6RCwwQkFBMEIsU0FBUyxFQUFFLFVBQVUsRUFBRTtBQUNqRCwyQkFBMkIsU0FBUyxFQUFFLFdBQVcsRUFBRTs7QUFFbkQsbUJBQW1CLGNBQWMsRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSw4QkFBOEIsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsR0FBRyw4QkFBOEIsRUFBRSx5QkFBeUIsRUFBRSxZQUFZLEVBQUU7O0FBRTFRLHNCQUFzQiw4QkFBOEIsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixFQUFFO0FBQzVLLHFCQUFxQixXQUFXLEVBQUUscUJBQXFCLEVBQUUsaUJBQWlCLEVBQUUsOEJBQThCLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFOztBQUVsSixzQkFBc0Isd0JBQXdCLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFO0FBQy9FLHlCQUF5QixnQ0FBZ0MsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLHNCQUFzQixFQUFFOztBQUUvSSx5QkFBeUIsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFOztBQUVyRyxtQkFBbUIsY0FBYyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxlQUFlLEVBQUU7QUFDeEksbUJBQW1CLFdBQVcsRUFBRTtBQUNoQyxlQUFlLDRCQUE0QixFQUFFLDRCQUE0QixFQUFFLHlCQUF5QixFQUFFO0FBQ3RHLGdCQUFnQiwrdkJBQSt2QixFQUFFLHlCQUF5QixFQUFFLGNBQWMsRUFBRSxxQkFBcUIsRUFBRTtBQUNuMUIsbUJBQW1CLCt0QkFBK3RCLEVBQUUseUJBQXlCLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixFQUFFO0FBQ3R6QixpQkFBaUIsdXlCQUF1eUIsRUFBRSx5QkFBeUIsRUFBRSxjQUFjLEVBQUUscUJBQXFCLEVBQUU7QUFDNTNCLG1CQUFtQiwyZkFBMmYsRUFBRSxjQUFjLEVBQUUseUJBQXlCLEVBQUUscUJBQXFCLEVBQUUsQztBQzNCbGxCLGdCQUFnQjtBQ0FoQjs7Ozs7RUFBQTtBQ0NBO0VBR0k7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUtGO0VBQ0E7QUZtQkY7O0FHbkJBOzs7RUFHRTtBSHNCRjs7QUduQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBSHNCRjs7QUdoQkE7RUFDRTtBSG1CRjs7QUdUQTtFQUNFO0VBQ0Esa01DcU80QjtFQ3JKeEIsZUF0Q2E7RUZ4Q2pCLGdCQzhPNEI7RUQ3TzVCLGdCQ2tQNEI7RURqUDVCLGNDbkNTO0VEb0NUO0VBQ0Esc0JDOUNTO0FKMERYOztBR0FBO0VBQ0U7QUhHRjs7QUdNQTtFQUNFO0VBQ0E7RUFDQTtBSEhGOztBR2dCQTtFQUNFO0VBQ0EscUJDZ040QjtBSjdOOUI7O0FHb0JBO0VBQ0U7RUFDQSxtQkNvRjBCO0FKckc1Qjs7QUc0QkE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSHpCRjs7QUc0QkE7RUFDRTtFQUNBO0VBQ0E7QUh6QkY7O0FHNEJBOzs7RUFHRTtFQUNBO0FIekJGOztBRzRCQTs7OztFQUlFO0FIekJGOztBRzRCQTtFQUNFLGdCQ2lKNEI7QUoxSzlCOztBRzRCQTtFQUNFO0VBQ0E7QUh6QkY7O0FHNEJBO0VBQ0U7QUh6QkY7O0FHNEJBOztFQUVFLG1CQ29JNEI7QUo3SjlCOztBRzRCQTtFRXhGSTtBTGdFSjs7QUdpQ0E7O0VBRUU7RUVuR0U7RUZxR0Y7RUFDQTtBSDlCRjs7QUdpQ0E7RUFBTTtBSDdCTjs7QUc4QkE7RUFBTTtBSDFCTjs7QUdpQ0E7RUFDRSxjQ1h3QztFRFl4QyxxQkNYd0M7RURZeEM7QUg5QkY7QU1sSkU7RUhtTEUsY0Nkc0M7RURldEMsMEJDZHNDO0FKaEIxQzs7QUd1Q0E7RUFDRTtFQUNBO0FIcENGO0FNM0pFO0VIa01FO0VBQ0E7QUhwQ0o7O0FHNkNBOzs7O0VBSUUsaUdDeUQ0QjtFQzdNMUI7QUwyR0o7O0FHNkNBO0VBRUU7RUFFQTtFQUVBO0VBR0E7QUgvQ0Y7O0FHdURBO0VBRUU7QUhyREY7O0FHNkRBO0VBQ0U7RUFDQTtBSDFERjs7QUc2REE7RUFHRTtFQUNBO0FINURGOztBR29FQTtFQUNFO0FIakVGOztBR29FQTtFQUNFLG9CQzZFNEI7RUQ1RTVCLHVCQzRFNEI7RUQzRTVCLGNDdFFTO0VEdVFUO0VBQ0E7QUhqRUY7O0FHd0VBO0VBRUU7RUFDQTtBSHRFRjs7QUc4RUE7RUFFRTtFQUNBLHFCQzJKc0M7QUp2T3hDOztBR2tGQTtFQUVFO0FIaEZGOztBR3VGQTtFQUNFO0VBQ0E7QUhwRkY7O0FHdUZBOzs7OztFQUtFO0VBQ0E7RUU1UEU7RUY4UEY7QUhwRkY7O0FHdUZBOztFQUVFO0FIcEZGOztBR3VGQTs7RUFFRTtBSHBGRjs7QUcwRkE7RUFDRTtBSHZGRjs7QUc2RkE7RUFDRTtBSDFGRjs7QUdpR0E7Ozs7RUFJRTtBSDlGRjs7QUd1R0k7Ozs7RUFDRTtBSGpHTjs7QUd1R0E7Ozs7RUFJRTtFQUNBO0FIcEdGOztBR3VHQTs7RUFFRTtFQUNBO0FIcEdGOztBR3dHQTtFQUNFO0VBRUE7QUh0R0Y7O0FHeUdBO0VBTUU7RUFFQTtFQUNBO0VBQ0E7QUg1R0Y7O0FHaUhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRW5TSSxpQkF0Q2E7RUYyVWpCO0VBQ0E7RUFDQTtBSDlHRjs7QUdpSEE7RUFDRTtBSDlHRjs7QUdrSEE7O0VBRUU7QUgvR0Y7O0FHa0hBO0VBS0U7RUFDQTtBSG5IRjs7QUcwSEE7RUFDRTtBSHZIRjs7QUcrSEE7RUFDRTtFQUNBO0FINUhGOztBR21JQTtFQUNFO0FIaElGOztBR21JQTtFQUNFO0VBQ0E7QUhoSUY7O0FHbUlBO0VBQ0U7QUhoSUY7O0FHcUlBO0VBQ0U7QUhsSUY7O0FPMVZBOztFQUVFLHFCSHFTNEI7RUduUzVCLGdCSHFTNEI7RUdwUzVCLGdCSHFTNEI7QUp1RDlCOztBT3hWQTtFRmdITSxpQkF0Q2E7QUxrUm5COztBTzNWQTtFRitHTSxlQXRDYTtBTHNSbkI7O0FPOVZBO0VGOEdNLGtCQXRDYTtBTDBSbkI7O0FPaldBO0VGNkdNLGlCQXRDYTtBTDhSbkI7O0FPcFdBO0VGNEdNLGtCQXRDYTtBTGtTbkI7O0FPdldBO0VGMkdNLGVBdENhO0FMc1NuQjs7QU96V0E7RUZ5R00sa0JBdENhO0VFakVqQixnQkh1UzRCO0FKcUU5Qjs7QU94V0E7RUZtR00sZUF0Q2E7RUUzRGpCLGdCSDBSNEI7RUd6UjVCLGdCSGlSNEI7QUowRjlCOztBT3pXQTtFRjhGTSxpQkF0Q2E7RUV0RGpCLGdCSHNSNEI7RUdyUjVCLGdCSDRRNEI7QUpnRzlCOztBTzFXQTtFRnlGTSxpQkF0Q2E7RUVqRGpCLGdCSGtSNEI7RUdqUjVCLGdCSHVRNEI7QUpzRzlCOztBTzNXQTtFRm9GTSxpQkF0Q2E7RUU1Q2pCLGdCSDhRNEI7RUc3UTVCLGdCSGtRNEI7QUo0RzlCOztBT3RXQTtFQUNFLGdCSGdGTztFRy9FUCxtQkgrRU87RUc5RVA7RUFDQTtBUHlXRjs7QU9qV0E7O0VGTUk7RUVIRixnQkgwTjRCO0FKMEk5Qjs7QU9qV0E7O0VBRUUsY0hrUTRCO0VHalE1Qix5QkgwUTRCO0FKMEY5Qjs7QU81VkE7RUMvRUU7RUFDQTtBUithRjs7QU81VkE7RUNwRkU7RUFDQTtBUm9iRjs7QU85VkE7RUFDRTtBUGlXRjtBTy9WRTtFQUNFLG9CSG9QMEI7QUo2RzlCOztBT3ZWQTtFRmpDSTtFRW1DRjtBUDBWRjs7QU90VkE7RUFDRSxtQkh1Qk87RUNSSCxrQkF0Q2E7QUxpWG5COztBT3RWQTtFQUNFO0VGN0NFO0VFK0NGLGNIMUdTO0FKbWNYO0FPdlZFO0VBQ0U7QVB5Vko7O0FTNWNBO0VDSUU7RUFHQTtBVjBjRjs7QVMzY0E7RUFDRSxnQkwrL0JrQztFSzkvQmxDLHNCTFJTO0VLU1Q7RUVFRTtFRFBGO0VBR0E7QVZtZEY7O0FTcmNBO0VBRUU7QVR1Y0Y7O0FTcGNBO0VBQ0U7RUFDQTtBVHVjRjs7QVNwY0E7RUprQ0k7RUloQ0YsY0wzQlM7QUprZVg7O0FZOWVBO0VQdUVJO0VPckVGLGNSbUNRO0VRbENSO0FaaWZGO0FZOWVFO0VBQ0U7QVpnZko7O0FZM2VBO0VBQ0U7RVAwREU7RU94REYsV1JUUztFUVVULHlCUkRTO0VPRVA7QVg4ZUo7QVkzZUU7RUFDRTtFUGtEQTtFT2hEQSxnQlJ3UTBCO0FKcU85Qjs7QVl2ZUE7RUFDRTtFUHlDRTtFT3ZDRixjUmpCUztBSjJmWDtBWXZlRTtFUG9DRTtFT2xDQTtFQUNBO0FaeWVKOztBWXBlQTtFQUNFLGlCUjBqQ2tDO0VRempDbEM7QVp1ZUY7O0FhL2dCRTs7Ozs7O0VDREE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZHloQkY7O0FldGVJO0VGekNFO0lBQ0UsZ0JUOExlO0VKcVZyQjtBQUNGO0FlNWVJO0VGekNFO0lBQ0UsZ0JUOExlO0VKMFZyQjtBQUNGO0FlamZJO0VGekNFO0lBQ0UsZ0JUOExlO0VKK1ZyQjtBQUNGO0FldGZJO0VGekNFO0lBQ0UsaUJUOExlO0VKb1dyQjtBQUNGO0FhdmdCRTtFQ25DQTtFQUNBO0VBQ0E7RUFDQTtBZDZpQkY7O0FhdmdCRTtFQUNFO0VBQ0E7QWIwZ0JKO0FheGdCSTs7RUFFRTtFQUNBO0FiMGdCTjs7QWdCaGtCRTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhCd2tCSjs7QWdCbGpCTTtFQUNFO0VBQ0E7RUFDQTtBaEJxakJSOztBY3poQkU7RUFDRTtFQUNBO0FkNGhCSjs7QWM5aEJFO0VBQ0U7RUFDQTtBZGlpQko7O0FjbmlCRTtFQUNFO0VBQ0E7QWRzaUJKOztBY3hpQkU7RUFDRTtFQUNBO0FkMmlCSjs7QWM3aUJFO0VBQ0U7RUFDQTtBZGdqQko7O0FjbGpCRTtFQUNFO0VBQ0E7QWRxakJKOztBZ0J4a0JNO0VGQ0o7RUFDQTtFQUNBO0FkMmtCRjs7QWdCeGtCVTtFRmJSO0VBSUE7QWRzbEJGOztBZ0I3a0JVO0VGYlI7RUFJQTtBZDJsQkY7O0FnQmxsQlU7RUZiUjtFQUlBO0FkZ21CRjs7QWdCdmxCVTtFRmJSO0VBSUE7QWRxbUJGOztBZ0I1bEJVO0VGYlI7RUFJQTtBZDBtQkY7O0FnQmptQlU7RUZiUjtFQUlBO0FkK21CRjs7QWdCdG1CVTtFRmJSO0VBSUE7QWRvbkJGOztBZ0IzbUJVO0VGYlI7RUFJQTtBZHluQkY7O0FnQmhuQlU7RUZiUjtFQUlBO0FkOG5CRjs7QWdCcm5CVTtFRmJSO0VBSUE7QWRtb0JGOztBZ0IxbkJVO0VGYlI7RUFJQTtBZHdvQkY7O0FnQi9uQlU7RUZiUjtFQUlBO0FkNm9CRjs7QWdCOW5CTTtFQUF3QjtBaEJrb0I5Qjs7QWdCaG9CTTtFQUF1QjtBaEJvb0I3Qjs7QWdCam9CUTtFQUF3QixRQURiO0FoQnNvQm5COztBZ0Jyb0JRO0VBQXdCLFFBRGI7QWhCMG9CbkI7O0FnQnpvQlE7RUFBd0IsUUFEYjtBaEI4b0JuQjs7QWdCN29CUTtFQUF3QixRQURiO0FoQmtwQm5COztBZ0JqcEJRO0VBQXdCLFFBRGI7QWhCc3BCbkI7O0FnQnJwQlE7RUFBd0IsUUFEYjtBaEIwcEJuQjs7QWdCenBCUTtFQUF3QixRQURiO0FoQjhwQm5COztBZ0I3cEJRO0VBQXdCLFFBRGI7QWhCa3FCbkI7O0FnQmpxQlE7RUFBd0IsUUFEYjtBaEJzcUJuQjs7QWdCcnFCUTtFQUF3QixRQURiO0FoQjBxQm5COztBZ0J6cUJRO0VBQXdCLFNBRGI7QWhCOHFCbkI7O0FnQjdxQlE7RUFBd0IsU0FEYjtBaEJrckJuQjs7QWdCanJCUTtFQUF3QixTQURiO0FoQnNyQm5COztBZ0I5cUJZO0VGaEJWO0Fka3NCRjs7QWdCbHJCWTtFRmhCVjtBZHNzQkY7O0FnQnRyQlk7RUZoQlY7QWQwc0JGOztBZ0IxckJZO0VGaEJWO0FkOHNCRjs7QWdCOXJCWTtFRmhCVjtBZGt0QkY7O0FnQmxzQlk7RUZoQlY7QWRzdEJGOztBZ0J0c0JZO0VGaEJWO0FkMHRCRjs7QWdCMXNCWTtFRmhCVjtBZDh0QkY7O0FnQjlzQlk7RUZoQlY7QWRrdUJGOztBZ0JsdEJZO0VGaEJWO0Fkc3VCRjs7QWdCdHRCWTtFRmhCVjtBZDB1QkY7O0FlcnVCSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFaEJvd0JOOztFY3h1QkE7SUFDRTtJQUNBO0VkMnVCRjs7RWM3dUJBO0lBQ0U7SUFDQTtFZGd2QkY7O0VjbHZCQTtJQUNFO0lBQ0E7RWRxdkJGOztFY3Z2QkE7SUFDRTtJQUNBO0VkMHZCRjs7RWM1dkJBO0lBQ0U7SUFDQTtFZCt2QkY7O0VjandCQTtJQUNFO0lBQ0E7RWRvd0JGOztFZ0J2eEJJO0lGQ0o7SUFDQTtJQUNBO0VkMHhCQTs7RWdCdnhCUTtJRmJSO0lBSUE7RWRxeUJBOztFZ0I1eEJRO0lGYlI7SUFJQTtFZDB5QkE7O0VnQmp5QlE7SUZiUjtJQUlBO0VkK3lCQTs7RWdCdHlCUTtJRmJSO0lBSUE7RWRvekJBOztFZ0IzeUJRO0lGYlI7SUFJQTtFZHl6QkE7O0VnQmh6QlE7SUZiUjtJQUlBO0VkOHpCQTs7RWdCcnpCUTtJRmJSO0lBSUE7RWRtMEJBOztFZ0IxekJRO0lGYlI7SUFJQTtFZHcwQkE7O0VnQi96QlE7SUZiUjtJQUlBO0VkNjBCQTs7RWdCcDBCUTtJRmJSO0lBSUE7RWRrMUJBOztFZ0J6MEJRO0lGYlI7SUFJQTtFZHUxQkE7O0VnQjkwQlE7SUZiUjtJQUlBO0VkNDFCQTs7RWdCNzBCSTtJQUF3QjtFaEJpMUI1Qjs7RWdCLzBCSTtJQUF1QjtFaEJtMUIzQjs7RWdCaDFCTTtJQUF3QixRQURiO0VoQnExQmpCOztFZ0JwMUJNO0lBQXdCLFFBRGI7RWhCeTFCakI7O0VnQngxQk07SUFBd0IsUUFEYjtFaEI2MUJqQjs7RWdCNTFCTTtJQUF3QixRQURiO0VoQmkyQmpCOztFZ0JoMkJNO0lBQXdCLFFBRGI7RWhCcTJCakI7O0VnQnAyQk07SUFBd0IsUUFEYjtFaEJ5MkJqQjs7RWdCeDJCTTtJQUF3QixRQURiO0VoQjYyQmpCOztFZ0I1MkJNO0lBQXdCLFFBRGI7RWhCaTNCakI7O0VnQmgzQk07SUFBd0IsUUFEYjtFaEJxM0JqQjs7RWdCcDNCTTtJQUF3QixRQURiO0VoQnkzQmpCOztFZ0J4M0JNO0lBQXdCLFNBRGI7RWhCNjNCakI7O0VnQjUzQk07SUFBd0IsU0FEYjtFaEJpNEJqQjs7RWdCaDRCTTtJQUF3QixTQURiO0VoQnE0QmpCOztFZ0I3M0JVO0lGaEJWO0VkaTVCQTs7RWdCajRCVTtJRmhCVjtFZHE1QkE7O0VnQnI0QlU7SUZoQlY7RWR5NUJBOztFZ0J6NEJVO0lGaEJWO0VkNjVCQTs7RWdCNzRCVTtJRmhCVjtFZGk2QkE7O0VnQmo1QlU7SUZoQlY7RWRxNkJBOztFZ0JyNUJVO0lGaEJWO0VkeTZCQTs7RWdCejVCVTtJRmhCVjtFZDY2QkE7O0VnQjc1QlU7SUZoQlY7RWRpN0JBOztFZ0JqNkJVO0lGaEJWO0VkcTdCQTs7RWdCcjZCVTtJRmhCVjtFZHk3QkE7O0VnQno2QlU7SUZoQlY7RWQ2N0JBO0FBQ0Y7QWV6N0JJO0VDM0JFO0lBQ0U7SUFDQTtJQUNBO0VoQnU5Qk47O0VjMzdCQTtJQUNFO0lBQ0E7RWQ4N0JGOztFY2g4QkE7SUFDRTtJQUNBO0VkbThCRjs7RWNyOEJBO0lBQ0U7SUFDQTtFZHc4QkY7O0VjMThCQTtJQUNFO0lBQ0E7RWQ2OEJGOztFYy84QkE7SUFDRTtJQUNBO0VkazlCRjs7RWNwOUJBO0lBQ0U7SUFDQTtFZHU5QkY7O0VnQjErQkk7SUZDSjtJQUNBO0lBQ0E7RWQ2K0JBOztFZ0IxK0JRO0lGYlI7SUFJQTtFZHcvQkE7O0VnQi8rQlE7SUZiUjtJQUlBO0VkNi9CQTs7RWdCcC9CUTtJRmJSO0lBSUE7RWRrZ0NBOztFZ0J6L0JRO0lGYlI7SUFJQTtFZHVnQ0E7O0VnQjkvQlE7SUZiUjtJQUlBO0VkNGdDQTs7RWdCbmdDUTtJRmJSO0lBSUE7RWRpaENBOztFZ0J4Z0NRO0lGYlI7SUFJQTtFZHNoQ0E7O0VnQjdnQ1E7SUZiUjtJQUlBO0VkMmhDQTs7RWdCbGhDUTtJRmJSO0lBSUE7RWRnaUNBOztFZ0J2aENRO0lGYlI7SUFJQTtFZHFpQ0E7O0VnQjVoQ1E7SUZiUjtJQUlBO0VkMGlDQTs7RWdCamlDUTtJRmJSO0lBSUE7RWQraUNBOztFZ0JoaUNJO0lBQXdCO0VoQm9pQzVCOztFZ0JsaUNJO0lBQXVCO0VoQnNpQzNCOztFZ0JuaUNNO0lBQXdCLFFBRGI7RWhCd2lDakI7O0VnQnZpQ007SUFBd0IsUUFEYjtFaEI0aUNqQjs7RWdCM2lDTTtJQUF3QixRQURiO0VoQmdqQ2pCOztFZ0IvaUNNO0lBQXdCLFFBRGI7RWhCb2pDakI7O0VnQm5qQ007SUFBd0IsUUFEYjtFaEJ3akNqQjs7RWdCdmpDTTtJQUF3QixRQURiO0VoQjRqQ2pCOztFZ0IzakNNO0lBQXdCLFFBRGI7RWhCZ2tDakI7O0VnQi9qQ007SUFBd0IsUUFEYjtFaEJva0NqQjs7RWdCbmtDTTtJQUF3QixRQURiO0VoQndrQ2pCOztFZ0J2a0NNO0lBQXdCLFFBRGI7RWhCNGtDakI7O0VnQjNrQ007SUFBd0IsU0FEYjtFaEJnbENqQjs7RWdCL2tDTTtJQUF3QixTQURiO0VoQm9sQ2pCOztFZ0JubENNO0lBQXdCLFNBRGI7RWhCd2xDakI7O0VnQmhsQ1U7SUZoQlY7RWRvbUNBOztFZ0JwbENVO0lGaEJWO0Vkd21DQTs7RWdCeGxDVTtJRmhCVjtFZDRtQ0E7O0VnQjVsQ1U7SUZoQlY7RWRnbkNBOztFZ0JobUNVO0lGaEJWO0Vkb25DQTs7RWdCcG1DVTtJRmhCVjtFZHduQ0E7O0VnQnhtQ1U7SUZoQlY7RWQ0bkNBOztFZ0I1bUNVO0lGaEJWO0VkZ29DQTs7RWdCaG5DVTtJRmhCVjtFZG9vQ0E7O0VnQnBuQ1U7SUZoQlY7RWR3b0NBOztFZ0J4bkNVO0lGaEJWO0VkNG9DQTs7RWdCNW5DVTtJRmhCVjtFZGdwQ0E7QUFDRjtBZTVvQ0k7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RWhCMHFDTjs7RWM5b0NBO0lBQ0U7SUFDQTtFZGlwQ0Y7O0VjbnBDQTtJQUNFO0lBQ0E7RWRzcENGOztFY3hwQ0E7SUFDRTtJQUNBO0VkMnBDRjs7RWM3cENBO0lBQ0U7SUFDQTtFZGdxQ0Y7O0VjbHFDQTtJQUNFO0lBQ0E7RWRxcUNGOztFY3ZxQ0E7SUFDRTtJQUNBO0VkMHFDRjs7RWdCN3JDSTtJRkNKO0lBQ0E7SUFDQTtFZGdzQ0E7O0VnQjdyQ1E7SUZiUjtJQUlBO0VkMnNDQTs7RWdCbHNDUTtJRmJSO0lBSUE7RWRndENBOztFZ0J2c0NRO0lGYlI7SUFJQTtFZHF0Q0E7O0VnQjVzQ1E7SUZiUjtJQUlBO0VkMHRDQTs7RWdCanRDUTtJRmJSO0lBSUE7RWQrdENBOztFZ0J0dENRO0lGYlI7SUFJQTtFZG91Q0E7O0VnQjN0Q1E7SUZiUjtJQUlBO0VkeXVDQTs7RWdCaHVDUTtJRmJSO0lBSUE7RWQ4dUNBOztFZ0JydUNRO0lGYlI7SUFJQTtFZG12Q0E7O0VnQjF1Q1E7SUZiUjtJQUlBO0Vkd3ZDQTs7RWdCL3VDUTtJRmJSO0lBSUE7RWQ2dkNBOztFZ0JwdkNRO0lGYlI7SUFJQTtFZGt3Q0E7O0VnQm52Q0k7SUFBd0I7RWhCdXZDNUI7O0VnQnJ2Q0k7SUFBdUI7RWhCeXZDM0I7O0VnQnR2Q007SUFBd0IsUUFEYjtFaEIydkNqQjs7RWdCMXZDTTtJQUF3QixRQURiO0VoQit2Q2pCOztFZ0I5dkNNO0lBQXdCLFFBRGI7RWhCbXdDakI7O0VnQmx3Q007SUFBd0IsUUFEYjtFaEJ1d0NqQjs7RWdCdHdDTTtJQUF3QixRQURiO0VoQjJ3Q2pCOztFZ0Ixd0NNO0lBQXdCLFFBRGI7RWhCK3dDakI7O0VnQjl3Q007SUFBd0IsUUFEYjtFaEJteENqQjs7RWdCbHhDTTtJQUF3QixRQURiO0VoQnV4Q2pCOztFZ0J0eENNO0lBQXdCLFFBRGI7RWhCMnhDakI7O0VnQjF4Q007SUFBd0IsUUFEYjtFaEIreENqQjs7RWdCOXhDTTtJQUF3QixTQURiO0VoQm15Q2pCOztFZ0JseUNNO0lBQXdCLFNBRGI7RWhCdXlDakI7O0VnQnR5Q007SUFBd0IsU0FEYjtFaEIyeUNqQjs7RWdCbnlDVTtJRmhCVjtFZHV6Q0E7O0VnQnZ5Q1U7SUZoQlY7RWQyekNBOztFZ0IzeUNVO0lGaEJWO0VkK3pDQTs7RWdCL3lDVTtJRmhCVjtFZG0wQ0E7O0VnQm56Q1U7SUZoQlY7RWR1MENBOztFZ0J2ekNVO0lGaEJWO0VkMjBDQTs7RWdCM3pDVTtJRmhCVjtFZCswQ0E7O0VnQi96Q1U7SUZoQlY7RWRtMUNBOztFZ0JuMENVO0lGaEJWO0VkdTFDQTs7RWdCdjBDVTtJRmhCVjtFZDIxQ0E7O0VnQjMwQ1U7SUZoQlY7RWQrMUNBOztFZ0IvMENVO0lGaEJWO0VkbTJDQTtBQUNGO0FlLzFDSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFaEI2M0NOOztFY2oyQ0E7SUFDRTtJQUNBO0VkbzJDRjs7RWN0MkNBO0lBQ0U7SUFDQTtFZHkyQ0Y7O0VjMzJDQTtJQUNFO0lBQ0E7RWQ4MkNGOztFY2gzQ0E7SUFDRTtJQUNBO0VkbTNDRjs7RWNyM0NBO0lBQ0U7SUFDQTtFZHczQ0Y7O0VjMTNDQTtJQUNFO0lBQ0E7RWQ2M0NGOztFZ0JoNUNJO0lGQ0o7SUFDQTtJQUNBO0VkbTVDQTs7RWdCaDVDUTtJRmJSO0lBSUE7RWQ4NUNBOztFZ0JyNUNRO0lGYlI7SUFJQTtFZG02Q0E7O0VnQjE1Q1E7SUZiUjtJQUlBO0VkdzZDQTs7RWdCLzVDUTtJRmJSO0lBSUE7RWQ2NkNBOztFZ0JwNkNRO0lGYlI7SUFJQTtFZGs3Q0E7O0VnQno2Q1E7SUZiUjtJQUlBO0VkdTdDQTs7RWdCOTZDUTtJRmJSO0lBSUE7RWQ0N0NBOztFZ0JuN0NRO0lGYlI7SUFJQTtFZGk4Q0E7O0VnQng3Q1E7SUZiUjtJQUlBO0VkczhDQTs7RWdCNzdDUTtJRmJSO0lBSUE7RWQyOENBOztFZ0JsOENRO0lGYlI7SUFJQTtFZGc5Q0E7O0VnQnY4Q1E7SUZiUjtJQUlBO0VkcTlDQTs7RWdCdDhDSTtJQUF3QjtFaEIwOEM1Qjs7RWdCeDhDSTtJQUF1QjtFaEI0OEMzQjs7RWdCejhDTTtJQUF3QixRQURiO0VoQjg4Q2pCOztFZ0I3OENNO0lBQXdCLFFBRGI7RWhCazlDakI7O0VnQmo5Q007SUFBd0IsUUFEYjtFaEJzOUNqQjs7RWdCcjlDTTtJQUF3QixRQURiO0VoQjA5Q2pCOztFZ0J6OUNNO0lBQXdCLFFBRGI7RWhCODlDakI7O0VnQjc5Q007SUFBd0IsUUFEYjtFaEJrK0NqQjs7RWdCaitDTTtJQUF3QixRQURiO0VoQnMrQ2pCOztFZ0JyK0NNO0lBQXdCLFFBRGI7RWhCMCtDakI7O0VnQnorQ007SUFBd0IsUUFEYjtFaEI4K0NqQjs7RWdCNytDTTtJQUF3QixRQURiO0VoQmsvQ2pCOztFZ0JqL0NNO0lBQXdCLFNBRGI7RWhCcy9DakI7O0VnQnIvQ007SUFBd0IsU0FEYjtFaEIwL0NqQjs7RWdCei9DTTtJQUF3QixTQURiO0VoQjgvQ2pCOztFZ0J0L0NVO0lGaEJWO0VkMGdEQTs7RWdCMS9DVTtJRmhCVjtFZDhnREE7O0VnQjkvQ1U7SUZoQlY7RWRraERBOztFZ0JsZ0RVO0lGaEJWO0Vkc2hEQTs7RWdCdGdEVTtJRmhCVjtFZDBoREE7O0VnQjFnRFU7SUZoQlY7RWQ4aERBOztFZ0I5Z0RVO0lGaEJWO0Vka2lEQTs7RWdCbGhEVTtJRmhCVjtFZHNpREE7O0VnQnRoRFU7SUZoQlY7RWQwaURBOztFZ0IxaERVO0lGaEJWO0VkOGlEQTs7RWdCOWhEVTtJRmhCVjtFZGtqREE7O0VnQmxpRFU7SUZoQlY7RWRzakRBO0FBQ0Y7QWlCMW1EQTtFQUNFO0VBQ0EsbUJiaUlPO0VhaElQLGNiU1M7QUptbURYO0FpQnptREU7O0VBRUUsZ0Jia1YwQjtFYWpWMUI7RUFDQTtBakIybURKO0FpQnhtREU7RUFDRTtFQUNBO0FqQjBtREo7QWlCdm1ERTtFQUNFO0FqQnltREo7O0FpQi9sREU7O0VBRUUsZWI0VDBCO0FKc3lDOUI7O0FpQnpsREE7RUFDRTtBakI0bERGO0FpQjFsREU7O0VBRUU7QWpCNGxESjtBaUJ4bERJOztFQUVFO0FqQjBsRE47O0FpQnBsREU7Ozs7RUFJRTtBakJ1bERKOztBaUI5a0RFO0VBQ0UscUNid1IwQjtBSnl6QzlCOztBTWhwREU7RVcyRUksY2J2RUs7RWF3RUwsc0NiNlF3QjtBSjR6QzlCOztBa0IzcERJOzs7RUFHRSx5QkQyRitCO0FqQm1rRHJDO0FrQjFwRE07Ozs7RUFJRSxxQkRtRnlFO0FqQnlrRGpGOztBTWpxREU7RVlpQk0seUJBSmU7QWxCd3BEdkI7QWtCbHBEUTs7RUFFRSx5QkFSYTtBbEI0cER2Qjs7QWtCL3FESTs7O0VBR0UseUJEMkYrQjtBakJ1bERyQztBa0I5cURNOzs7O0VBSUUscUJEbUZ5RTtBakI2bERqRjs7QU1yckRFO0VZaUJNLHlCQUplO0FsQjRxRHZCO0FrQnRxRFE7O0VBRUUseUJBUmE7QWxCZ3JEdkI7O0FrQm5zREk7OztFQUdFLHlCRDJGK0I7QWpCMm1EckM7QWtCbHNETTs7OztFQUlFLHFCRG1GeUU7QWpCaW5EakY7O0FNenNERTtFWWlCTSx5QkFKZTtBbEJnc0R2QjtBa0IxckRROztFQUVFLHlCQVJhO0FsQm9zRHZCOztBa0J2dERJOzs7RUFHRSx5QkQyRitCO0FqQituRHJDO0FrQnR0RE07Ozs7RUFJRSxxQkRtRnlFO0FqQnFvRGpGOztBTTd0REU7RVlpQk0seUJBSmU7QWxCb3REdkI7QWtCOXNEUTs7RUFFRSx5QkFSYTtBbEJ3dER2Qjs7QWtCM3VESTs7O0VBR0UseUJEMkYrQjtBakJtcERyQztBa0IxdURNOzs7O0VBSUUscUJEbUZ5RTtBakJ5cERqRjs7QU1qdkRFO0VZaUJNLHlCQUplO0FsQnd1RHZCO0FrQmx1RFE7O0VBRUUseUJBUmE7QWxCNHVEdkI7O0FrQi92REk7OztFQUdFLHlCRDJGK0I7QWpCdXFEckM7QWtCOXZETTs7OztFQUlFLHFCRG1GeUU7QWpCNnFEakY7O0FNcndERTtFWWlCTSx5QkFKZTtBbEI0dkR2QjtBa0J0dkRROztFQUVFLHlCQVJhO0FsQmd3RHZCOztBa0JueERJOzs7RUFHRSx5QkQyRitCO0FqQjJyRHJDO0FrQmx4RE07Ozs7RUFJRSxxQkRtRnlFO0FqQmlzRGpGOztBTXp4REU7RVlpQk0seUJBSmU7QWxCZ3hEdkI7QWtCMXdEUTs7RUFFRSx5QkFSYTtBbEJveER2Qjs7QWtCdnlESTs7O0VBR0UseUJEMkYrQjtBakIrc0RyQztBa0J0eURNOzs7O0VBSUUscUJEbUZ5RTtBakJxdERqRjs7QU03eURFO0VZaUJNLHlCQUplO0FsQm95RHZCO0FrQjl4RFE7O0VBRUUseUJBUmE7QWxCd3lEdkI7O0FrQjN6REk7OztFQUdFLHNDZDRWd0I7QUprK0M5Qjs7QU0zekRFO0VZaUJNLHNDQUplO0FsQmt6RHZCO0FrQjV5RFE7O0VBRUUsc0NBUmE7QWxCc3pEdkI7O0FpQjl0REk7RUFDRSxXYjNHSztFYTRHTCx5QmJwR0s7RWFxR0wscUJiZ1F3QjtBSmkrQzlCO0FpQjV0REk7RUFDRSxjYjVHSztFYTZHTCx5QmJsSEs7RWFtSEwscUJibEhLO0FKZzFEWDs7QWlCenREQTtFQUNFLFdiM0hTO0VhNEhULHlCYnBIUztBSmcxRFg7QWlCMXRERTs7O0VBR0UscUJiNE8wQjtBSmcvQzlCO0FpQnp0REU7RUFDRTtBakIydERKO0FpQnZ0REk7RUFDRSwyQ2JnT3dCO0FKeS9DOUI7QU05MURFO0VXNElNLFdiakpHO0Vha0pILDRDYjBOc0I7QUoyL0M5Qjs7QWVyeURJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RWpCdXNETjtFaUJwc0RNO0lBQ0U7RWpCc3NEUjtBQUNGO0FlanpESTtFRWlHQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0VqQmt0RE47RWlCL3NETTtJQUNFO0VqQml0RFI7QUFDRjtBZTV6REk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFakI2dEROO0VpQjF0RE07SUFDRTtFakI0dERSO0FBQ0Y7QWV2MERJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RWpCd3VETjtFaUJydURNO0lBQ0U7RWpCdXVEUjtBQUNGO0FpQmp2REk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBakJrdkRSO0FpQi91RFE7RUFDRTtBakJpdkRWOztBbUI5NURBO0VBQ0U7RUFDQTtFQUNBLG1DZjBlc0M7RWV6ZXRDO0VkcUhJLGVBdENhO0VjNUVqQixnQmZrUjRCO0VlalI1QixnQmZzUjRCO0VlclI1QixjZkRTO0VlRVQsc0JmVFM7RWVVVDtFQUNBO0VSQUU7RVNGRSx3RURRSjtBbkI0NURGO0FvQmg2RE07RURkTjtJQ2VRO0VwQm02RE47QUFDRjtBbUI5NURFO0VBQ0U7RUFDQTtBbkJnNkRKO0FtQjU1REU7RUFDRTtFQUNBO0FuQjg1REo7QXFCcDdERTtFQUNFO0VBQ0Esc0JqQlJPO0VpQlNQLHFCakJxZG9DO0VpQnBkcEM7RUFLRSxnRGpCb1h3QjtBSjhqRDlCO0FtQjk1REU7RUFDRSxjZjlCTztFZWdDUDtBbkIrNURKO0FtQnY1REU7RUFFRSx5QmY5Q087RWVnRFA7QW5CdTVESjs7QW1CLzRERTs7OztFQUNFO0FuQnE1REo7O0FtQmg1REU7RUFNRSxjZi9ETztFZWdFUCxzQmZ2RU87QUpxOURYOztBbUJ6NERBOztFQUVFO0VBQ0E7QW5CNDRERjs7QW1CbDREQTtFQUNFO0VBQ0E7RUFDQTtFZDNCRTtFYzZCRixnQmYrTDRCO0FKc3NEOUI7O0FtQmw0REE7RUFDRTtFQUNBO0VkcUJJLGtCQXRDYTtFY21CakIsZ0JmNkg0QjtBSnd3RDlCOztBbUJsNERBO0VBQ0U7RUFDQTtFZGNJLG1CQXRDYTtFYzBCakIsZ0JmdUg0QjtBSjh3RDlCOztBbUI1M0RBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RWRESSxlQXRDYTtFY3lDakIsZ0Jma0s0QjtFZWpLNUIsY2ZuSFM7RWVvSFQ7RUFDQTtFQUNBO0FuQiszREY7QW1CNzNERTtFQUVFO0VBQ0E7QW5CODNESjs7QW1CbDNEQTtFQUNFLGtDZjRWc0M7RWUzVnRDO0VkMUJJLG1CQXRDYTtFY2tFakIsZ0JmK0U0QjtFT3hOMUI7QVgrL0RKOztBbUJsM0RBO0VBQ0UsZ0NmcVZzQztFZXBWdEM7RWRsQ0ksa0JBdENhO0VjMEVqQixnQmZzRTRCO0VPdk4xQjtBWHVnRUo7O0FtQmgzREU7RUFFRTtBbkJrM0RKOztBbUI5MkRBO0VBQ0U7QW5CaTNERjs7QW1CejJEQTtFQUNFLG1CZjBVc0M7QUpraUR4Qzs7QW1CejJEQTtFQUNFO0VBQ0EsbUJmMlRzQztBSmlqRHhDOztBbUJwMkRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5CdTJERjtBbUJyMkRFOztFQUVFO0VBQ0E7QW5CdTJESjs7QW1COTFEQTtFQUNFO0VBQ0E7RUFDQSxxQmZnU3NDO0FKaWtEeEM7O0FtQjkxREE7RUFDRTtFQUNBLGtCZjRSc0M7RWUzUnRDO0FuQmkyREY7QW1COTFERTtFQUVFLGNmek5PO0FKd2pFWDs7QW1CMzFEQTtFQUNFO0FuQjgxREY7O0FtQjMxREE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxxQmY2UXNDO0FKaWxEeEM7QW1CMzFERTtFQUNFO0VBQ0E7RUFDQSx1QmZ3UW9DO0VldlFwQztBbkI2MURKOztBcUIxaUVFO0VBQ0U7RUFDQTtFQUNBLG1CakIwY29DO0VDamJwQztFZ0J2QkEsY0ZxTnFDO0FuQncxRHpDOztBcUIxaUVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFaEJtRUUsbUJBdENhO0VnQjNCZixnQmpCc08wQjtFaUJyTzFCO0VBQ0E7RVY5Q0E7QVg0bEVKOztBcUJ6aUVJOzs7O0VBRUU7QXJCOGlFTjs7QXFCcmxFSTtFQTZDRSxxQkZ5TG1DO0VFdExqQyxvQ2pCK1pnQztFaUI5WmhDO0VBQ0E7RUFDQTtFQUNBO0FyQjBpRVI7QXFCdmlFTTtFQUNFLHFCRjhLaUM7RUU3S2pDO0FyQnlpRVI7O0FxQmxtRUk7RUFrRUksb0NqQjZZZ0M7RWlCNVloQztBckJvaUVSOztBcUJ2bUVJO0VBMEVFLHFCRjRKbUM7RUV6SmpDLHVDakI4ZG9DO0VpQjdkcEM7QXJCK2hFUjtBcUI1aEVNO0VBQ0UscUJGb0ppQztFRW5KakM7QXJCOGhFUjs7QXFCdmhFTTtFQUNFLGNGMklpQztBbkIrNER6QztBcUJ2aEVNOzs7RUFFRTtBckIwaEVSOztBcUJuaEVNO0VBQ0UsY0Y4SGlDO0FuQnc1RHpDO0FxQnBoRVE7RUFDRSxxQkYySCtCO0FuQjI1RHpDO0FxQmpoRVE7RUFDRTtFQzNJTix5QkQ0STJCO0FyQm1oRS9CO0FxQjlnRVE7RUFDRTtBckJnaEVWO0FxQjdnRVE7RUFDRSxxQkFWcUI7QXJCeWhFL0I7O0FxQnRnRU07RUFDRSxxQkFwQnVCO0FyQjZoRS9CO0FxQnJnRVE7RUFDRSxxQkF6QnFCO0VBMEJyQjtBckJ1Z0VWOztBcUJ2b0VFO0VBQ0U7RUFDQTtFQUNBLG1CakIwY29DO0VDamJwQztFZ0J2QkEsY0ZxTnFDO0FuQnE3RHpDOztBcUJ2b0VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFaEJtRUUsbUJBdENhO0VnQjNCZixnQmpCc08wQjtFaUJyTzFCO0VBQ0E7RVY5Q0E7QVh5ckVKOztBcUJ0b0VJOzs7O0VBRUU7QXJCMm9FTjs7QXFCbHJFSTtFQTZDRSxxQkZ5TG1DO0VFdExqQyxvQ2pCK1pnQztFaUI5WmhDO0VBQ0E7RUFDQTtFQUNBO0FyQnVvRVI7QXFCcG9FTTtFQUNFLHFCRjhLaUM7RUU3S2pDO0FyQnNvRVI7O0FxQi9yRUk7RUFrRUksb0NqQjZZZ0M7RWlCNVloQztBckJpb0VSOztBcUJwc0VJO0VBMEVFLHFCRjRKbUM7RUV6SmpDLHVDakI4ZG9DO0VpQjdkcEM7QXJCNG5FUjtBcUJ6bkVNO0VBQ0UscUJGb0ppQztFRW5KakM7QXJCMm5FUjs7QXFCcG5FTTtFQUNFLGNGMklpQztBbkI0K0R6QztBcUJwbkVNOzs7RUFFRTtBckJ1bkVSOztBcUJobkVNO0VBQ0UsY0Y4SGlDO0FuQnEvRHpDO0FxQmpuRVE7RUFDRSxxQkYySCtCO0FuQncvRHpDO0FxQjltRVE7RUFDRTtFQzNJTix5QkQ0STJCO0FyQmduRS9CO0FxQjNtRVE7RUFDRTtBckI2bUVWO0FxQjFtRVE7RUFDRSxxQkFWcUI7QXJCc25FL0I7O0FxQm5tRU07RUFDRSxxQkFwQnVCO0FyQjBuRS9CO0FxQmxtRVE7RUFDRSxxQkF6QnFCO0VBMEJyQjtBckJvbUVWOztBbUI5L0RBO0VBQ0U7RUFDQTtFQUNBO0FuQmlnRUY7QW1CNS9ERTtFQUNFO0FuQjgvREo7QWU3dEVJO0VJb09BO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RW5CNC9ESjtFbUJ4L0RFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbkIwL0RKO0VtQnQvREU7SUFDRTtJQUNBO0lBQ0E7RW5Cdy9ESjtFbUJwL0RFO0lBQ0U7RW5Ccy9ESjtFbUJuL0RFOztJQUVFO0VuQnEvREo7RW1CaC9ERTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RW5Cay9ESjtFbUJoL0RFO0lBQ0U7SUFDQTtJQUNBO0lBQ0EscUJmK0trQztJZTlLbEM7RW5Cay9ESjtFbUIvK0RFO0lBQ0U7SUFDQTtFbkJpL0RKO0VtQi8rREU7SUFDRTtFbkJpL0RKO0FBQ0Y7O0F1Qm4wRUE7RUFDRTtFQUVBLGdCbkJzUjRCO0VtQnJSNUIsY25CTVM7RW1CTFQ7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQ3VGQTtFbkJ1QkksZUF0Q2E7RW1CaUJqQixnQnBCMEw0QjtFT2xSMUI7RVNGRSxxSUdHSjtBdkJzMEVGO0FvQnIwRU07RUdkTjtJSGVRO0VwQncwRU47QUFDRjtBTWwxRUU7RWlCVUUsY25CTk87RW1CT1A7QXZCMjBFSjtBdUJ4MEVFO0VBRUU7RUFDQSxnRG5CNlcwQjtBSjQ5RDlCO0F1QnIwRUU7RUFFRSxhbkJpWjBCO0FKcTdEOUI7QXVCbDBFRTtFQUNFO0F2Qm8wRUo7QXVCdHpFQTs7RUFFRTtBdkJ3ekVGOztBdUIveUVFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBSjB5RWY7QU0xMkVFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBeEJzM0V6RztBd0IxMkVFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0F4QnUyRU47QXdCbDJFRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBSjB6RWY7QXdCNTFFRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBeEJzNEU3TDtBd0J2MUVJO0VBS0k7QXhCcTFFUjs7QXVCNzBFRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUp3MEVmO0FNeDRFRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXhCbzVFekc7QXdCeDRFRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBeEJxNEVOO0F3Qmg0RUU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUp3MUVmO0F3QjEzRUU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXhCbzZFN0w7QXdCcjNFSTtFQUtJO0F4Qm0zRVI7O0F1QjMyRUU7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FKczJFZjtBTXQ2RUU7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0F4Qms3RXpHO0F3QnQ2RUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXhCbTZFTjtBd0I5NUVFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FKczNFZjtBd0J4NUVFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0F4Qms4RTdMO0F3Qm41RUk7RUFLSTtBeEJpNUVSOztBdUJ6NEVFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBSm80RWY7QU1wOEVFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBeEJnOUV6RztBd0JwOEVFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0F4Qmk4RU47QXdCNTdFRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBSm81RWY7QXdCdDdFRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBeEJnK0U3TDtBd0JqN0VJO0VBS0k7QXhCKzZFUjs7QXVCdjZFRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUprNkVmO0FNbCtFRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXhCOCtFekc7QXdCbCtFRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBeEIrOUVOO0F3QjE5RUU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUprN0VmO0F3QnA5RUU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXhCOC9FN0w7QXdCLzhFSTtFQUtJO0F4QjY4RVI7O0F1QnI4RUU7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FKZzhFZjtBTWhnRkU7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0F4QjRnRnpHO0F3QmhnRkU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXhCNi9FTjtBd0J4L0VFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FKZzlFZjtBd0JsL0VFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0F4QjRoRjdMO0F3QjcrRUk7RUFLSTtBeEIyK0VSOztBdUJuK0VFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBSjg5RWY7QU05aEZFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBeEIwaUZ6RztBd0I5aEZFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0F4QjJoRk47QXdCdGhGRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBSjgrRWY7QXdCaGhGRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBeEIwakY3TDtBd0IzZ0ZJO0VBS0k7QXhCeWdGUjs7QXVCamdGRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUo0L0VmO0FNNWpGRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXhCd2tGekc7QXdCNWpGRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBeEJ5akZOO0F3QnBqRkU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUo0Z0ZmO0F3QjlpRkU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXhCd2xGN0w7QXdCemlGSTtFQUtJO0F4QnVpRlI7O0F1QnpoRkU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUp5aEZmO0FNemxGRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBSjhoRmY7QXdCamlGRTtFQUVFO0F4QmtpRko7QXdCL2hGRTtFQUVFLGNwQkpXO0VvQktYO0F4QmdpRko7QXdCN2hGRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBSjBpRmY7QXdCM2hGSTtFQUtJO0F4QnloRlI7O0F1QmxqRkU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUprakZmO0FNbG5GRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBSnVqRmY7QXdCMWpGRTtFQUVFO0F4QjJqRko7QXdCeGpGRTtFQUVFLGNwQkpXO0VvQktYO0F4QnlqRko7QXdCdGpGRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBSm1rRmY7QXdCcGpGSTtFQUtJO0F4QmtqRlI7O0F1QjNrRkU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUoya0ZmO0FNM29GRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBSmdsRmY7QXdCbmxGRTtFQUVFO0F4Qm9sRko7QXdCamxGRTtFQUVFLGNwQkpXO0VvQktYO0F4QmtsRko7QXdCL2tGRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBSjRsRmY7QXdCN2tGSTtFQUtJO0F4QjJrRlI7O0F1QnBtRkU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUpvbUZmO0FNcHFGRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBSnltRmY7QXdCNW1GRTtFQUVFO0F4QjZtRko7QXdCMW1GRTtFQUVFLGNwQkpXO0VvQktYO0F4QjJtRko7QXdCeG1GRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBSnFuRmY7QXdCdG1GSTtFQUtJO0F4Qm9tRlI7O0F1QjduRkU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUo2bkZmO0FNN3JGRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBSmtvRmY7QXdCcm9GRTtFQUVFO0F4QnNvRko7QXdCbm9GRTtFQUVFLGNwQkpXO0VvQktYO0F4Qm9vRko7QXdCam9GRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBSjhvRmY7QXdCL25GSTtFQUtJO0F4QjZuRlI7O0F1QnRwRkU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUpzcEZmO0FNdHRGRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBSjJwRmY7QXdCOXBGRTtFQUVFO0F4QitwRko7QXdCNXBGRTtFQUVFLGNwQkpXO0VvQktYO0F4QjZwRko7QXdCMXBGRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBSnVxRmY7QXdCeHBGSTtFQUtJO0F4QnNwRlI7O0F1Qi9xRkU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUorcUZmO0FNL3VGRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBSm9yRmY7QXdCdnJGRTtFQUVFO0F4QndyRko7QXdCcnJGRTtFQUVFLGNwQkpXO0VvQktYO0F4QnNyRko7QXdCbnJGRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBSmdzRmY7QXdCanJGSTtFQUtJO0F4QitxRlI7O0F1QnhzRkU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUp3c0ZmO0FNeHdGRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBSjZzRmY7QXdCaHRGRTtFQUVFO0F4Qml0Rko7QXdCOXNGRTtFQUVFLGNwQkpXO0VvQktYO0F4QitzRko7QXdCNXNGRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBSnl0RmY7QXdCMXNGSTtFQUtJO0F4QndzRlI7O0F1QnR0RkE7RUFDRSxnQm5CNE00QjtFbUIzTTVCLGNuQjJGd0M7RW1CMUZ4QyxxQm5CMkZ3QztBSjhuRjFDO0FNbHlGRTtFaUI0RUUsY25CeUZzQztFbUJ4RnRDLDBCbkJ5RnNDO0FKZ29GMUM7QXVCdHRGRTtFQUVFLDBCbkJvRnNDO0FKbW9GMUM7QXVCcHRGRTtFQUVFLGNuQnRGTztFbUJ1RlA7QXZCcXRGSjs7QXVCMXNGQTtFQ1BFO0VuQnVCSSxrQkF0Q2E7RW1CaUJqQixnQnBCK0g0QjtFT3ZOMUI7QVg4eUZKOztBdUI3c0ZBO0VDWEU7RW5CdUJJLG1CQXRDYTtFbUJpQmpCLGdCcEJnSTRCO0VPeE4xQjtBWHF6Rko7O0F1QjNzRkE7RUFDRTtFQUNBO0F2QjhzRkY7QXVCM3NGRTtFQUNFLGtCbkJ1VDBCO0FKczVFOUI7O0F1QnJzRkU7OztFQUNFO0F2QjBzRko7O0F5QnIxRkE7RUxnQk0sZ0NLZko7QXpCdzFGRjtBb0JyMEZNO0VLcEJOO0lMcUJRO0VwQncwRk47QUFDRjtBeUIzMUZFO0VBQ0U7QXpCNjFGSjs7QXlCeDFGRTtFQUNFO0F6QjIxRko7O0F5QnYxRkE7RUFDRTtFQUNBO0VBQ0E7RUxESSw2QktFSjtBekIwMUZGO0FvQngxRk07RUtOTjtJTE9RO0VwQjIxRk47QUFDRjs7QTBCaDNGQTs7OztFQUlFO0ExQm0zRkY7O0EwQmgzRkE7RUFDRTtBMUJtM0ZGO0EyQi8xRkk7RUFDRTtFQUNBLG9CdkIrTndCO0V1QjlOeEIsdUJ2QjZOd0I7RXVCNU54QjtFQWhDSjtFQUNBO0VBQ0E7RUFDQTtBM0JrNEZGO0EyQjcwRkk7RUFDRTtBM0IrMEZOOztBMEJ6M0ZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXRCd3BCa0M7RXNCdnBCbEM7RUFDQTtFQUNBLGdCdEI4dEJrQztFc0I3dEJsQztFQUNBO0VyQnNHSSxlQXRDYTtFcUI5RGpCLGN0QlhTO0VzQllUO0VBQ0E7RUFDQSxzQnRCdkJTO0VzQndCVDtFQUNBO0VmZEU7QVgyNEZKOztBMEJwM0ZJO0VBQ0U7RUFDQTtBMUJ1M0ZOOztBMEJwM0ZJO0VBQ0U7RUFDQTtBMUJ1M0ZOOztBZTMyRkk7RVduQkE7SUFDRTtJQUNBO0UxQms0Rko7O0UwQi8zRkU7SUFDRTtJQUNBO0UxQms0Rko7QUFDRjtBZXYzRkk7RVduQkE7SUFDRTtJQUNBO0UxQjY0Rko7O0UwQjE0RkU7SUFDRTtJQUNBO0UxQjY0Rko7QUFDRjtBZWw0Rkk7RVduQkE7SUFDRTtJQUNBO0UxQnc1Rko7O0UwQnI1RkU7SUFDRTtJQUNBO0UxQnc1Rko7QUFDRjtBZTc0Rkk7RVduQkE7SUFDRTtJQUNBO0UxQm02Rko7O0UwQmg2RkU7SUFDRTtJQUNBO0UxQm02Rko7QUFDRjtBMEI1NUZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsdUJ0QjRyQmdDO0FKa3VFcEM7QTJCNzdGSTtFQUNFO0VBQ0Esb0J2QitOd0I7RXVCOU54Qix1QnZCNk53QjtFdUI1TnhCO0VBekJKO0VBQ0E7RUFDQTtFQUNBO0EzQnk5RkY7QTJCMzZGSTtFQUNFO0EzQjY2Rk47O0EwQmw2RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHFCdEI4cUJnQztBSnV2RXBDO0EyQmw5Rkk7RUFDRTtFQUNBLG9CdkIrTndCO0V1QjlOeEIsdUJ2QjZOd0I7RXVCNU54QjtFQWxCSjtFQUNBO0VBQ0E7RUFDQTtBM0J1K0ZGO0EyQmg4Rkk7RUFDRTtBM0JrOEZOO0EwQjc2Rkk7RUFDRTtBMUIrNkZOOztBMEJ6NkZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQnRCNnBCZ0M7QUord0VwQztBMkIxK0ZJO0VBQ0U7RUFDQSxvQnZCK053QjtFdUI5TnhCLHVCdkI2TndCO0V1QjVOeEI7QTNCNCtGTjtBMkJqK0ZNO0VBQ0U7QTNCbStGUjtBMkJoK0ZNO0VBQ0U7RUFDQSxxQnZCNE1zQjtFdUIzTXRCLHVCdkIwTXNCO0V1QnpNdEI7RUE5Qk47RUFDQTtFQUNBO0EzQmlnR0Y7QTJCaCtGSTtFQUNFO0EzQmsrRk47QTBCNTdGSTtFQUNFO0ExQjg3Rk47O0EwQnQ3RkU7RUFJRTtFQUNBO0ExQnM3Rko7O0EwQmo3RkE7RUU5R0U7RUFDQTtFQUNBO0VBQ0E7QTVCbWlHRjs7QTBCajdGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0J0QmdLNEI7RXNCL0o1QixjdEJoSFM7RXNCaUhUO0VBRUE7RUFDQTtFQUNBO0ExQm03RkY7QU14aUdFO0VvQm9JRSxjdEJpbkJnQztFc0JobkJoQztFSi9JQSx5QmxCRU87QUpxakdYO0EwQnA2RkU7RUFFRSxXdEJwSk87RXNCcUpQO0VKdEpBLHlCbEJvUDBCO0FKdzBGOUI7QTBCbDZGRTtFQUVFLGN0QnJKTztFc0JzSlA7RUFDQTtBMUJtNkZKOztBMEIzNUZBO0VBQ0U7QTFCODVGRjs7QTBCMTVGQTtFQUNFO0VBQ0Esc0J0QjhsQmtDO0VzQjdsQmxDO0VyQnJESSxtQkF0Q2E7RXFCNkZqQixjdEJ6S1M7RXNCMEtUO0ExQjY1RkY7O0EwQno1RkE7RUFDRTtFQUNBO0VBQ0EsY3RCOUtTO0FKMGtHWDs7QTZCdmxHQTs7RUFFRTtFQUNBO0VBQ0E7QTdCMGxHRjtBNkJ4bEdFOztFQUNFO0VBQ0E7QTdCMmxHSjtBTTFsR0U7O0V1QklJO0E3QjBsR047QTZCeGxHSTs7OztFQUdFO0E3QjJsR047O0E2QnJsR0E7RUFDRTtFQUNBO0VBQ0E7QTdCd2xHRjtBNkJ0bEdFO0VBQ0U7QTdCd2xHSjs7QTZCbGxHRTs7RUFFRTtBN0JxbEdKO0E2QmpsR0U7O0VsQlhFO0VBQ0E7QVhnbUdKO0E2QmpsR0U7O0VsQkZFO0VBQ0E7QVh1bEdKOztBNkJwa0dBO0VBQ0U7RUFDQTtBN0J1a0dGO0E2QnJrR0U7RUFHRTtBN0Jxa0dKO0E2QmxrR0U7RUFDRTtBN0Jva0dKOztBNkJoa0dBO0VBQ0U7RUFDQTtBN0Jta0dGOztBNkJoa0dBO0VBQ0U7RUFDQTtBN0Jta0dGOztBNkIvaUdBO0VBQ0U7RUFDQTtFQUNBO0E3QmtqR0Y7QTZCaGpHRTs7RUFFRTtBN0JrakdKO0E2Qi9pR0U7O0VBRUU7QTdCaWpHSjtBNkI3aUdFOztFbEJyRkU7RUFDQTtBWHNvR0o7QTZCN2lHRTs7RWxCeEdFO0VBQ0E7QVh5cEdKOztBNkI5aEdFOztFQUVFO0E3QmlpR0o7QTZCL2hHSTs7OztFQUVFO0VBQ0E7RUFDQTtBN0JtaUdOOztBOEI1ckdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUIrckdGO0E4QjdyR0U7Ozs7RUFJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QityR0o7QThCN3JHSTs7Ozs7Ozs7Ozs7O0VBR0U7QTlCd3NHTjtBOEJuc0dFOzs7RUFHRTtBOUJxc0dKO0E4QmpzR0U7RUFDRTtBOUJtc0dKO0E4QjlyR0k7O0VuQlZBO0VBQ0E7QVg0c0dKO0E4QmxzR0k7O0VuQkdBO0VBQ0E7QVhtc0dKO0E4QmxzR0U7RUFDRTtFQUNBO0E5Qm9zR0o7QThCbHNHSTtFbkJwQkE7RUFDQTtBWHl0R0o7QThCcHNHSTtFbkJSQTtFQUNBO0FYK3NHSjs7QThCN3JHQTs7RUFFRTtBOUJnc0dGO0E4QjNyR0U7O0VBQ0U7RUFDQTtBOUI4ckdKO0E4QjVyR0k7O0VBQ0U7QTlCK3JHTjtBOEIzckdFOzs7Ozs7OztFQUlFO0E5QmlzR0o7O0E4QjdyR0E7RUFBdUI7QTlCaXNHdkI7O0E4QmhzR0E7RUFBc0I7QTlCb3NHdEI7O0E4QjVyR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFekJ1QkksZUF0Q2E7RXlCaUJqQixnQjFCcUw0QjtFMEJwTDVCLGdCMUJ5TDRCO0UwQnhMNUIsYzFCOUZTO0UwQitGVDtFQUNBO0VBQ0EseUIxQnRHUztFMEJ1R1Q7RW5COUZFO0FYOHhHSjtBOEI1ckdFOztFQUVFO0E5QjhyR0o7O0E4QnByR0E7O0VBRUUsZ0MxQm1Yc0M7QUpvMEZ4Qzs7QThCcHJHQTs7Ozs7O0VBTUU7RXpCWkksa0JBdENhO0V5Qm9EakIsZ0IxQjRGNEI7RU92TjFCO0FYbXpHSjs7QThCcHJHQTs7RUFFRSxrQzFCaVdzQztBSnMxRnhDOztBOEJwckdBOzs7Ozs7RUFNRTtFekI3QkksbUJBdENhO0V5QnFFakIsZ0IxQjRFNEI7RU94TjFCO0FYbzBHSjs7QThCcHJHQTs7RUFFRTtBOUJ1ckdGOztBOEI1cUdBOzs7Ozs7RW5CN0lJO0VBQ0E7QVhrMEdKOztBOEI3cUdBOzs7Ozs7RW5CeElJO0VBQ0E7QVg4ekdKOztBK0J0MkdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvQnkyR0Y7O0ErQnQyR0E7RUFDRTtFQUNBLGtCM0J3ZnNDO0FKaTNGeEM7O0ErQnQyR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxXM0JvZnNDO0UyQm5mdEM7RUFDQTtBL0J5MkdGO0ErQnYyR0U7RUFDRSxXM0J6Qk87RTJCMEJQLHFCM0J5TjBCO0VrQnBQMUIseUJsQm9QMEI7QUppcEc5QjtBK0JyMkdFO0VBS0ksZ0QzQitWd0I7QUpvZ0c5QjtBK0IvMUdFO0VBQ0UscUIzQnFib0M7QUo0NkZ4QztBK0I5MUdFO0VBQ0UsVzNCN0NPO0UyQjhDUCx5QjNCaWY0QztFMkJoZjVDLHFCM0JnZjRDO0FKZzNGaEQ7QStCejFHSTtFQUNFLGMzQmpESztBSjQ0R1g7QStCejFHTTtFQUNFLHlCM0J4REc7QUptNUdYOztBK0JqMUdBO0VBQ0U7RUFDQTtFQUVBO0EvQm0xR0Y7QStCLzBHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzNCdWJvQztFMkJ0YnBDLFkzQnNib0M7RTJCcmJwQztFQUNBO0VBQ0Esc0IzQnJGTztFMkJzRlA7QS9CaTFHSjtBK0I1MEdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXM0J3YW9DO0UyQnZhcEMsWTNCdWFvQztFMkJ0YXBDO0VBQ0E7QS9CODBHSjs7QStCcDBHRTtFcEJsR0U7QVgwNkdKO0ErQm4wR0k7RUFDRTtBL0JxMEdOO0ErQmgwR0k7RUFDRSxxQjNCMEh3QjtFa0JwUDFCLHlCbEJvUDBCO0FKeXNHOUI7QStCL3pHSTtFQUNFO0EvQmkwR047QStCNXpHSTtFVHBJQSx3Q2xCd2hCNEM7QUoyNkZoRDtBK0I1ekdJO0VUdklBLHdDbEJ3aEI0QztBSjg2RmhEOztBK0JwekdFO0VBRUUsa0IzQnlaNEM7QUo2NUZoRDtBK0JsekdJO0VBQ0U7QS9Cb3pHTjtBK0IveUdJO0VUOUpBLHdDbEJ3aEI0QztBSnc3RmhEOztBK0J2eUdBO0VBQ0U7QS9CMHlHRjtBK0J2eUdJO0VBQ0U7RUFDQSxjM0JpWTBDO0UyQmhZMUM7RUFFQSxxQjNCK1gwQztBSnk2RmhEO0ErQnJ5R0k7RUFDRTtFQUNBO0VBQ0EsdUIzQjBYMEM7RTJCelgxQyx3QjNCeVgwQztFMkJ4WDFDLHlCM0JwTEs7RTJCc0xMLHFCM0JxWDBDO0VnQnZpQjFDLHlJV21MQTtBL0JzeUdOO0FvQnI5R007RVd1S0Y7SVh0S0k7RXBCdzlHTjtBQUNGO0ErQnR5R0k7RUFDRSxzQjNCbE1LO0UyQm1NTDtBL0J3eUdOO0ErQm55R0k7RVR6TUEsd0NsQndoQjRDO0FKdTlGaEQ7O0ErQnp4R0E7RUFDRTtFQUNBO0VBQ0EsbUMzQm9Sc0M7RTJCblJ0QztFMUJqR0ksZUF0Q2E7RTBCMElqQixnQjNCNEQ0QjtFMkIzRDVCLGdCM0JnRTRCO0UyQi9ENUIsYzNCdk5TO0UyQndOVDtFQUNBO0VBQ0E7RXBCdE5FO0VvQnlORjtBL0IweEdGO0ErQnh4R0U7RUFDRSxxQjNCdVBvQztFMkJ0UHBDO0VBS0UsZ0QzQmtXOEI7QUpvN0ZwQztBK0JueEdJO0VBTUUsYzNCL09LO0UyQmdQTCxzQjNCdlBLO0FKdWdIWDtBK0I1d0dFO0VBRUU7RUFDQSxzQjNCOEgwQjtFMkI3SDFCO0EvQjZ3R0o7QStCMXdHRTtFQUNFLGMzQjdQTztFMkI4UFAseUIzQmxRTztBSjhnSFg7QStCeHdHRTtFQUNFO0EvQjB3R0o7QStCdHdHRTtFQUNFO0VBQ0E7QS9Cd3dHSjs7QStCcHdHQTtFQUNFLGtDM0J5TnNDO0UyQnhOdEMsb0IzQmdINEI7RTJCL0c1Qix1QjNCK0c0QjtFMkI5RzVCLG9CM0IrRzRCO0VDOVF4QixtQkF0Q2E7QUw2OEduQjs7QStCcHdHQTtFQUNFLGdDM0JrTnNDO0UyQmpOdEMsbUIzQjZHNEI7RTJCNUc1QixzQjNCNEc0QjtFMkIzRzVCLGtCM0I0RzRCO0VDblJ4QixrQkF0Q2E7QUxxOUduQjs7QStCL3ZHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1DM0JnTXNDO0UyQi9MdEM7QS9Ca3dHRjs7QStCL3ZHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1DM0J3THNDO0UyQnZMdEM7RUFDQTtBL0Jrd0dGO0ErQmh3R0U7RUFDRSxxQjNCcUtvQztFMkJwS3BDLGdEM0J5RTBCO0FKeXJHOUI7QStCOXZHRTtFQUVFLHlCM0I5VE87QUo2akhYO0ErQjN2R0k7RUFDRSxpQjNCMlRhO0FKazhGbkI7QStCenZHRTtFQUNFO0EvQjJ2R0o7O0ErQnZ2R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUMzQndKc0M7RTJCdkp0QztFQUVBLGdCM0IvRDRCO0UyQmdFNUIsZ0IzQjNENEI7RTJCNEQ1QixjM0JsVlM7RTJCbVZULHNCM0IxVlM7RTJCMlZUO0VwQmhWRTtBWDBrSEo7QStCdHZHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDZCM0JrSW9DO0UyQmpJcEM7RUFDQSxnQjNCM0UwQjtFMkI0RTFCLGMzQmxXTztFMkJtV1A7RVQzV0EseUJsQkdPO0UyQjBXUDtFcEJqV0E7QVgwbEhKOztBK0I5dUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0JpdkdGO0ErQi91R0U7RUFDRTtBL0JpdkdKO0ErQjd1R0k7RUFBMEIsZ0UzQnFPZTtBSjJnRzdDO0ErQi91R0k7RUFBMEIsZ0UzQm9PZTtBSjhnRzdDO0ErQmp2R0k7RUFBMEIsZ0UzQm1PZTtBSmloRzdDO0ErQmp2R0U7RUFDRTtBL0JtdkdKO0ErQmh2R0U7RUFDRSxXM0JxTnlDO0UyQnBOekMsWTNCb055QztFMkJuTnpDO0VUaFpBLHlCbEJvUDBCO0UyQjhKMUIsUzNCb055QztFTzFsQnpDO0VTRkUsNEdXMllGO0VBQ0E7QS9CaXZHSjtBb0J6bkhNO0VXK1hKO0lYOVhNO0VwQjRuSE47QUFDRjtBK0JwdkdJO0VUeFpBLHlCbEIybUJ5QztBSm9pRzdDO0ErQmx2R0U7RUFDRSxXM0I4TGdDO0UyQjdMaEMsYzNCOExnQztFMkI3TGhDO0VBQ0EsZTNCNkxnQztFMkI1TGhDLHlCM0I5Wk87RTJCK1pQO0VwQnZaQTtBWDRvSEo7QStCaHZHRTtFQUNFLFczQjBMeUM7RTJCekx6QyxZM0J5THlDO0VrQm5tQnpDLHlCbEJvUDBCO0UyQndMMUIsUzNCMEx5QztFTzFsQnpDO0VTRkUsNEdXcWFGO0VBQ0E7QS9CaXZHSjtBb0JucEhNO0VXMFpKO0lYelpNO0VwQnNwSE47QUFDRjtBK0JwdkdJO0VUbGJBLHlCbEIybUJ5QztBSjhqRzdDO0ErQmx2R0U7RUFDRSxXM0JvS2dDO0UyQm5LaEMsYzNCb0tnQztFMkJuS2hDO0VBQ0EsZTNCbUtnQztFMkJsS2hDLHlCM0J4Yk87RTJCeWJQO0VwQmpiQTtBWHNxSEo7QStCaHZHRTtFQUNFLFczQmdLeUM7RTJCL0p6QyxZM0IrSnlDO0UyQjlKekM7RUFDQSxvQjNCcEUwQjtFMkJxRTFCLG1CM0JyRTBCO0VrQmxZMUIseUJsQm9QMEI7RTJCcU4xQixTM0I2SnlDO0VPMWxCekM7RVNGRSw0R1drY0Y7RUFDQTtBL0JpdkdKO0FvQmhySE07RVdvYko7SVhuYk07RXBCbXJITjtBQUNGO0ErQnB2R0k7RVQvY0EseUJsQjJtQnlDO0FKMmxHN0M7QStCbHZHRTtFQUNFLFczQnVJZ0M7RTJCdEloQyxjM0J1SWdDO0UyQnRJaEM7RUFDQSxlM0JzSWdDO0UyQnJJaEM7RUFDQTtFQUNBO0EvQm92R0o7QStCaHZHRTtFQUNFLHlCM0I1ZE87RU9RUDtBWHVzSEo7QStCL3VHRTtFQUNFO0VBQ0EseUIzQmxlTztFT1FQO0FYNHNISjtBK0I3dUdJO0VBQ0UseUIzQnRlSztBSnF0SFg7QStCNXVHSTtFQUNFO0EvQjh1R047QStCM3VHSTtFQUNFLHlCM0I5ZUs7QUoydEhYO0ErQjF1R0k7RUFDRTtBL0I0dUdOO0ErQnp1R0k7RUFDRSx5QjNCdGZLO0FKaXVIWDs7QStCdHVHQTs7O0VYdmZNLDRHVzBmSjtBL0J5dUdGO0FvQi90SE07RVdtZk47OztJWGxmUTtFcEJvdUhOO0FBQ0Y7O0FnQ3J2SEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3d2SEY7O0FnQ3J2SEE7RUFDRTtFQUNBO0FoQ3d2SEY7QU12dkhFO0UwQkdFO0FoQ3V2SEo7QWdDbnZIRTtFQUNFLGM1QlhPO0U0QllQO0VBQ0E7QWhDcXZISjs7QWdDN3VIQTtFQUNFO0FoQ2d2SEY7QWdDOXVIRTtFQUNFO0FoQ2d2SEo7QWdDN3VIRTtFQUNFO0VyQmZBO0VBQ0E7QVgrdkhKO0FNM3dIRTtFMEI4QkkscUM1QmdwQjhCO0FKZ21HcEM7QWdDN3VISTtFQUNFLGM1QnJDSztFNEJzQ0w7RUFDQTtBaEMrdUhOO0FnQzN1SEU7O0VBRUUsYzVCNUNPO0U0QjZDUCxzQjVCcERPO0U0QnFEUCxrQzVCcW9CZ0M7QUp3bUdwQztBZ0MxdUhFO0VBRUU7RXJCdENBO0VBQ0E7QVhreEhKOztBZ0NqdUhFO0VyQjNERTtBWGd5SEo7QWdDanVIRTs7RUFFRSxXNUI1RU87RTRCNkVQLHlCNUJzSzBCO0FKNmpIOUI7O0FnQ3p0SEU7O0VBRUU7RUFDQTtBaEM0dEhKOztBZ0N2dEhFOztFQUVFO0VBQ0E7RUFDQTtBaEMwdEhKOztBZ0NodEhFO0VBQ0U7QWhDbXRISjtBZ0NqdEhFO0VBQ0U7QWhDbXRISjs7QWlDMXpIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakM2ekhGO0FpQ3p6SEU7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FqQ2cwSEo7QWlDNXlIQTtFQUNFO0VBQ0Esc0I3QmlxQmtDO0U2QmhxQmxDLHlCN0JncUJrQztFNkIvcEJsQyxrQjdCZ0ZPO0VDUkgsa0JBdENhO0U0QmhDakI7RUFDQTtBakM4eUhGO0FNeDFIRTtFMkI2Q0U7QWpDOHlISjs7QWlDcnlIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDd3lIRjtBaUN0eUhFO0VBQ0U7RUFDQTtBakN3eUhKO0FpQ3J5SEU7RUFDRTtFQUNBO0FqQ3V5SEo7O0FpQzl4SEE7RUFDRTtFQUNBLG1CN0J3bEJrQztFNkJ2bEJsQyxzQjdCdWxCa0M7QUowc0dwQzs7QWlDcnhIQTtFQUNFO0VBQ0E7RUFHQTtBakNzeEhGOztBaUNseEhBO0VBQ0U7RTVCU0ksa0JBdENhO0U0QitCakI7RUFDQTtFQUNBO0V0QnhHRTtBWDgzSEo7QU1oNEhFO0UyQjhHRTtBakNxeEhKOztBaUMvd0hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDa3hIRjs7QWVwMUhJO0VrQjhFSTs7Ozs7O0lBQ0U7SUFDQTtFakMrd0hSO0FBQ0Y7QWU3MkhJO0VrQnlGQTtJQW9CSTtJQUNBO0VqQ293SE47RWlDbHdITTtJQUNFO0VqQ293SFI7RWlDbHdIUTtJQUNFO0VqQ293SFY7RWlDandIUTtJQUNFLHFCN0I0aEJ3QjtJNkIzaEJ4QixvQjdCMmhCd0I7RUp3dUdsQztFaUM5dkhNOzs7Ozs7SUFDRTtFakNxd0hSO0VpQ3Z2SE07SUFDRTtJQUdBO0VqQ3V2SFI7RWlDcHZITTtJQUNFO0VqQ3N2SFI7QUFDRjtBZS8zSEk7RWtCOEVJOzs7Ozs7SUFDRTtJQUNBO0VqQ3l6SFI7QUFDRjtBZXY1SEk7RWtCeUZBO0lBb0JJO0lBQ0E7RWpDOHlITjtFaUM1eUhNO0lBQ0U7RWpDOHlIUjtFaUM1eUhRO0lBQ0U7RWpDOHlIVjtFaUMzeUhRO0lBQ0UscUI3QjRoQndCO0k2QjNoQnhCLG9CN0IyaEJ3QjtFSmt4R2xDO0VpQ3h5SE07Ozs7OztJQUNFO0VqQyt5SFI7RWlDanlITTtJQUNFO0lBR0E7RWpDaXlIUjtFaUM5eEhNO0lBQ0U7RWpDZ3lIUjtBQUNGO0FlejZISTtFa0I4RUk7Ozs7OztJQUNFO0lBQ0E7RWpDbTJIUjtBQUNGO0FlajhISTtFa0J5RkE7SUFvQkk7SUFDQTtFakN3MUhOO0VpQ3QxSE07SUFDRTtFakN3MUhSO0VpQ3QxSFE7SUFDRTtFakN3MUhWO0VpQ3IxSFE7SUFDRSxxQjdCNGhCd0I7STZCM2hCeEIsb0I3QjJoQndCO0VKNHpHbEM7RWlDbDFITTs7Ozs7O0lBQ0U7RWpDeTFIUjtFaUMzMEhNO0lBQ0U7SUFHQTtFakMyMEhSO0VpQ3gwSE07SUFDRTtFakMwMEhSO0FBQ0Y7QWVuOUhJO0VrQjhFSTs7Ozs7O0lBQ0U7SUFDQTtFakM2NEhSO0FBQ0Y7QWUzK0hJO0VrQnlGQTtJQW9CSTtJQUNBO0VqQ2s0SE47RWlDaDRITTtJQUNFO0VqQ2s0SFI7RWlDaDRIUTtJQUNFO0VqQ2s0SFY7RWlDLzNIUTtJQUNFLHFCN0I0aEJ3QjtJNkIzaEJ4QixvQjdCMmhCd0I7RUpzMkdsQztFaUM1M0hNOzs7Ozs7SUFDRTtFakNtNEhSO0VpQ3IzSE07SUFDRTtJQUdBO0VqQ3EzSFI7RWlDbDNITTtJQUNFO0VqQ28zSFI7QUFDRjtBaUNqN0hJO0VBb0JJO0VBQ0E7QWpDZzZIUjtBaUNuN0hROzs7Ozs7RUFDRTtFQUNBO0FqQzA3SFY7QWlDdjZIUTtFQUNFO0FqQ3k2SFY7QWlDdjZIVTtFQUNFO0FqQ3k2SFo7QWlDdDZIVTtFQUNFLHFCN0I0aEJ3QjtFNkIzaEJ4QixvQjdCMmhCd0I7QUo2NEdwQztBaUNuNkhROzs7Ozs7RUFDRTtBakMwNkhWO0FpQzU1SFE7RUFDRTtFQUdBO0FqQzQ1SFY7QWlDejVIUTtFQUNFO0FqQzI1SFY7O0FpQzc0SEU7RUFDRSx5QjdCc2dCZ0M7QUowNEdwQztBTWhtSUU7RTJCbU5JLHlCN0JtZ0I4QjtBSjY0R3BDO0FpQzM0SEk7RUFDRSx5QjdCMmY4QjtBSms1R3BDO0FNdG1JRTtFMkI0Tk0seUI3QnlmNEI7QUpvNUdwQztBaUMxNEhNO0VBQ0UseUI3QnVmNEI7QUpxNUdwQztBaUN4NEhJOzs7O0VBSUUseUI3QjhlOEI7QUo0NUdwQztBaUN0NEhFO0VBQ0UseUI3QnVlZ0M7RTZCdGVoQyxnQzdCMmVnQztBSjY1R3BDO0FpQ3I0SEU7RUFDRTtBakN1NEhKO0FpQ3A0SEU7RUFDRSx5QjdCOGRnQztBSnc2R3BDO0FpQ3I0SEk7RUFDRSx5QjdCOGQ4QjtBSnk2R3BDO0FNL25JRTtFMkIyUE0seUI3QjJkNEI7QUo0NkdwQzs7QWlDLzNIRTtFQUNFLFc3QjdRTztBSitvSVg7QU10b0lFO0UyQnVRSSxXN0JoUks7QUprcElYO0FpQzczSEk7RUFDRSwrQjdCZ2M4QjtBSis3R3BDO0FNNW9JRTtFMkJnUk0sZ0M3QjhiNEI7QUppOEdwQztBaUM1M0hNO0VBQ0UsZ0M3QjRiNEI7QUprOEdwQztBaUMxM0hJOzs7O0VBSUUsVzdCclNLO0FKaXFJWDtBaUN4M0hFO0VBQ0UsK0I3QjRhZ0M7RTZCM2FoQyxzQzdCZ2JnQztBSjA4R3BDO0FpQ3YzSEU7RUFDRTtBakN5M0hKO0FpQ3QzSEU7RUFDRSwrQjdCbWFnQztBSnE5R3BDO0FpQ3YzSEk7RUFDRSxXN0JyVEs7QUo4cUlYO0FNcnFJRTtFMkIrU00sVzdCeFRHO0FKaXJJWDs7QWtDcHJJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxzQjlCSlM7RThCS1Q7RUFDQTtFdkJLRTtBWGtySUo7QWtDcHJJRTtFQUNFO0VBQ0E7QWxDc3JJSjtBa0NucklFO0VBQ0U7RUFDQTtBbENxcklKO0FrQ25ySUk7RUFDRTtFdkJDRjtFQUNBO0FYcXJJSjtBa0NucklJO0VBQ0U7RXZCVUY7RUFDQTtBWDRxSUo7QWtDaHJJRTs7RUFFRTtBbENrcklKOztBa0M5cUlBO0VBR0U7RUFHQTtFQUNBLGdCOUIwd0JrQztBSm02R3BDOztBa0N6cUlBO0VBQ0Usc0I5Qm93QmtDO0FKdzZHcEM7O0FrQ3pxSUE7RUFDRTtFQUNBO0FsQzRxSUY7O0FrQ3pxSUE7RUFDRTtBbEM0cUlGOztBTWp1SUU7RTRCMERFO0FsQzJxSUo7QWtDeHFJRTtFQUNFLG9COUJtdkJnQztBSnU3R3BDOztBa0NscUlBO0VBQ0U7RUFDQTtFQUVBLHFDOUI0dUJrQztFOEIzdUJsQztBbENvcUlGO0FrQ2xxSUU7RXZCdkVFO0FYNHVJSjs7QWtDaHFJQTtFQUNFO0VBRUEscUM5Qml1QmtDO0U4Qmh1QmxDO0FsQ2txSUY7QWtDaHFJRTtFdkJsRkU7QVhxdklKOztBa0N6cElBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxDNHBJRjs7QWtDenBJQTtFQUNFO0VBQ0E7QWxDNHBJRjs7QWtDeHBJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQjlCdXNCa0M7RU90ekJoQztBWDJ3SUo7O0FrQ3hwSUE7OztFQUdFO0VBQ0E7QWxDMnBJRjs7QWtDeHBJQTs7RXZCakhJO0VBQ0E7QVg4d0lKOztBa0N6cElBOztFdkJ4R0k7RUFDQTtBWHN3SUo7O0FrQ3RwSUU7RUFDRSxtQjlCK3FCZ0M7QUowK0dwQztBZXh2SUk7RW1CNkZKO0lBTUk7SUFDQTtJQUNBO0lBQ0E7RWxDeXBJRjtFa0N2cElFO0lBRUU7SUFDQSxrQjlCbXFCOEI7SThCbHFCOUI7SUFDQSxpQjlCaXFCOEI7RUp1L0dsQztBQUNGOztBa0M1b0lFO0VBQ0UsbUI5Qm1wQmdDO0FKNC9HcEM7QWUxd0lJO0VtQnVISjtJQVFJO0lBQ0E7RWxDK29JRjtFa0M1b0lFO0lBRUU7SUFDQTtFbEM2b0lKO0VrQzNvSUk7SUFDRTtJQUNBO0VsQzZvSU47RWtDeG9JTTtJdkJ6S0o7SUFDQTtFWG96SUY7RWtDem9JUTs7SUFHRTtFbEMwb0lWO0VrQ3hvSVE7O0lBR0U7RWxDeW9JVjtFa0Nyb0lNO0l2QjFLSjtJQUNBO0VYa3pJRjtFa0N0b0lROztJQUdFO0VsQ3VvSVY7RWtDcm9JUTs7SUFHRTtFbENzb0lWO0FBQ0Y7O0FrQ3puSUU7RUFDRSxzQjlCd2tCZ0M7QUpvakhwQztBZXB6SUk7RW1Cc0xKO0lBTUksZTlCcWxCZ0M7SThCcGxCaEMsbUI5QnFsQmdDO0k4QnBsQmhDO0lBQ0E7RWxDNG5JRjtFa0MxbklFO0lBQ0U7SUFDQTtFbEM0bklKO0FBQ0Y7O0FrQ25uSUE7RUFDRTtBbENzbklGO0FrQ3BuSUU7RUFDRTtBbENzbklKO0FrQ3BuSUk7RUFDRTtFdkJ2T0Y7RUFDQTtBWDgxSUo7QWtDcG5JSTtFdkJ6UEE7RUFDQTtBWGczSUo7QWtDcG5JSTtFdkJ0UUE7RXVCd1FFO0FsQ3NuSU47O0FtQ2g1SUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQi9CK2hDa0M7RStCN2hDbEM7RUFDQSx5Qi9CRVM7RU9TUDtBWHc0SUo7O0FtQy80SUE7RUFDRTtBbkNrNUlGO0FtQy80SUU7RUFDRSxvQi9CaWhDZ0M7QUpnNEdwQztBbUMvNElJO0VBQ0U7RUFDQSxxQi9CNmdDOEI7RStCNWdDOUIsYy9CUks7RStCU0w7QW5DaTVJTjtBbUN2NElFO0VBQ0U7QW5DeTRJSjtBbUN0NElFO0VBQ0U7QW5DdzRJSjtBbUNyNElFO0VBQ0UsYy9CNUJPO0FKbTZJWDs7QW9DaDdJQTtFQUNFO0U1QkdBO0VBQ0E7RUdhRTtBWHE2SUo7O0FvQ2o3SUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGlCaENpeEJrQztFZ0NoeEJsQyxjaENtS3dDO0VnQ2pLeEMsc0JoQ1BTO0VnQ1FUO0FwQ203SUY7QW9DajdJRTtFQUNFO0VBQ0EsY2hDOEpzQztFZ0M3SnRDO0VBQ0EseUJoQ1pPO0VnQ2FQLHFCaENaTztBSis3SVg7QW9DaDdJRTtFQUNFO0VBQ0EsVWhDeXdCZ0M7RWdDeHdCaEMsZ0RoQzhXMEI7QUpva0k5Qjs7QW9DNTZJSTtFQUNFO0V6QmFGO0VBQ0E7QVhtNklKO0FvQzU2SUk7RXpCTkE7RUFDQTtBWHE3SUo7QW9DMzZJRTtFQUNFO0VBQ0EsV2hDeENPO0VnQ3lDUCx5QmhDME0wQjtFZ0N6TTFCLHFCaEN5TTBCO0FKb3VJOUI7QW9DMTZJRTtFQUNFLGNoQ3hDTztFZ0N5Q1A7RUFFQTtFQUNBLHNCaENsRE87RWdDbURQLHFCaENoRE87QUoyOUlYOztBcUNsK0lFO0VBQ0U7RWhDMkhFLGtCQXRDYTtFZ0NuRmYsZ0JqQ21PMEI7QUprd0k5QjtBcUNoK0lNO0UxQnFDRjtFQUNBO0FYODdJSjtBcUMvOUlNO0UxQmtCRjtFQUNBO0FYZzlJSjs7QXFDaC9JRTtFQUNFO0VoQzJIRSxtQkF0Q2E7RWdDbkZmLGdCakNvTzBCO0FKK3dJOUI7QXFDOStJTTtFMUJxQ0Y7RUFDQTtBWDQ4SUo7QXFDNytJTTtFMUJrQkY7RUFDQTtBWDg5SUo7O0FzQzUvSUE7RUFDRTtFQUNBO0VqQ2lFRTtFaUMvREYsZ0JsQ3VSNEI7RWtDdFI1QjtFQUNBO0VBQ0E7RUFDQTtFM0JLRTtFU0ZFLHFJa0JESjtBdEMrL0lGO0FvQjEvSU07RWtCZk47SWxCZ0JRO0VwQjYvSU47QUFDRjtBTW5nSkU7RWdDR0k7QXRDbWdKTjs7QXNDOS9JRTtFQUNFO0F0Q2lnSko7O0FzQzUvSUE7RUFDRTtFQUNBO0F0QysvSUY7O0FzQ3gvSUE7RUFDRSxvQmxDMjNCa0M7RWtDMTNCbEMsbUJsQzAzQmtDO0VPajVCaEM7QVhtaEpKOztBc0NuL0lFO0VDakRBO0VBQ0EseUJuQzBFYTtBSjg5SWY7QU0xaEpFO0VpQ1ZJO0VBQ0E7QXZDdWlKTjtBdUNwaUpJO0VBRUU7RUFDQTtBdkNxaUpOOztBc0NoZ0pFO0VDakRBO0VBQ0EseUJuQzBFYTtBSjIrSWY7QU12aUpFO0VpQ1ZJO0VBQ0E7QXZDb2pKTjtBdUNqakpJO0VBRUU7RUFDQTtBdkNrakpOOztBc0M3Z0pFO0VDakRBO0VBQ0EseUJuQzBFYTtBSncvSWY7QU1wakpFO0VpQ1ZJO0VBQ0E7QXZDaWtKTjtBdUM5akpJO0VBRUU7RUFDQTtBdkMrakpOOztBc0MxaEpFO0VDakRBO0VBQ0EseUJuQzBFYTtBSnFnSmY7QU1qa0pFO0VpQ1ZJO0VBQ0E7QXZDOGtKTjtBdUMza0pJO0VBRUU7RUFDQTtBdkM0a0pOOztBc0N2aUpFO0VDakRBO0VBQ0EseUJuQzBFYTtBSmtoSmY7QU05a0pFO0VpQ1ZJO0VBQ0E7QXZDMmxKTjtBdUN4bEpJO0VBRUU7RUFDQTtBdkN5bEpOOztBc0NwakpFO0VDakRBO0VBQ0EseUJuQzBFYTtBSitoSmY7QU0zbEpFO0VpQ1ZJO0VBQ0E7QXZDd21KTjtBdUNybUpJO0VBRUU7RUFDQTtBdkNzbUpOOztBc0Nqa0pFO0VDakRBO0VBQ0EseUJuQzBFYTtBSjRpSmY7QU14bUpFO0VpQ1ZJO0VBQ0E7QXZDcW5KTjtBdUNsbkpJO0VBRUU7RUFDQTtBdkNtbkpOOztBc0M5a0pFO0VDakRBO0VBQ0EseUJuQzBFYTtBSnlqSmY7QU1ybkpFO0VpQ1ZJO0VBQ0E7QXZDa29KTjtBdUMvbkpJO0VBRUU7RUFDQTtBdkNnb0pOOztBd0M3b0pBO0VBQ0U7RUFDQSxtQnBDbXpCa0M7RW9DanpCbEMseUJwQ0tTO0VPU1A7QVhrb0pKO0FleGxKSTtFeUI1REo7SUFRSTtFeENncEpGO0FBQ0Y7O0F3QzdvSkE7RUFDRTtFQUNBO0U3QklFO0FYNm9KSjs7QXlDM3BKQTtFQUNFO0VBQ0E7RUFDQSxtQnJDbTlCa0M7RXFDbDlCbEM7RTlCVUU7QVhxcEpKOztBeUMxcEpBO0VBRUU7QXpDNHBKRjs7QXlDeHBKQTtFQUNFLGdCckM0UTRCO0FKKzRJOUI7O0F5Q25wSkE7RUFDRTtBekNzcEpGO0F5Q25wSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpDcXBKSjs7QXlDM29KRTtFQy9DQSxjRGdEcUg7RW5CM0NuSCx5Qm1CMkN1QjtFQzlDekIscUJEOENxRTtBekNncEp2RTtBMEM1ckpFO0VBQ0U7QTFDOHJKSjtBMEMzckpFO0VBQ0U7QTFDNnJKSjs7QXlDdnBKRTtFQy9DQSxjRGdEcUg7RW5CM0NuSCx5Qm1CMkN1QjtFQzlDekIscUJEOENxRTtBekM0cEp2RTtBMEN4c0pFO0VBQ0U7QTFDMHNKSjtBMEN2c0pFO0VBQ0U7QTFDeXNKSjs7QXlDbnFKRTtFQy9DQSxjRGdEcUg7RW5CM0NuSCx5Qm1CMkN1QjtFQzlDekIscUJEOENxRTtBekN3cUp2RTtBMENwdEpFO0VBQ0U7QTFDc3RKSjtBMENudEpFO0VBQ0U7QTFDcXRKSjs7QXlDL3FKRTtFQy9DQSxjRGdEcUg7RW5CM0NuSCx5Qm1CMkN1QjtFQzlDekIscUJEOENxRTtBekNvckp2RTtBMENodUpFO0VBQ0U7QTFDa3VKSjtBMEMvdEpFO0VBQ0U7QTFDaXVKSjs7QXlDM3JKRTtFQy9DQSxjRGdEcUg7RW5CM0NuSCx5Qm1CMkN1QjtFQzlDekIscUJEOENxRTtBekNnc0p2RTtBMEM1dUpFO0VBQ0U7QTFDOHVKSjtBMEMzdUpFO0VBQ0U7QTFDNnVKSjs7QXlDdnNKRTtFQy9DQSxjRGdEcUg7RW5CM0NuSCx5Qm1CMkN1QjtFQzlDekIscUJEOENxRTtBekM0c0p2RTtBMEN4dkpFO0VBQ0U7QTFDMHZKSjtBMEN2dkpFO0VBQ0U7QTFDeXZKSjs7QXlDbnRKRTtFQy9DQSxjRGdEcUg7RW5CM0NuSCx5Qm1CMkN1QjtFQzlDekIscUJEOENxRTtBekN3dEp2RTtBMENwd0pFO0VBQ0U7QTFDc3dKSjtBMENud0pFO0VBQ0U7QTFDcXdKSjs7QXlDL3RKRTtFQy9DQSxjRGdEcUg7RW5CM0NuSCx5Qm1CMkN1QjtFQzlDekIscUJEOENxRTtBekNvdUp2RTtBMENoeEpFO0VBQ0U7QTFDa3hKSjtBMEMvd0pFO0VBQ0U7QTFDaXhKSjs7QTJDenhKRTtFQUNFO0lBQU87RTNDNnhKVDtFMkM1eEpFO0lBQUs7RTNDK3hKUDtBQUNGO0EyQzV4SkE7RUFDRTtFQUNBLFl2QzQ5QmtDO0V1QzM5QmxDO0VBQ0E7RXRDbUhJLGtCQXRDYTtFc0MzRWpCLHlCdkNMUztFT1NQO0FYMnhKSjs7QTJDMXhKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV3ZDakJTO0V1Q2tCVDtFQUNBO0VBQ0EseUJ2Q2k5QmtDO0VnQjU5QjlCLDJCdUJZSjtBM0M2eEpGO0FvQnJ5Sk07RXVCRE47SXZCRVE7RXBCd3lKTjtBQUNGOztBMkMveEpBO0VyQllFO0VxQlZBO0EzQ2t5SkY7O0EyQzl4SkU7RUFDRTtBM0NpeUpKO0EyQzl4Sk07RUFKSjtJQUtNO0UzQ2l5Sk47QUFDRjs7QTRDNTBKQTtFQUNFO0VBQ0E7QTVDKzBKRjs7QTRDNTBKQTtFQUNFO0E1QyswSkY7O0E2Q2oxSkE7RUFDRTtFQUNBO0VBR0E7RUFDQTtFbENRRTtBWDIwSko7O0E2Q3owSkE7RUFDRTtFQUNBLGN6Q1JTO0V5Q1NUO0E3QzQwSkY7QU1uMUpFO0V1Q1dFO0VBQ0EsY3pDZE87RXlDZVA7RUFDQSx5QnpDdEJPO0FKaTJKWDtBNkN4MEpFO0VBQ0UsY3pDbEJPO0V5Q21CUCx5QnpDMUJPO0FKbzJKWDs7QTZDajBKQTtFQUNFO0VBQ0E7RUFDQTtFQUdBLHNCekMzQ1M7RXlDNENUO0E3Q2swSkY7QTZDaDBKRTtFbEMxQkU7RUFDQTtBWDYxSko7QTZDaDBKRTtFbENoQkU7RUFDQTtBWG0xSko7QTZDaDBKRTtFQUVFLGN6Q2xETztFeUNtRFA7RUFDQSxzQnpDMURPO0FKMjNKWDtBNkM3ekpFO0VBQ0U7RUFDQSxXekNoRU87RXlDaUVQLHlCekNrTDBCO0V5Q2pMMUIscUJ6Q2lMMEI7QUo4b0o5QjtBNkM1ekpFO0VBQ0U7QTdDOHpKSjtBNkM1ekpJO0VBQ0U7RUFDQSxxQnpDMkp3QjtBSm1xSjlCOztBNkNoekpJO0VBQ0U7QTdDbXpKTjtBNkNoekpRO0VsQzFCSjtFQVpBO0FYMDFKSjtBNkMveUpRO0VsQzNDSjtFQVlBO0FYazFKSjtBNkM5eUpRO0VBQ0U7QTdDZ3pKVjtBNkM3eUpRO0VBQ0UscUJ6QzBIb0I7RXlDekhwQjtBN0MreUpWO0E2Qzd5SlU7RUFDRTtFQUNBLHNCekNxSGtCO0FKMHJKOUI7O0FlMTJKSTtFOEJtQ0E7SUFDRTtFN0MyMEpKO0U2Q3gwSk07SWxDMUJKO0lBWkE7RVhrM0pGO0U2Q3YwSk07SWxDM0NKO0lBWUE7RVgwMkpGO0U2Q3QwSk07SUFDRTtFN0N3MEpSO0U2Q3IwSk07SUFDRSxxQnpDMEhvQjtJeUN6SHBCO0U3Q3UwSlI7RTZDcjBKUTtJQUNFO0lBQ0Esc0J6Q3FIa0I7RUprdEo1QjtBQUNGO0FlbjRKSTtFOEJtQ0E7SUFDRTtFN0NtMkpKO0U2Q2gySk07SWxDMUJKO0lBWkE7RVgwNEpGO0U2Qy8xSk07SWxDM0NKO0lBWUE7RVhrNEpGO0U2QzkxSk07SUFDRTtFN0NnMkpSO0U2QzcxSk07SUFDRSxxQnpDMEhvQjtJeUN6SHBCO0U3QysxSlI7RTZDNzFKUTtJQUNFO0lBQ0Esc0J6Q3FIa0I7RUowdUo1QjtBQUNGO0FlMzVKSTtFOEJtQ0E7SUFDRTtFN0MyM0pKO0U2Q3gzSk07SWxDMUJKO0lBWkE7RVhrNkpGO0U2Q3YzSk07SWxDM0NKO0lBWUE7RVgwNUpGO0U2Q3QzSk07SUFDRTtFN0N3M0pSO0U2Q3IzSk07SUFDRSxxQnpDMEhvQjtJeUN6SHBCO0U3Q3UzSlI7RTZDcjNKUTtJQUNFO0lBQ0Esc0J6Q3FIa0I7RUprd0o1QjtBQUNGO0FlbjdKSTtFOEJtQ0E7SUFDRTtFN0NtNUpKO0U2Q2g1Sk07SWxDMUJKO0lBWkE7RVgwN0pGO0U2Qy80Sk07SWxDM0NKO0lBWUE7RVhrN0pGO0U2Qzk0Sk07SUFDRTtFN0NnNUpSO0U2Qzc0Sk07SUFDRSxxQnpDMEhvQjtJeUN6SHBCO0U3Qys0SlI7RTZDNzRKUTtJQUNFO0lBQ0Esc0J6Q3FIa0I7RUoweEo1QjtBQUNGO0E2Q2w0SkE7RWxDbkhJO0FYdy9KSjtBNkNsNEpFO0VBQ0U7QTdDbzRKSjtBNkNsNEpJO0VBQ0U7QTdDbzRKTjs7QThDN2dLRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBN0M2M0ozQztBTXJnS0U7RXdDUE0sY0QrSWtFO0VDOUlsRTtBOUMrZ0tSO0E4QzVnS007RUFDRSxXMUNQRztFMENRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0E3Q3M0SjFFOztBOEMzaEtFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0E3QzI0SjNDO0FNbmhLRTtFd0NQTSxjRCtJa0U7RUM5SWxFO0E5QzZoS1I7QThDMWhLTTtFQUNFLFcxQ1BHO0UwQ1FILHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QTdDbzVKMUU7O0E4Q3ppS0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QTdDeTVKM0M7QU1qaUtFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QTlDMmlLUjtBOEN4aUtNO0VBQ0UsVzFDUEc7RTBDUUgseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBN0NrNkoxRTs7QThDdmpLRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBN0N1NkozQztBTS9pS0U7RXdDUE0sY0QrSWtFO0VDOUlsRTtBOUN5aktSO0E4Q3RqS007RUFDRSxXMUNQRztFMENRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0E3Q2c3SjFFOztBOENya0tFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0E3Q3E3SjNDO0FNN2pLRTtFd0NQTSxjRCtJa0U7RUM5SWxFO0E5Q3VrS1I7QThDcGtLTTtFQUNFLFcxQ1BHO0UwQ1FILHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QTdDODdKMUU7O0E4Q25sS0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QTdDbThKM0M7QU0za0tFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QTlDcWxLUjtBOENsbEtNO0VBQ0UsVzFDUEc7RTBDUUgseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBN0M0OEoxRTs7QThDam1LRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBN0NpOUozQztBTXpsS0U7RXdDUE0sY0QrSWtFO0VDOUlsRTtBOUNtbUtSO0E4Q2htS007RUFDRSxXMUNQRztFMENRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0E3QzA5SjFFOztBOEMvbUtFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0E3Qys5SjNDO0FNdm1LRTtFd0NQTSxjRCtJa0U7RUM5SWxFO0E5Q2luS1I7QThDOW1LTTtFQUNFLFcxQ1BHO0UwQ1FILHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QTdDdytKMUU7O0ErQ2hvS0E7RUFDRTtFMUM4SEksaUJBdENhO0UwQ3RGakIsZ0IzQzZSNEI7RTJDNVI1QjtFQUNBLFczQ1lTO0UyQ1hULHlCM0NrbENrQztFMkNqbENsQztBL0Ntb0tGO0FNOW5LRTtFeUNERSxXM0NNTztFMkNMUDtBL0Nrb0tKO0FNOW5LRTtFeUNDSTtBL0Nnb0tOOztBK0NybktBO0VBQ0U7RUFDQTtFQUNBO0EvQ3duS0Y7O0ErQ2xuS0E7RUFDRTtBL0NxbktGOztBZ0QzcEtBO0VBR0UsaUI1Q3E0QmtDO0U0Q3A0QmxDLGdCNUNvNEJrQztFQ3p3QjlCLG1CQXRDYTtFMkNsRmpCLDJDNUNzNEJrQztFNENyNEJsQztFQUNBO0VBQ0EsZ0Q1Q3U0QmtDO0U0Q3Q0QmxDO0VyQ09FO0FYcXBLSjtBZ0R6cEtFO0VBQ0Usc0I1QzAzQmdDO0FKaXlJcEM7QWdEeHBLRTtFQUNFO0FoRDBwS0o7QWdEdnBLRTtFQUNFO0VBQ0E7QWhEeXBLSjtBZ0R0cEtFO0VBQ0U7QWhEd3BLSjs7QWdEcHBLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGM1Q3ZCUztFNEN3QlQsMkM1QysyQmtDO0U0QzkyQmxDO0VBQ0E7RXJDWkU7RUFDQTtBWG9xS0o7O0FnRHJwS0E7RUFDRSxnQjVDNjFCa0M7QUoyeklwQzs7QWlEOXJLQTtFQUVFO0FqRGdzS0Y7QWlEOXJLRTtFQUNFO0VBQ0E7QWpEZ3NLSjs7QWlEM3JLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE3QzJwQmtDO0U2QzFwQmxDO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QWpENHJLRjs7QWlEcnJLQTtFQUNFO0VBQ0E7RUFDQSxjN0MyNEJrQztFNkN6NEJsQztBakR1cktGO0FpRHByS0U7RTdCM0JJLG1DNkI0QkY7RUFDQSw4QjdDaTZCZ0M7QUpxeElwQztBb0Ivc0tNO0U2QnVCSjtJN0J0Qk07RXBCa3RLTjtBQUNGO0FpRHpyS0U7RUFDRSxlN0MrNUJnQztBSjR4SXBDO0FpRHZyS0U7RUFDRSxzQjdDNDVCZ0M7QUo2eElwQzs7QWlEcnJLQTtFQUNFO0VBQ0E7QWpEd3JLRjtBaUR0cktFO0VBQ0U7RUFDQTtBakR3cktKO0FpRHJyS0U7O0VBRUU7QWpEdXJLSjtBaURwcktFO0VBQ0U7QWpEc3JLSjs7QWlEbHJLQTtFQUNFO0VBQ0E7RUFDQTtBakRxcktGO0FpRGxyS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakRvcktKO0FpRGhyS0U7RUFDRTtFQUNBO0VBQ0E7QWpEa3JLSjtBaURocktJO0VBQ0U7QWpEa3JLTjtBaUQvcUtJO0VBQ0U7QWpEaXJLTjs7QWlEM3FLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQSxzQjdDM0dTO0U2QzRHVDtFQUNBO0V0Q2xHRTtFc0NzR0Y7QWpEMHFLRjs7QWlEdHFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE3QytpQmtDO0U2QzlpQmxDO0VBQ0E7RUFDQSxzQjdDbEhTO0FKMnhLWDtBaUR0cUtFO0VBQVM7QWpEeXFLWDtBaUR4cUtFO0VBQVMsWTdDeXpCeUI7QUprM0lwQzs7QWlEdHFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGtCN0N1ekJrQztFNkN0ekJsQztFdEN0SEU7RUFDQTtBWGd5S0o7QWlEeHFLRTtFQUNFLGtCN0NrekJnQztFNkNoekJoQztBakR5cUtKOztBaURwcUtBO0VBQ0U7RUFDQSxnQjdDc0k0QjtBSmlpSzlCOztBaURscUtBO0VBQ0U7RUFHQTtFQUNBLGE3Q293QmtDO0FKKzVJcEM7O0FpRC9wS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXRDeklFO0VBQ0E7QVg0eUtKO0FpRDlwS0U7RUFDRTtBakRncUtKOztBaUQzcEtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakQ4cEtGOztBZXJ5S0k7RWtDNklGO0lBQ0UsZ0I3Q2l3QmdDO0k2Q2h3QmhDO0VqRDRwS0Y7O0VpRHpwS0E7SUFDRTtFakQ0cEtGO0VpRDFwS0U7SUFDRTtFakQ0cEtKOztFaUR4cEtBO0lBQ0U7RWpEMnBLRjtFaUR6cEtFO0lBQ0U7SUFDQTtFakQycEtKOztFaURucEtBO0lBQVksZ0I3Q3l1QnNCO0VKODZJbEM7QUFDRjtBZS96S0k7RWtDMktGOztJQUVFLGdCN0NpdUJnQztFSnM3SWxDO0FBQ0Y7QWVyMEtJO0VrQ2tMRjtJQUFZLGlCN0MydEJzQjtFSjQ3SWxDO0FBQ0Y7QWtEcjRLQTtFQUNFO0VBQ0EsYTlDK3FCa0M7RThDOXFCbEM7RUFDQSxTOUN1MUJrQztFK0MzMUJsQyxrTS9DbVI0QjtFK0NqUjVCO0VBQ0EsZ0IvQzJSNEI7RStDMVI1QixnQi9DK1I0QjtFK0M5UjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U5Q2dISSxtQkF0Q2E7RTZDOUVqQjtFQUNBO0FsRGk1S0Y7QWtELzRLRTtFQUFTLFk5QzIwQnlCO0FKdWtKcEM7QWtEaDVLRTtFQUNFO0VBQ0E7RUFDQSxhOUMyMEJnQztFOEMxMEJoQyxjOUMyMEJnQztBSnVrSnBDO0FrRGg1S0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbERrNUtOOztBa0Q3NEtBO0VBQ0U7QWxEZzVLRjtBa0Q5NEtFO0VBQ0U7QWxEZzVLSjtBa0Q5NEtJO0VBQ0U7RUFDQTtFQUNBLHNCOUN2Qks7QUp1NktYOztBa0QzNEtBO0VBQ0U7QWxEODRLRjtBa0Q1NEtFO0VBQ0U7RUFDQSxhOUM2eUJnQztFOEM1eUJoQyxjOUMyeUJnQztBSm1tSnBDO0FrRDU0S0k7RUFDRTtFQUNBO0VBQ0Esd0I5Q3ZDSztBSnE3S1g7O0FrRHo0S0E7RUFDRTtBbEQ0NEtGO0FrRDE0S0U7RUFDRTtBbEQ0NEtKO0FrRDE0S0k7RUFDRTtFQUNBO0VBQ0EseUI5Q3JESztBSmk4S1g7O0FrRHY0S0E7RUFDRTtBbEQwNEtGO0FrRHg0S0U7RUFDRTtFQUNBLGE5Qyt3QmdDO0U4Qzl3QmhDLGM5QzZ3QmdDO0FKNm5KcEM7QWtEeDRLSTtFQUNFO0VBQ0E7RUFDQSx1QjlDckVLO0FKKzhLWDs7QWtEcjNLQTtFQUNFLGdCOUN5dUJrQztFOEN4dUJsQztFQUNBLFc5Q3ZHUztFOEN3R1Q7RUFDQSxzQjlDL0ZTO0VPQ1A7QVh1OUtKOztBb0R6K0tBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYWhENnFCa0M7RWdENXFCbEM7RUFDQSxnQmhEeTJCa0M7RStDOTJCbEMsa00vQ21SNEI7RStDalI1QjtFQUNBLGdCL0MyUjRCO0UrQzFSNUIsZ0IvQytSNEI7RStDOVI1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFOUNnSEksbUJBdENhO0UrQzdFakI7RUFDQSxzQmhETlM7RWdET1Q7RUFDQTtFekNHRTtBWG8vS0o7QW9Ebi9LRTtFQUNFO0VBQ0E7RUFDQSxXaER5MkJnQztFZ0R4MkJoQyxjaER5MkJnQztFZ0R4MkJoQztBcERxL0tKO0FvRG4vS0k7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRG8vS047O0FvRC8rS0E7RUFDRSxxQmhEMDFCa0M7QUp3cEpwQztBb0RoL0tFO0VBQ0U7QXBEay9LSjtBb0RoL0tJO0VBQ0U7RUFDQTtFQUNBLHFDaERxMUI4QjtBSjZwSnBDO0FvRC8rS0k7RUFDRSxXaEQwTHdCO0VnRHpMeEI7RUFDQSxzQmhEN0NLO0FKOGhMWDs7QW9ENStLQTtFQUNFLG1CaERzMEJrQztBSnlxSnBDO0FvRDcrS0U7RUFDRTtFQUNBLGFoRGswQmdDO0VnRGowQmhDLFloRGcwQmdDO0VnRC96QmhDO0FwRCsrS0o7QW9ENytLSTtFQUNFO0VBQ0E7RUFDQSx1Q2hEOHpCOEI7QUppckpwQztBb0Q1K0tJO0VBQ0UsU2hEbUt3QjtFZ0RsS3hCO0VBQ0Esd0JoRHBFSztBSmtqTFg7O0FvRHorS0E7RUFDRSxrQmhEK3lCa0M7QUo2ckpwQztBb0QxK0tFO0VBQ0U7QXBENCtLSjtBb0QxK0tJO0VBQ0U7RUFDQTtFQUNBLHdDaEQweUI4QjtBSmtzSnBDO0FvRHorS0k7RUFDRSxRaEQrSXdCO0VnRDlJeEI7RUFDQSx5QmhEeEZLO0FKbWtMWDtBb0R0K0tFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXaERzeEJnQztFZ0RyeEJoQztFQUNBO0VBQ0E7QXBEdytLSjs7QW9EcCtLQTtFQUNFLG9CaEQrd0JrQztBSnd0SnBDO0FvRHIrS0U7RUFDRTtFQUNBLGFoRDJ3QmdDO0VnRDF3QmhDLFloRHl3QmdDO0VnRHh3QmhDO0FwRHUrS0o7QW9EcitLSTtFQUNFO0VBQ0E7RUFDQSxzQ2hEdXdCOEI7QUpndUpwQztBb0RwK0tJO0VBQ0UsVWhENEd3QjtFZ0QzR3hCO0VBQ0EsdUJoRDNISztBSmltTFg7O0FvRGg5S0E7RUFDRTtFQUNBO0UvQzNCSSxlQXRDYTtFK0NvRWpCLHlCaER5dEJrQztFZ0R4dEJsQztFekNuSUU7RUFDQTtBWHNsTEo7QW9EajlLRTtFQUNFO0FwRG05S0o7O0FvRC84S0E7RUFDRTtFQUNBLGNoRHhKUztBSjBtTFg7O0FxRDdtTEE7RUFDRTtBckRnbkxGOztBcUQ3bUxBO0VBQ0U7QXJEZ25MRjs7QXFEN21MQTtFQUNFO0VBQ0E7RUFDQTtBckRnbkxGO0FzRHZvTEU7RUFDRTtFQUNBO0VBQ0E7QXREeW9MSjs7QXFEam5MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakNsQkksc0NpQ21CSjtBckRvbkxGO0FvQm5vTE07RWlDUU47SWpDUFE7RXBCc29MTjtBQUNGOztBcUR0bkxBOzs7RUFHRTtBckR5bkxGOztBcUR0bkxBOztFQUVFO0FyRHluTEY7O0FxRHRuTEE7O0VBRUU7QXJEeW5MRjs7QXFEaG5MRTtFQUNFO0VBQ0E7RUFDQTtBckRtbkxKO0FxRGhuTEU7OztFQUdFO0VBQ0E7QXJEa25MSjtBcUQvbUxFOztFQUVFO0VBQ0E7RWpDNURFLDJCaUM2REY7QXJEaW5MSjtBb0IxcUxNO0VpQ3FESjs7SWpDcERNO0VwQjhxTE47QUFDRjs7QXFEOW1MQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLFVqRGc5Qm1DO0VpRC84Qm5DLFdqRDFGUztFaUQyRlQ7RUFDQSxZakQ4OEJtQztFZ0JqaUMvQiw4QmlDb0ZKO0FyRGduTEY7QW9CaHNMTTtFaUNrRU47O0lqQ2pFUTtFcEJvc0xOO0FBQ0Y7QU0xc0xFOzs7RStDd0ZFLFdqRGpHTztFaURrR1A7RUFDQTtFQUNBLFlqRHU4QmlDO0FKZ3JKckM7O0FxRHBuTEE7RUFDRTtBckR1bkxGOztBcURsbkxBO0VBQ0U7QXJEcW5MRjs7QXFEOW1MQTs7RUFFRTtFQUNBLFdqRGc4Qm1DO0VpRC83Qm5DLFlqRCs3Qm1DO0VpRDk3Qm5DO0FyRGluTEY7O0FxRC9tTEE7RUFDRTtBckRrbkxGOztBcURobkxBO0VBQ0U7QXJEbW5MRjs7QXFEMW1MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxpQmpEczVCbUM7RWlEcjVCbkMsZ0JqRHE1Qm1DO0VpRHA1Qm5DO0FyRDRtTEY7QXFEMW1MRTtFQUNFO0VBQ0E7RUFDQSxXakRvNUJpQztFaURuNUJqQyxXakRvNUJpQztFaURuNUJqQyxpQmpEcTVCaUM7RWlEcDVCakMsZ0JqRG81QmlDO0VpRG41QmpDO0VBQ0E7RUFDQSxzQmpEaEtPO0VpRGlLUDtFQUVBO0VBQ0E7RUFDQTtFakM1SkUsNkJpQzZKRjtBckQybUxKO0FvQnB3TE07RWlDMElKO0lqQ3pJTTtFcEJ1d0xOO0FBQ0Y7QXFEN21MRTtFQUNFO0FyRCttTEo7O0FxRHRtTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdqRDNMUztFaUQ0TFQ7QXJEeW1MRjs7QXVEeHlMQTtFQUNFO0lBQUs7RXZENHlMTDtBQUNGO0F1RDF5TEE7RUFDRTtFQUNBLFduRGdrQ3NCO0VtRC9qQ3RCLFluRCtqQ3NCO0VtRDlqQ3RCO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QXZEMnlMRjs7QXVEeHlMQTtFQUNFLFduRHlqQ3dCO0VtRHhqQ3hCLFluRHdqQ3dCO0VtRHZqQ3hCLG1CbkR5akN3QjtBSmt2SjFCOztBdURweUxBO0VBQ0U7SUFDRTtFdkR1eUxGO0V1RHJ5TEE7SUFDRTtJQUNBO0V2RHV5TEY7QUFDRjtBdURweUxBO0VBQ0U7RUFDQSxXbkRnaUNzQjtFbUQvaEN0QixZbkQraENzQjtFbUQ5aEN0QjtFQUNBO0VBRUE7RUFDQTtFQUNBO0F2RHF5TEY7O0F1RGx5TEE7RUFDRSxXbkR5aEN3QjtFbUR4aEN4QixZbkR3aEN3QjtBSjZ3SjFCOztBd0R6MUxBO0VBQXFCO0F4RDYxTHJCOztBd0Q1MUxBO0VBQXFCO0F4RGcyTHJCOztBd0QvMUxBO0VBQXFCO0F4RG0yTHJCOztBd0RsMkxBO0VBQXFCO0F4RHMyTHJCOztBd0RyMkxBO0VBQXFCO0F4RHkyTHJCOztBd0R4MkxBO0VBQXFCO0F4RDQyTHJCOztBeUQ5MkxFO0VBQ0U7QXpEaTNMSjs7QU12MkxFOzs7RW1ETEk7QXpEazNMTjs7QXlEeDNMRTtFQUNFO0F6RDIzTEo7O0FNajNMRTs7O0VtRExJO0F6RDQzTE47O0F5RGw0TEU7RUFDRTtBekRxNExKOztBTTMzTEU7OztFbURMSTtBekRzNExOOztBeUQ1NExFO0VBQ0U7QXpEKzRMSjs7QU1yNExFOzs7RW1ETEk7QXpEZzVMTjs7QXlEdDVMRTtFQUNFO0F6RHk1TEo7O0FNLzRMRTs7O0VtRExJO0F6RDA1TE47O0F5RGg2TEU7RUFDRTtBekRtNkxKOztBTXo1TEU7OztFbURMSTtBekRvNkxOOztBeUQxNkxFO0VBQ0U7QXpENjZMSjs7QU1uNkxFOzs7RW1ETEk7QXpEODZMTjs7QXlEcDdMRTtFQUNFO0F6RHU3TEo7O0FNNzZMRTs7O0VtRExJO0F6RHc3TE47O0EwRHY3TEE7RUFDRTtBMUQwN0xGOztBMER2N0xBO0VBQ0U7QTFEMDdMRjs7QTJEcjhMQTtFQUFrQjtBM0R5OExsQjs7QTJEeDhMQTtFQUFrQjtBM0Q0OExsQjs7QTJEMzhMQTtFQUFrQjtBM0QrOExsQjs7QTJEOThMQTtFQUFrQjtBM0RrOUxsQjs7QTJEajlMQTtFQUFrQjtBM0RxOUxsQjs7QTJEbjlMQTtFQUFtQjtBM0R1OUxuQjs7QTJEdDlMQTtFQUFtQjtBM0QwOUxuQjs7QTJEejlMQTtFQUFtQjtBM0Q2OUxuQjs7QTJENTlMQTtFQUFtQjtBM0RnK0xuQjs7QTJELzlMQTtFQUFtQjtBM0RtK0xuQjs7QTJEaCtMRTtFQUNFO0EzRG0rTEo7O0EyRHArTEU7RUFDRTtBM0R1K0xKOztBMkR4K0xFO0VBQ0U7QTNEMitMSjs7QTJENStMRTtFQUNFO0EzRCsrTEo7O0EyRGgvTEU7RUFDRTtBM0RtL0xKOztBMkRwL0xFO0VBQ0U7QTNEdS9MSjs7QTJEeC9MRTtFQUNFO0EzRDIvTEo7O0EyRDUvTEU7RUFDRTtBM0QrL0xKOztBMkQzL0xBO0VBQ0U7QTNEOC9MRjs7QTJEdi9MQTtFQUNFO0EzRDAvTEY7O0EyRHYvTEE7RUFDRTtBM0QwL0xGOztBMkR2L0xBO0VBQ0U7RUFDQTtBM0QwL0xGOztBMkR2L0xBO0VBQ0U7RUFDQTtBM0QwL0xGOztBMkR2L0xBO0VBQ0U7RUFDQTtBM0QwL0xGOztBMkR2L0xBO0VBQ0U7RUFDQTtBM0QwL0xGOztBMkR2L0xBO0VBQ0U7QTNEMC9MRjs7QTJEdi9MQTtFQUNFO0EzRDAvTEY7O0EyRHYvTEE7RUFDRTtBM0QwL0xGOztBMkR2L0xBO0VBQ0U7QTNEMC9MRjs7QXNEbGtNRTtFQUNFO0VBQ0E7RUFDQTtBdERxa01KOztBNEQ5ak1NO0VBQXdCO0E1RGtrTTlCOztBNERsa01NO0VBQXdCO0E1RHNrTTlCOztBNER0a01NO0VBQXdCO0E1RDBrTTlCOztBNEQxa01NO0VBQXdCO0E1RDhrTTlCOztBNEQ5a01NO0VBQXdCO0E1RGtsTTlCOztBNERsbE1NO0VBQXdCO0E1RHNsTTlCOztBNER0bE1NO0VBQXdCO0E1RDBsTTlCOztBNEQxbE1NO0VBQXdCO0E1RDhsTTlCOztBNEQ5bE1NO0VBQXdCO0E1RGttTTlCOztBZWpqTUk7RTZDakRFO0lBQXdCO0U1RHVtTTVCOztFNER2bU1JO0lBQXdCO0U1RDJtTTVCOztFNEQzbU1JO0lBQXdCO0U1RCttTTVCOztFNEQvbU1JO0lBQXdCO0U1RG1uTTVCOztFNERubk1JO0lBQXdCO0U1RHVuTTVCOztFNER2bk1JO0lBQXdCO0U1RDJuTTVCOztFNEQzbk1JO0lBQXdCO0U1RCtuTTVCOztFNEQvbk1JO0lBQXdCO0U1RG1vTTVCOztFNERub01JO0lBQXdCO0U1RHVvTTVCO0FBQ0Y7QWV2bE1JO0U2Q2pERTtJQUF3QjtFNUQ0b001Qjs7RTRENW9NSTtJQUF3QjtFNURncE01Qjs7RTREaHBNSTtJQUF3QjtFNURvcE01Qjs7RTREcHBNSTtJQUF3QjtFNUR3cE01Qjs7RTREeHBNSTtJQUF3QjtFNUQ0cE01Qjs7RTRENXBNSTtJQUF3QjtFNURncU01Qjs7RTREaHFNSTtJQUF3QjtFNURvcU01Qjs7RTREcHFNSTtJQUF3QjtFNUR3cU01Qjs7RTREeHFNSTtJQUF3QjtFNUQ0cU01QjtBQUNGO0FlNW5NSTtFNkNqREU7SUFBd0I7RTVEaXJNNUI7O0U0RGpyTUk7SUFBd0I7RTVEcXJNNUI7O0U0RHJyTUk7SUFBd0I7RTVEeXJNNUI7O0U0RHpyTUk7SUFBd0I7RTVENnJNNUI7O0U0RDdyTUk7SUFBd0I7RTVEaXNNNUI7O0U0RGpzTUk7SUFBd0I7RTVEcXNNNUI7O0U0RHJzTUk7SUFBd0I7RTVEeXNNNUI7O0U0RHpzTUk7SUFBd0I7RTVENnNNNUI7O0U0RDdzTUk7SUFBd0I7RTVEaXRNNUI7QUFDRjtBZWpxTUk7RTZDakRFO0lBQXdCO0U1RHN0TTVCOztFNER0dE1JO0lBQXdCO0U1RDB0TTVCOztFNEQxdE1JO0lBQXdCO0U1RDh0TTVCOztFNEQ5dE1JO0lBQXdCO0U1RGt1TTVCOztFNERsdU1JO0lBQXdCO0U1RHN1TTVCOztFNER0dU1JO0lBQXdCO0U1RDB1TTVCOztFNEQxdU1JO0lBQXdCO0U1RDh1TTVCOztFNEQ5dU1JO0lBQXdCO0U1RGt2TTVCOztFNERsdk1JO0lBQXdCO0U1RHN2TTVCO0FBQ0Y7QTREN3VNQTtFQUVJO0lBQXFCO0U1RCt1TXZCOztFNEQvdU1FO0lBQXFCO0U1RG12TXZCOztFNERudk1FO0lBQXFCO0U1RHV2TXZCOztFNER2dk1FO0lBQXFCO0U1RDJ2TXZCOztFNEQzdk1FO0lBQXFCO0U1RCt2TXZCOztFNEQvdk1FO0lBQXFCO0U1RG13TXZCOztFNERud01FO0lBQXFCO0U1RHV3TXZCOztFNER2d01FO0lBQXFCO0U1RDJ3TXZCOztFNEQzd01FO0lBQXFCO0U1RCt3TXZCO0FBQ0Y7QTZEcnlNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEdXlNRjtBNkRyeU1FO0VBQ0U7RUFDQTtBN0R1eU1KO0E2RHB5TUU7Ozs7O0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEc3lNSjs7QTZEN3hNSTtFQUNFO0E3RGd5TU47O0E2RGp5TUk7RUFDRTtBN0RveU1OOztBNkRyeU1JO0VBQ0U7QTdEd3lNTjs7QTZEenlNSTtFQUNFO0E3RDR5TU47O0E4RHIwTUk7RUFBZ0M7QTlEeTBNcEM7O0E4RHgwTUk7RUFBZ0M7QTlENDBNcEM7O0E4RDMwTUk7RUFBZ0M7QTlEKzBNcEM7O0E4RDkwTUk7RUFBZ0M7QTlEazFNcEM7O0E4RGgxTUk7RUFBOEI7QTlEbzFNbEM7O0E4RG4xTUk7RUFBOEI7QTlEdTFNbEM7O0E4RHQxTUk7RUFBOEI7QTlEMDFNbEM7O0E4RHoxTUk7RUFBOEI7QTlENjFNbEM7O0E4RDUxTUk7RUFBOEI7QTlEZzJNbEM7O0E4RC8xTUk7RUFBOEI7QTlEbTJNbEM7O0E4RGwyTUk7RUFBOEI7QTlEczJNbEM7O0E4RHIyTUk7RUFBOEI7QTlEeTJNbEM7O0E4RHYyTUk7RUFBb0M7QTlEMjJNeEM7O0E4RDEyTUk7RUFBb0M7QTlEODJNeEM7O0E4RDcyTUk7RUFBb0M7QTlEaTNNeEM7O0E4RGgzTUk7RUFBb0M7QTlEbzNNeEM7O0E4RG4zTUk7RUFBb0M7QTlEdTNNeEM7O0E4RHIzTUk7RUFBaUM7QTlEeTNNckM7O0E4RHgzTUk7RUFBaUM7QTlENDNNckM7O0E4RDMzTUk7RUFBaUM7QTlEKzNNckM7O0E4RDkzTUk7RUFBaUM7QTlEazRNckM7O0E4RGo0TUk7RUFBaUM7QTlEcTRNckM7O0E4RG40TUk7RUFBa0M7QTlEdTRNdEM7O0E4RHQ0TUk7RUFBa0M7QTlEMDRNdEM7O0E4RHo0TUk7RUFBa0M7QTlENjRNdEM7O0E4RDU0TUk7RUFBa0M7QTlEZzVNdEM7O0E4RC80TUk7RUFBa0M7QTlEbTVNdEM7O0E4RGw1TUk7RUFBa0M7QTlEczVNdEM7O0E4RHA1TUk7RUFBZ0M7QTlEdzVNcEM7O0E4RHY1TUk7RUFBZ0M7QTlEMjVNcEM7O0E4RDE1TUk7RUFBZ0M7QTlEODVNcEM7O0E4RDc1TUk7RUFBZ0M7QTlEaTZNcEM7O0E4RGg2TUk7RUFBZ0M7QTlEbzZNcEM7O0E4RG42TUk7RUFBZ0M7QTlEdTZNcEM7O0FlMzVNSTtFK0NsREE7SUFBZ0M7RTlEazlNbEM7O0U4RGo5TUU7SUFBZ0M7RTlEcTlNbEM7O0U4RHA5TUU7SUFBZ0M7RTlEdzlNbEM7O0U4RHY5TUU7SUFBZ0M7RTlEMjlNbEM7O0U4RHo5TUU7SUFBOEI7RTlENjlNaEM7O0U4RDU5TUU7SUFBOEI7RTlEZytNaEM7O0U4RC85TUU7SUFBOEI7RTlEbStNaEM7O0U4RGwrTUU7SUFBOEI7RTlEcytNaEM7O0U4RHIrTUU7SUFBOEI7RTlEeStNaEM7O0U4RHgrTUU7SUFBOEI7RTlENCtNaEM7O0U4RDMrTUU7SUFBOEI7RTlEKytNaEM7O0U4RDkrTUU7SUFBOEI7RTlEay9NaEM7O0U4RGgvTUU7SUFBb0M7RTlEby9NdEM7O0U4RG4vTUU7SUFBb0M7RTlEdS9NdEM7O0U4RHQvTUU7SUFBb0M7RTlEMC9NdEM7O0U4RHovTUU7SUFBb0M7RTlENi9NdEM7O0U4RDUvTUU7SUFBb0M7RTlEZ2dOdEM7O0U4RDkvTUU7SUFBaUM7RTlEa2dObkM7O0U4RGpnTkU7SUFBaUM7RTlEcWdObkM7O0U4RHBnTkU7SUFBaUM7RTlEd2dObkM7O0U4RHZnTkU7SUFBaUM7RTlEMmdObkM7O0U4RDFnTkU7SUFBaUM7RTlEOGdObkM7O0U4RDVnTkU7SUFBa0M7RTlEZ2hOcEM7O0U4RC9nTkU7SUFBa0M7RTlEbWhOcEM7O0U4RGxoTkU7SUFBa0M7RTlEc2hOcEM7O0U4RHJoTkU7SUFBa0M7RTlEeWhOcEM7O0U4RHhoTkU7SUFBa0M7RTlENGhOcEM7O0U4RDNoTkU7SUFBa0M7RTlEK2hOcEM7O0U4RDdoTkU7SUFBZ0M7RTlEaWlObEM7O0U4RGhpTkU7SUFBZ0M7RTlEb2lObEM7O0U4RG5pTkU7SUFBZ0M7RTlEdWlObEM7O0U4RHRpTkU7SUFBZ0M7RTlEMGlObEM7O0U4RHppTkU7SUFBZ0M7RTlENmlObEM7O0U4RDVpTkU7SUFBZ0M7RTlEZ2pObEM7QUFDRjtBZXJpTkk7RStDbERBO0lBQWdDO0U5RDJsTmxDOztFOEQxbE5FO0lBQWdDO0U5RDhsTmxDOztFOEQ3bE5FO0lBQWdDO0U5RGltTmxDOztFOERobU5FO0lBQWdDO0U5RG9tTmxDOztFOERsbU5FO0lBQThCO0U5RHNtTmhDOztFOERybU5FO0lBQThCO0U5RHltTmhDOztFOER4bU5FO0lBQThCO0U5RDRtTmhDOztFOEQzbU5FO0lBQThCO0U5RCttTmhDOztFOEQ5bU5FO0lBQThCO0U5RGtuTmhDOztFOERqbk5FO0lBQThCO0U5RHFuTmhDOztFOERwbk5FO0lBQThCO0U5RHduTmhDOztFOER2bk5FO0lBQThCO0U5RDJuTmhDOztFOER6bk5FO0lBQW9DO0U5RDZuTnRDOztFOEQ1bk5FO0lBQW9DO0U5RGdvTnRDOztFOEQvbk5FO0lBQW9DO0U5RG1vTnRDOztFOERsb05FO0lBQW9DO0U5RHNvTnRDOztFOERyb05FO0lBQW9DO0U5RHlvTnRDOztFOER2b05FO0lBQWlDO0U5RDJvTm5DOztFOEQxb05FO0lBQWlDO0U5RDhvTm5DOztFOEQ3b05FO0lBQWlDO0U5RGlwTm5DOztFOERocE5FO0lBQWlDO0U5RG9wTm5DOztFOERucE5FO0lBQWlDO0U5RHVwTm5DOztFOERycE5FO0lBQWtDO0U5RHlwTnBDOztFOER4cE5FO0lBQWtDO0U5RDRwTnBDOztFOEQzcE5FO0lBQWtDO0U5RCtwTnBDOztFOEQ5cE5FO0lBQWtDO0U5RGtxTnBDOztFOERqcU5FO0lBQWtDO0U5RHFxTnBDOztFOERwcU5FO0lBQWtDO0U5RHdxTnBDOztFOER0cU5FO0lBQWdDO0U5RDBxTmxDOztFOER6cU5FO0lBQWdDO0U5RDZxTmxDOztFOEQ1cU5FO0lBQWdDO0U5RGdyTmxDOztFOEQvcU5FO0lBQWdDO0U5RG1yTmxDOztFOERsck5FO0lBQWdDO0U5RHNyTmxDOztFOERyck5FO0lBQWdDO0U5RHlyTmxDO0FBQ0Y7QWU5cU5JO0UrQ2xEQTtJQUFnQztFOURvdU5sQzs7RThEbnVORTtJQUFnQztFOUR1dU5sQzs7RThEdHVORTtJQUFnQztFOUQwdU5sQzs7RThEenVORTtJQUFnQztFOUQ2dU5sQzs7RThEM3VORTtJQUE4QjtFOUQrdU5oQzs7RThEOXVORTtJQUE4QjtFOURrdk5oQzs7RThEanZORTtJQUE4QjtFOURxdk5oQzs7RThEcHZORTtJQUE4QjtFOUR3dk5oQzs7RThEdnZORTtJQUE4QjtFOUQydk5oQzs7RThEMXZORTtJQUE4QjtFOUQ4dk5oQzs7RThEN3ZORTtJQUE4QjtFOURpd05oQzs7RThEaHdORTtJQUE4QjtFOURvd05oQzs7RThEbHdORTtJQUFvQztFOURzd050Qzs7RThEcndORTtJQUFvQztFOUR5d050Qzs7RThEeHdORTtJQUFvQztFOUQ0d050Qzs7RThEM3dORTtJQUFvQztFOUQrd050Qzs7RThEOXdORTtJQUFvQztFOURreE50Qzs7RThEaHhORTtJQUFpQztFOURveE5uQzs7RThEbnhORTtJQUFpQztFOUR1eE5uQzs7RThEdHhORTtJQUFpQztFOUQweE5uQzs7RThEenhORTtJQUFpQztFOUQ2eE5uQzs7RThENXhORTtJQUFpQztFOURneU5uQzs7RThEOXhORTtJQUFrQztFOURreU5wQzs7RThEanlORTtJQUFrQztFOURxeU5wQzs7RThEcHlORTtJQUFrQztFOUR3eU5wQzs7RThEdnlORTtJQUFrQztFOUQyeU5wQzs7RThEMXlORTtJQUFrQztFOUQ4eU5wQzs7RThEN3lORTtJQUFrQztFOURpek5wQzs7RThEL3lORTtJQUFnQztFOURtek5sQzs7RThEbHpORTtJQUFnQztFOURzek5sQzs7RThEcnpORTtJQUFnQztFOUR5ek5sQzs7RThEeHpORTtJQUFnQztFOUQ0ek5sQzs7RThEM3pORTtJQUFnQztFOUQrek5sQzs7RThEOXpORTtJQUFnQztFOURrME5sQztBQUNGO0FldnpOSTtFK0NsREE7SUFBZ0M7RTlENjJObEM7O0U4RDUyTkU7SUFBZ0M7RTlEZzNObEM7O0U4RC8yTkU7SUFBZ0M7RTlEbTNObEM7O0U4RGwzTkU7SUFBZ0M7RTlEczNObEM7O0U4RHAzTkU7SUFBOEI7RTlEdzNOaEM7O0U4RHYzTkU7SUFBOEI7RTlEMjNOaEM7O0U4RDEzTkU7SUFBOEI7RTlEODNOaEM7O0U4RDczTkU7SUFBOEI7RTlEaTROaEM7O0U4RGg0TkU7SUFBOEI7RTlEbzROaEM7O0U4RG40TkU7SUFBOEI7RTlEdTROaEM7O0U4RHQ0TkU7SUFBOEI7RTlEMDROaEM7O0U4RHo0TkU7SUFBOEI7RTlENjROaEM7O0U4RDM0TkU7SUFBb0M7RTlEKzROdEM7O0U4RDk0TkU7SUFBb0M7RTlEazVOdEM7O0U4RGo1TkU7SUFBb0M7RTlEcTVOdEM7O0U4RHA1TkU7SUFBb0M7RTlEdzVOdEM7O0U4RHY1TkU7SUFBb0M7RTlEMjVOdEM7O0U4RHo1TkU7SUFBaUM7RTlENjVObkM7O0U4RDU1TkU7SUFBaUM7RTlEZzZObkM7O0U4RC81TkU7SUFBaUM7RTlEbTZObkM7O0U4RGw2TkU7SUFBaUM7RTlEczZObkM7O0U4RHI2TkU7SUFBaUM7RTlEeTZObkM7O0U4RHY2TkU7SUFBa0M7RTlEMjZOcEM7O0U4RDE2TkU7SUFBa0M7RTlEODZOcEM7O0U4RDc2TkU7SUFBa0M7RTlEaTdOcEM7O0U4RGg3TkU7SUFBa0M7RTlEbzdOcEM7O0U4RG43TkU7SUFBa0M7RTlEdTdOcEM7O0U4RHQ3TkU7SUFBa0M7RTlEMDdOcEM7O0U4RHg3TkU7SUFBZ0M7RTlENDdObEM7O0U4RDM3TkU7SUFBZ0M7RTlEKzdObEM7O0U4RDk3TkU7SUFBZ0M7RTlEazhObEM7O0U4RGo4TkU7SUFBZ0M7RTlEcThObEM7O0U4RHA4TkU7SUFBZ0M7RTlEdzhObEM7O0U4RHY4TkU7SUFBZ0M7RTlEMjhObEM7QUFDRjtBK0R0L05JO0VBQXdCO0EvRHkvTjVCOztBK0R4L05JO0VBQXdCO0EvRDQvTjVCOztBK0QzL05JO0VBQXdCO0EvRCsvTjVCOztBZTM4Tkk7RWdEdERBO0lBQXdCO0UvRHNnTzFCOztFK0RyZ09FO0lBQXdCO0UvRHlnTzFCOztFK0R4Z09FO0lBQXdCO0UvRDRnTzFCO0FBQ0Y7QWV6OU5JO0VnRHREQTtJQUF3QjtFL0RtaE8xQjs7RStEbGhPRTtJQUF3QjtFL0RzaE8xQjs7RStEcmhPRTtJQUF3QjtFL0R5aE8xQjtBQUNGO0FldCtOSTtFZ0R0REE7SUFBd0I7RS9EZ2lPMUI7O0UrRC9oT0U7SUFBd0I7RS9EbWlPMUI7O0UrRGxpT0U7SUFBd0I7RS9Ec2lPMUI7QUFDRjtBZW4vTkk7RWdEdERBO0lBQXdCO0UvRDZpTzFCOztFK0Q1aU9FO0lBQXdCO0UvRGdqTzFCOztFK0QvaU9FO0lBQXdCO0UvRG1qTzFCO0FBQ0Y7QWdFempPRTtFQUF5QjtBaEU0ak8zQjs7QWdFNWpPRTtFQUF5QjtBaEVna08zQjs7QWdFaGtPRTtFQUF5QjtBaEVva08zQjs7QWlFcGtPRTtFQUFzQjtBakV3a094Qjs7QWlFeGtPRTtFQUFzQjtBakU0a094Qjs7QWtFM2tPRTtFQUF5QjtBbEUra08zQjs7QWtFL2tPRTtFQUF5QjtBbEVtbE8zQjs7QWtFbmxPRTtFQUF5QjtBbEV1bE8zQjs7QWtFdmxPRTtFQUF5QjtBbEUybE8zQjs7QWtFM2xPRTtFQUF5QjtBbEUrbE8zQjs7QWtFMWxPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTlEZ3FCa0M7QUo2N01wQzs7QWtFMWxPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTlEd3BCa0M7QUpxOE1wQzs7QWtFemxPRTtFQURGO0lBRUk7SUFDQTtJQUNBLGE5RGdwQmdDO0VKNjhNbEM7QUFDRjs7QW1Fdm5PQTtFQ0VFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEV5bk9GOztBb0UvbU9FO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRWluT0o7O0FxRTlvT0E7RUFBYTtBckVrcE9iOztBcUVqcE9BO0VBQVU7QXJFcXBPVjs7QXFFcHBPQTtFQUFhO0FyRXdwT2I7O0FxRXZwT0E7RUFBZTtBckUycE9mOztBc0UxcE9JO0VBQXVCO0F0RThwTzNCOztBc0U5cE9JO0VBQXVCO0F0RWtxTzNCOztBc0VscU9JO0VBQXVCO0F0RXNxTzNCOztBc0V0cU9JO0VBQXVCO0F0RTBxTzNCOztBc0UxcU9JO0VBQXVCO0F0RThxTzNCOztBc0U5cU9JO0VBQXVCO0F0RWtyTzNCOztBc0Vsck9JO0VBQXVCO0F0RXNyTzNCOztBc0V0ck9JO0VBQXVCO0F0RTByTzNCOztBc0Uxck9JO0VBQXVCO0F0RThyTzNCOztBc0U5ck9JO0VBQXVCO0F0RWtzTzNCOztBc0U5ck9BO0VBQVU7QXRFa3NPVjs7QXNFanNPQTtFQUFVO0F0RXFzT1Y7O0FzRWpzT0E7RUFBYztBdEVxc09kOztBc0Vwc09BO0VBQWM7QXRFd3NPZDs7QXNFdHNPQTtFQUFVO0F0RTBzT1Y7O0FzRXpzT0E7RUFBVTtBdEU2c09WOztBdUV0dE9RO0VBQWdDO0F2RTB0T3hDOztBdUV6dE9ROztFQUVFO0F2RTR0T1Y7O0F1RTF0T1E7O0VBRUU7QXZFNnRPVjs7QXVFM3RPUTs7RUFFRTtBdkU4dE9WOztBdUU1dE9ROztFQUVFO0F2RSt0T1Y7O0F1RTl1T1E7RUFBZ0M7QXZFa3ZPeEM7O0F1RWp2T1E7O0VBRUU7QXZFb3ZPVjs7QXVFbHZPUTs7RUFFRTtBdkVxdk9WOztBdUVudk9ROztFQUVFO0F2RXN2T1Y7O0F1RXB2T1E7O0VBRUU7QXZFdXZPVjs7QXVFdHdPUTtFQUFnQztBdkUwd094Qzs7QXVFendPUTs7RUFFRTtBdkU0d09WOztBdUUxd09ROztFQUVFO0F2RTZ3T1Y7O0F1RTN3T1E7O0VBRUU7QXZFOHdPVjs7QXVFNXdPUTs7RUFFRTtBdkUrd09WOztBdUU5eE9RO0VBQWdDO0F2RWt5T3hDOztBdUVqeU9ROztFQUVFO0F2RW95T1Y7O0F1RWx5T1E7O0VBRUU7QXZFcXlPVjs7QXVFbnlPUTs7RUFFRTtBdkVzeU9WOztBdUVweU9ROztFQUVFO0F2RXV5T1Y7O0F1RXR6T1E7RUFBZ0M7QXZFMHpPeEM7O0F1RXp6T1E7O0VBRUU7QXZFNHpPVjs7QXVFMXpPUTs7RUFFRTtBdkU2ek9WOztBdUUzek9ROztFQUVFO0F2RTh6T1Y7O0F1RTV6T1E7O0VBRUU7QXZFK3pPVjs7QXVFOTBPUTtFQUFnQztBdkVrMU94Qzs7QXVFajFPUTs7RUFFRTtBdkVvMU9WOztBdUVsMU9ROztFQUVFO0F2RXExT1Y7O0F1RW4xT1E7O0VBRUU7QXZFczFPVjs7QXVFcDFPUTs7RUFFRTtBdkV1MU9WOztBdUV0Mk9RO0VBQWdDO0F2RTAyT3hDOztBdUV6Mk9ROztFQUVFO0F2RTQyT1Y7O0F1RTEyT1E7O0VBRUU7QXZFNjJPVjs7QXVFMzJPUTs7RUFFRTtBdkU4Mk9WOztBdUU1Mk9ROztFQUVFO0F2RSsyT1Y7O0F1RTkzT1E7RUFBZ0M7QXZFazRPeEM7O0F1RWo0T1E7O0VBRUU7QXZFbzRPVjs7QXVFbDRPUTs7RUFFRTtBdkVxNE9WOztBdUVuNE9ROztFQUVFO0F2RXM0T1Y7O0F1RXA0T1E7O0VBRUU7QXZFdTRPVjs7QXVFdDVPUTtFQUFnQztBdkUwNU94Qzs7QXVFejVPUTs7RUFFRTtBdkU0NU9WOztBdUUxNU9ROztFQUVFO0F2RTY1T1Y7O0F1RTM1T1E7O0VBRUU7QXZFODVPVjs7QXVFNTVPUTs7RUFFRTtBdkUrNU9WOztBdUU5Nk9RO0VBQWdDO0F2RWs3T3hDOztBdUVqN09ROztFQUVFO0F2RW83T1Y7O0F1RWw3T1E7O0VBRUU7QXZFcTdPVjs7QXVFbjdPUTs7RUFFRTtBdkVzN09WOztBdUVwN09ROztFQUVFO0F2RXU3T1Y7O0F1RXQ4T1E7RUFBZ0M7QXZFMDhPeEM7O0F1RXo4T1E7O0VBRUU7QXZFNDhPVjs7QXVFMThPUTs7RUFFRTtBdkU2OE9WOztBdUUzOE9ROztFQUVFO0F2RTg4T1Y7O0F1RTU4T1E7O0VBRUU7QXZFKzhPVjs7QXVFOTlPUTtFQUFnQztBdkVrK094Qzs7QXVFaitPUTs7RUFFRTtBdkVvK09WOztBdUVsK09ROztFQUVFO0F2RXErT1Y7O0F1RW4rT1E7O0VBRUU7QXZFcytPVjs7QXVFcCtPUTs7RUFFRTtBdkV1K09WOztBdUUvOU9RO0VBQXdCO0F2RW0rT2hDOztBdUVsK09ROztFQUVFO0F2RXErT1Y7O0F1RW4rT1E7O0VBRUU7QXZFcytPVjs7QXVFcCtPUTs7RUFFRTtBdkV1K09WOztBdUVyK09ROztFQUVFO0F2RXcrT1Y7O0F1RXYvT1E7RUFBd0I7QXZFMi9PaEM7O0F1RTEvT1E7O0VBRUU7QXZFNi9PVjs7QXVFMy9PUTs7RUFFRTtBdkU4L09WOztBdUU1L09ROztFQUVFO0F2RSsvT1Y7O0F1RTcvT1E7O0VBRUU7QXZFZ2dQVjs7QXVFL2dQUTtFQUF3QjtBdkVtaFBoQzs7QXVFbGhQUTs7RUFFRTtBdkVxaFBWOztBdUVuaFBROztFQUVFO0F2RXNoUFY7O0F1RXBoUFE7O0VBRUU7QXZFdWhQVjs7QXVFcmhQUTs7RUFFRTtBdkV3aFBWOztBdUV2aVBRO0VBQXdCO0F2RTJpUGhDOztBdUUxaVBROztFQUVFO0F2RTZpUFY7O0F1RTNpUFE7O0VBRUU7QXZFOGlQVjs7QXVFNWlQUTs7RUFFRTtBdkUraVBWOztBdUU3aVBROztFQUVFO0F2RWdqUFY7O0F1RS9qUFE7RUFBd0I7QXZFbWtQaEM7O0F1RWxrUFE7O0VBRUU7QXZFcWtQVjs7QXVFbmtQUTs7RUFFRTtBdkVza1BWOztBdUVwa1BROztFQUVFO0F2RXVrUFY7O0F1RXJrUFE7O0VBRUU7QXZFd2tQVjs7QXVFbGtQSTtFQUFtQjtBdkVza1B2Qjs7QXVFcmtQSTs7RUFFRTtBdkV3a1BOOztBdUV0a1BJOztFQUVFO0F2RXlrUE47O0F1RXZrUEk7O0VBRUU7QXZFMGtQTjs7QXVFeGtQSTs7RUFFRTtBdkUya1BOOztBZXBsUEk7RXdEbERJO0lBQWdDO0V2RTJvUHRDOztFdUUxb1BNOztJQUVFO0V2RTZvUFI7O0V1RTNvUE07O0lBRUU7RXZFOG9QUjs7RXVFNW9QTTs7SUFFRTtFdkUrb1BSOztFdUU3b1BNOztJQUVFO0V2RWdwUFI7O0V1RS9wUE07SUFBZ0M7RXZFbXFQdEM7O0V1RWxxUE07O0lBRUU7RXZFcXFQUjs7RXVFbnFQTTs7SUFFRTtFdkVzcVBSOztFdUVwcVBNOztJQUVFO0V2RXVxUFI7O0V1RXJxUE07O0lBRUU7RXZFd3FQUjs7RXVFdnJQTTtJQUFnQztFdkUyclB0Qzs7RXVFMXJQTTs7SUFFRTtFdkU2clBSOztFdUUzclBNOztJQUVFO0V2RThyUFI7O0V1RTVyUE07O0lBRUU7RXZFK3JQUjs7RXVFN3JQTTs7SUFFRTtFdkVnc1BSOztFdUUvc1BNO0lBQWdDO0V2RW10UHRDOztFdUVsdFBNOztJQUVFO0V2RXF0UFI7O0V1RW50UE07O0lBRUU7RXZFc3RQUjs7RXVFcHRQTTs7SUFFRTtFdkV1dFBSOztFdUVydFBNOztJQUVFO0V2RXd0UFI7O0V1RXZ1UE07SUFBZ0M7RXZFMnVQdEM7O0V1RTF1UE07O0lBRUU7RXZFNnVQUjs7RXVFM3VQTTs7SUFFRTtFdkU4dVBSOztFdUU1dVBNOztJQUVFO0V2RSt1UFI7O0V1RTd1UE07O0lBRUU7RXZFZ3ZQUjs7RXVFL3ZQTTtJQUFnQztFdkVtd1B0Qzs7RXVFbHdQTTs7SUFFRTtFdkVxd1BSOztFdUVud1BNOztJQUVFO0V2RXN3UFI7O0V1RXB3UE07O0lBRUU7RXZFdXdQUjs7RXVFcndQTTs7SUFFRTtFdkV3d1BSOztFdUV2eFBNO0lBQWdDO0V2RTJ4UHRDOztFdUUxeFBNOztJQUVFO0V2RTZ4UFI7O0V1RTN4UE07O0lBRUU7RXZFOHhQUjs7RXVFNXhQTTs7SUFFRTtFdkUreFBSOztFdUU3eFBNOztJQUVFO0V2RWd5UFI7O0V1RS95UE07SUFBZ0M7RXZFbXpQdEM7O0V1RWx6UE07O0lBRUU7RXZFcXpQUjs7RXVFbnpQTTs7SUFFRTtFdkVzelBSOztFdUVwelBNOztJQUVFO0V2RXV6UFI7O0V1RXJ6UE07O0lBRUU7RXZFd3pQUjs7RXVFdjBQTTtJQUFnQztFdkUyMFB0Qzs7RXVFMTBQTTs7SUFFRTtFdkU2MFBSOztFdUUzMFBNOztJQUVFO0V2RTgwUFI7O0V1RTUwUE07O0lBRUU7RXZFKzBQUjs7RXVFNzBQTTs7SUFFRTtFdkVnMVBSOztFdUUvMVBNO0lBQWdDO0V2RW0yUHRDOztFdUVsMlBNOztJQUVFO0V2RXEyUFI7O0V1RW4yUE07O0lBRUU7RXZFczJQUjs7RXVFcDJQTTs7SUFFRTtFdkV1MlBSOztFdUVyMlBNOztJQUVFO0V2RXcyUFI7O0V1RXYzUE07SUFBZ0M7RXZFMjNQdEM7O0V1RTEzUE07O0lBRUU7RXZFNjNQUjs7RXVFMzNQTTs7SUFFRTtFdkU4M1BSOztFdUU1M1BNOztJQUVFO0V2RSszUFI7O0V1RTczUE07O0lBRUU7RXZFZzRQUjs7RXVFLzRQTTtJQUFnQztFdkVtNVB0Qzs7RXVFbDVQTTs7SUFFRTtFdkVxNVBSOztFdUVuNVBNOztJQUVFO0V2RXM1UFI7O0V1RXA1UE07O0lBRUU7RXZFdTVQUjs7RXVFcjVQTTs7SUFFRTtFdkV3NVBSOztFdUVoNVBNO0lBQXdCO0V2RW81UDlCOztFdUVuNVBNOztJQUVFO0V2RXM1UFI7O0V1RXA1UE07O0lBRUU7RXZFdTVQUjs7RXVFcjVQTTs7SUFFRTtFdkV3NVBSOztFdUV0NVBNOztJQUVFO0V2RXk1UFI7O0V1RXg2UE07SUFBd0I7RXZFNDZQOUI7O0V1RTM2UE07O0lBRUU7RXZFODZQUjs7RXVFNTZQTTs7SUFFRTtFdkUrNlBSOztFdUU3NlBNOztJQUVFO0V2RWc3UFI7O0V1RTk2UE07O0lBRUU7RXZFaTdQUjs7RXVFaDhQTTtJQUF3QjtFdkVvOFA5Qjs7RXVFbjhQTTs7SUFFRTtFdkVzOFBSOztFdUVwOFBNOztJQUVFO0V2RXU4UFI7O0V1RXI4UE07O0lBRUU7RXZFdzhQUjs7RXVFdDhQTTs7SUFFRTtFdkV5OFBSOztFdUV4OVBNO0lBQXdCO0V2RTQ5UDlCOztFdUUzOVBNOztJQUVFO0V2RTg5UFI7O0V1RTU5UE07O0lBRUU7RXZFKzlQUjs7RXVFNzlQTTs7SUFFRTtFdkVnK1BSOztFdUU5OVBNOztJQUVFO0V2RWkrUFI7O0V1RWgvUE07SUFBd0I7RXZFby9QOUI7O0V1RW4vUE07O0lBRUU7RXZFcy9QUjs7RXVFcC9QTTs7SUFFRTtFdkV1L1BSOztFdUVyL1BNOztJQUVFO0V2RXcvUFI7O0V1RXQvUE07O0lBRUU7RXZFeS9QUjs7RXVFbi9QRTtJQUFtQjtFdkV1L1ByQjs7RXVFdC9QRTs7SUFFRTtFdkV5L1BKOztFdUV2L1BFOztJQUVFO0V2RTAvUEo7O0V1RXgvUEU7O0lBRUU7RXZFMi9QSjs7RXVFei9QRTs7SUFFRTtFdkU0L1BKO0FBQ0Y7QWV0Z1FJO0V3RGxESTtJQUFnQztFdkU0alF0Qzs7RXVFM2pRTTs7SUFFRTtFdkU4alFSOztFdUU1alFNOztJQUVFO0V2RStqUVI7O0V1RTdqUU07O0lBRUU7RXZFZ2tRUjs7RXVFOWpRTTs7SUFFRTtFdkVpa1FSOztFdUVobFFNO0lBQWdDO0V2RW9sUXRDOztFdUVubFFNOztJQUVFO0V2RXNsUVI7O0V1RXBsUU07O0lBRUU7RXZFdWxRUjs7RXVFcmxRTTs7SUFFRTtFdkV3bFFSOztFdUV0bFFNOztJQUVFO0V2RXlsUVI7O0V1RXhtUU07SUFBZ0M7RXZFNG1RdEM7O0V1RTNtUU07O0lBRUU7RXZFOG1RUjs7RXVFNW1RTTs7SUFFRTtFdkUrbVFSOztFdUU3bVFNOztJQUVFO0V2RWduUVI7O0V1RTltUU07O0lBRUU7RXZFaW5RUjs7RXVFaG9RTTtJQUFnQztFdkVvb1F0Qzs7RXVFbm9RTTs7SUFFRTtFdkVzb1FSOztFdUVwb1FNOztJQUVFO0V2RXVvUVI7O0V1RXJvUU07O0lBRUU7RXZFd29RUjs7RXVFdG9RTTs7SUFFRTtFdkV5b1FSOztFdUV4cFFNO0lBQWdDO0V2RTRwUXRDOztFdUUzcFFNOztJQUVFO0V2RThwUVI7O0V1RTVwUU07O0lBRUU7RXZFK3BRUjs7RXVFN3BRTTs7SUFFRTtFdkVncVFSOztFdUU5cFFNOztJQUVFO0V2RWlxUVI7O0V1RWhyUU07SUFBZ0M7RXZFb3JRdEM7O0V1RW5yUU07O0lBRUU7RXZFc3JRUjs7RXVFcHJRTTs7SUFFRTtFdkV1clFSOztFdUVyclFNOztJQUVFO0V2RXdyUVI7O0V1RXRyUU07O0lBRUU7RXZFeXJRUjs7RXVFeHNRTTtJQUFnQztFdkU0c1F0Qzs7RXVFM3NRTTs7SUFFRTtFdkU4c1FSOztFdUU1c1FNOztJQUVFO0V2RStzUVI7O0V1RTdzUU07O0lBRUU7RXZFZ3RRUjs7RXVFOXNRTTs7SUFFRTtFdkVpdFFSOztFdUVodVFNO0lBQWdDO0V2RW91UXRDOztFdUVudVFNOztJQUVFO0V2RXN1UVI7O0V1RXB1UU07O0lBRUU7RXZFdXVRUjs7RXVFcnVRTTs7SUFFRTtFdkV3dVFSOztFdUV0dVFNOztJQUVFO0V2RXl1UVI7O0V1RXh2UU07SUFBZ0M7RXZFNHZRdEM7O0V1RTN2UU07O0lBRUU7RXZFOHZRUjs7RXVFNXZRTTs7SUFFRTtFdkUrdlFSOztFdUU3dlFNOztJQUVFO0V2RWd3UVI7O0V1RTl2UU07O0lBRUU7RXZFaXdRUjs7RXVFaHhRTTtJQUFnQztFdkVveFF0Qzs7RXVFbnhRTTs7SUFFRTtFdkVzeFFSOztFdUVweFFNOztJQUVFO0V2RXV4UVI7O0V1RXJ4UU07O0lBRUU7RXZFd3hRUjs7RXVFdHhRTTs7SUFFRTtFdkV5eFFSOztFdUV4eVFNO0lBQWdDO0V2RTR5UXRDOztFdUUzeVFNOztJQUVFO0V2RTh5UVI7O0V1RTV5UU07O0lBRUU7RXZFK3lRUjs7RXVFN3lRTTs7SUFFRTtFdkVnelFSOztFdUU5eVFNOztJQUVFO0V2RWl6UVI7O0V1RWgwUU07SUFBZ0M7RXZFbzBRdEM7O0V1RW4wUU07O0lBRUU7RXZFczBRUjs7RXVFcDBRTTs7SUFFRTtFdkV1MFFSOztFdUVyMFFNOztJQUVFO0V2RXcwUVI7O0V1RXQwUU07O0lBRUU7RXZFeTBRUjs7RXVFajBRTTtJQUF3QjtFdkVxMFE5Qjs7RXVFcDBRTTs7SUFFRTtFdkV1MFFSOztFdUVyMFFNOztJQUVFO0V2RXcwUVI7O0V1RXQwUU07O0lBRUU7RXZFeTBRUjs7RXVFdjBRTTs7SUFFRTtFdkUwMFFSOztFdUV6MVFNO0lBQXdCO0V2RTYxUTlCOztFdUU1MVFNOztJQUVFO0V2RSsxUVI7O0V1RTcxUU07O0lBRUU7RXZFZzJRUjs7RXVFOTFRTTs7SUFFRTtFdkVpMlFSOztFdUUvMVFNOztJQUVFO0V2RWsyUVI7O0V1RWozUU07SUFBd0I7RXZFcTNROUI7O0V1RXAzUU07O0lBRUU7RXZFdTNRUjs7RXVFcjNRTTs7SUFFRTtFdkV3M1FSOztFdUV0M1FNOztJQUVFO0V2RXkzUVI7O0V1RXYzUU07O0lBRUU7RXZFMDNRUjs7RXVFejRRTTtJQUF3QjtFdkU2NFE5Qjs7RXVFNTRRTTs7SUFFRTtFdkUrNFFSOztFdUU3NFFNOztJQUVFO0V2RWc1UVI7O0V1RTk0UU07O0lBRUU7RXZFaTVRUjs7RXVFLzRRTTs7SUFFRTtFdkVrNVFSOztFdUVqNlFNO0lBQXdCO0V2RXE2UTlCOztFdUVwNlFNOztJQUVFO0V2RXU2UVI7O0V1RXI2UU07O0lBRUU7RXZFdzZRUjs7RXVFdDZRTTs7SUFFRTtFdkV5NlFSOztFdUV2NlFNOztJQUVFO0V2RTA2UVI7O0V1RXA2UUU7SUFBbUI7RXZFdzZRckI7O0V1RXY2UUU7O0lBRUU7RXZFMDZRSjs7RXVFeDZRRTs7SUFFRTtFdkUyNlFKOztFdUV6NlFFOztJQUVFO0V2RTQ2UUo7O0V1RTE2UUU7O0lBRUU7RXZFNjZRSjtBQUNGO0FldjdRSTtFd0RsREk7SUFBZ0M7RXZFNitRdEM7O0V1RTUrUU07O0lBRUU7RXZFKytRUjs7RXVFNytRTTs7SUFFRTtFdkVnL1FSOztFdUU5K1FNOztJQUVFO0V2RWkvUVI7O0V1RS8rUU07O0lBRUU7RXZFay9RUjs7RXVFamdSTTtJQUFnQztFdkVxZ1J0Qzs7RXVFcGdSTTs7SUFFRTtFdkV1Z1JSOztFdUVyZ1JNOztJQUVFO0V2RXdnUlI7O0V1RXRnUk07O0lBRUU7RXZFeWdSUjs7RXVFdmdSTTs7SUFFRTtFdkUwZ1JSOztFdUV6aFJNO0lBQWdDO0V2RTZoUnRDOztFdUU1aFJNOztJQUVFO0V2RStoUlI7O0V1RTdoUk07O0lBRUU7RXZFZ2lSUjs7RXVFOWhSTTs7SUFFRTtFdkVpaVJSOztFdUUvaFJNOztJQUVFO0V2RWtpUlI7O0V1RWpqUk07SUFBZ0M7RXZFcWpSdEM7O0V1RXBqUk07O0lBRUU7RXZFdWpSUjs7RXVFcmpSTTs7SUFFRTtFdkV3alJSOztFdUV0alJNOztJQUVFO0V2RXlqUlI7O0V1RXZqUk07O0lBRUU7RXZFMGpSUjs7RXVFemtSTTtJQUFnQztFdkU2a1J0Qzs7RXVFNWtSTTs7SUFFRTtFdkUra1JSOztFdUU3a1JNOztJQUVFO0V2RWdsUlI7O0V1RTlrUk07O0lBRUU7RXZFaWxSUjs7RXVFL2tSTTs7SUFFRTtFdkVrbFJSOztFdUVqbVJNO0lBQWdDO0V2RXFtUnRDOztFdUVwbVJNOztJQUVFO0V2RXVtUlI7O0V1RXJtUk07O0lBRUU7RXZFd21SUjs7RXVFdG1STTs7SUFFRTtFdkV5bVJSOztFdUV2bVJNOztJQUVFO0V2RTBtUlI7O0V1RXpuUk07SUFBZ0M7RXZFNm5SdEM7O0V1RTVuUk07O0lBRUU7RXZFK25SUjs7RXVFN25STTs7SUFFRTtFdkVnb1JSOztFdUU5blJNOztJQUVFO0V2RWlvUlI7O0V1RS9uUk07O0lBRUU7RXZFa29SUjs7RXVFanBSTTtJQUFnQztFdkVxcFJ0Qzs7RXVFcHBSTTs7SUFFRTtFdkV1cFJSOztFdUVycFJNOztJQUVFO0V2RXdwUlI7O0V1RXRwUk07O0lBRUU7RXZFeXBSUjs7RXVFdnBSTTs7SUFFRTtFdkUwcFJSOztFdUV6cVJNO0lBQWdDO0V2RTZxUnRDOztFdUU1cVJNOztJQUVFO0V2RStxUlI7O0V1RTdxUk07O0lBRUU7RXZFZ3JSUjs7RXVFOXFSTTs7SUFFRTtFdkVpclJSOztFdUUvcVJNOztJQUVFO0V2RWtyUlI7O0V1RWpzUk07SUFBZ0M7RXZFcXNSdEM7O0V1RXBzUk07O0lBRUU7RXZFdXNSUjs7RXVFcnNSTTs7SUFFRTtFdkV3c1JSOztFdUV0c1JNOztJQUVFO0V2RXlzUlI7O0V1RXZzUk07O0lBRUU7RXZFMHNSUjs7RXVFenRSTTtJQUFnQztFdkU2dFJ0Qzs7RXVFNXRSTTs7SUFFRTtFdkUrdFJSOztFdUU3dFJNOztJQUVFO0V2RWd1UlI7O0V1RTl0Uk07O0lBRUU7RXZFaXVSUjs7RXVFL3RSTTs7SUFFRTtFdkVrdVJSOztFdUVqdlJNO0lBQWdDO0V2RXF2UnRDOztFdUVwdlJNOztJQUVFO0V2RXV2UlI7O0V1RXJ2Uk07O0lBRUU7RXZFd3ZSUjs7RXVFdHZSTTs7SUFFRTtFdkV5dlJSOztFdUV2dlJNOztJQUVFO0V2RTB2UlI7O0V1RWx2Uk07SUFBd0I7RXZFc3ZSOUI7O0V1RXJ2Uk07O0lBRUU7RXZFd3ZSUjs7RXVFdHZSTTs7SUFFRTtFdkV5dlJSOztFdUV2dlJNOztJQUVFO0V2RTB2UlI7O0V1RXh2Uk07O0lBRUU7RXZFMnZSUjs7RXVFMXdSTTtJQUF3QjtFdkU4d1I5Qjs7RXVFN3dSTTs7SUFFRTtFdkVneFJSOztFdUU5d1JNOztJQUVFO0V2RWl4UlI7O0V1RS93Uk07O0lBRUU7RXZFa3hSUjs7RXVFaHhSTTs7SUFFRTtFdkVteFJSOztFdUVseVJNO0lBQXdCO0V2RXN5UjlCOztFdUVyeVJNOztJQUVFO0V2RXd5UlI7O0V1RXR5Uk07O0lBRUU7RXZFeXlSUjs7RXVFdnlSTTs7SUFFRTtFdkUweVJSOztFdUV4eVJNOztJQUVFO0V2RTJ5UlI7O0V1RTF6Uk07SUFBd0I7RXZFOHpSOUI7O0V1RTd6Uk07O0lBRUU7RXZFZzBSUjs7RXVFOXpSTTs7SUFFRTtFdkVpMFJSOztFdUUvelJNOztJQUVFO0V2RWswUlI7O0V1RWgwUk07O0lBRUU7RXZFbTBSUjs7RXVFbDFSTTtJQUF3QjtFdkVzMVI5Qjs7RXVFcjFSTTs7SUFFRTtFdkV3MVJSOztFdUV0MVJNOztJQUVFO0V2RXkxUlI7O0V1RXYxUk07O0lBRUU7RXZFMDFSUjs7RXVFeDFSTTs7SUFFRTtFdkUyMVJSOztFdUVyMVJFO0lBQW1CO0V2RXkxUnJCOztFdUV4MVJFOztJQUVFO0V2RTIxUko7O0V1RXoxUkU7O0lBRUU7RXZFNDFSSjs7RXVFMTFSRTs7SUFFRTtFdkU2MVJKOztFdUUzMVJFOztJQUVFO0V2RTgxUko7QUFDRjtBZXgyUkk7RXdEbERJO0lBQWdDO0V2RTg1UnRDOztFdUU3NVJNOztJQUVFO0V2RWc2UlI7O0V1RTk1Uk07O0lBRUU7RXZFaTZSUjs7RXVFLzVSTTs7SUFFRTtFdkVrNlJSOztFdUVoNlJNOztJQUVFO0V2RW02UlI7O0V1RWw3Uk07SUFBZ0M7RXZFczdSdEM7O0V1RXI3Uk07O0lBRUU7RXZFdzdSUjs7RXVFdDdSTTs7SUFFRTtFdkV5N1JSOztFdUV2N1JNOztJQUVFO0V2RTA3UlI7O0V1RXg3Uk07O0lBRUU7RXZFMjdSUjs7RXVFMThSTTtJQUFnQztFdkU4OFJ0Qzs7RXVFNzhSTTs7SUFFRTtFdkVnOVJSOztFdUU5OFJNOztJQUVFO0V2RWk5UlI7O0V1RS84Uk07O0lBRUU7RXZFazlSUjs7RXVFaDlSTTs7SUFFRTtFdkVtOVJSOztFdUVsK1JNO0lBQWdDO0V2RXMrUnRDOztFdUVyK1JNOztJQUVFO0V2RXcrUlI7O0V1RXQrUk07O0lBRUU7RXZFeStSUjs7RXVFditSTTs7SUFFRTtFdkUwK1JSOztFdUV4K1JNOztJQUVFO0V2RTIrUlI7O0V1RTEvUk07SUFBZ0M7RXZFOC9SdEM7O0V1RTcvUk07O0lBRUU7RXZFZ2dTUjs7RXVFOS9STTs7SUFFRTtFdkVpZ1NSOztFdUUvL1JNOztJQUVFO0V2RWtnU1I7O0V1RWhnU007O0lBRUU7RXZFbWdTUjs7RXVFbGhTTTtJQUFnQztFdkVzaFN0Qzs7RXVFcmhTTTs7SUFFRTtFdkV3aFNSOztFdUV0aFNNOztJQUVFO0V2RXloU1I7O0V1RXZoU007O0lBRUU7RXZFMGhTUjs7RXVFeGhTTTs7SUFFRTtFdkUyaFNSOztFdUUxaVNNO0lBQWdDO0V2RThpU3RDOztFdUU3aVNNOztJQUVFO0V2RWdqU1I7O0V1RTlpU007O0lBRUU7RXZFaWpTUjs7RXVFL2lTTTs7SUFFRTtFdkVralNSOztFdUVoalNNOztJQUVFO0V2RW1qU1I7O0V1RWxrU007SUFBZ0M7RXZFc2tTdEM7O0V1RXJrU007O0lBRUU7RXZFd2tTUjs7RXVFdGtTTTs7SUFFRTtFdkV5a1NSOztFdUV2a1NNOztJQUVFO0V2RTBrU1I7O0V1RXhrU007O0lBRUU7RXZFMmtTUjs7RXVFMWxTTTtJQUFnQztFdkU4bFN0Qzs7RXVFN2xTTTs7SUFFRTtFdkVnbVNSOztFdUU5bFNNOztJQUVFO0V2RWltU1I7O0V1RS9sU007O0lBRUU7RXZFa21TUjs7RXVFaG1TTTs7SUFFRTtFdkVtbVNSOztFdUVsblNNO0lBQWdDO0V2RXNuU3RDOztFdUVyblNNOztJQUVFO0V2RXduU1I7O0V1RXRuU007O0lBRUU7RXZFeW5TUjs7RXVFdm5TTTs7SUFFRTtFdkUwblNSOztFdUV4blNNOztJQUVFO0V2RTJuU1I7O0V1RTFvU007SUFBZ0M7RXZFOG9TdEM7O0V1RTdvU007O0lBRUU7RXZFZ3BTUjs7RXVFOW9TTTs7SUFFRTtFdkVpcFNSOztFdUUvb1NNOztJQUVFO0V2RWtwU1I7O0V1RWhwU007O0lBRUU7RXZFbXBTUjs7RXVFbHFTTTtJQUFnQztFdkVzcVN0Qzs7RXVFcnFTTTs7SUFFRTtFdkV3cVNSOztFdUV0cVNNOztJQUVFO0V2RXlxU1I7O0V1RXZxU007O0lBRUU7RXZFMHFTUjs7RXVFeHFTTTs7SUFFRTtFdkUycVNSOztFdUVucVNNO0lBQXdCO0V2RXVxUzlCOztFdUV0cVNNOztJQUVFO0V2RXlxU1I7O0V1RXZxU007O0lBRUU7RXZFMHFTUjs7RXVFeHFTTTs7SUFFRTtFdkUycVNSOztFdUV6cVNNOztJQUVFO0V2RTRxU1I7O0V1RTNyU007SUFBd0I7RXZFK3JTOUI7O0V1RTlyU007O0lBRUU7RXZFaXNTUjs7RXVFL3JTTTs7SUFFRTtFdkVrc1NSOztFdUVoc1NNOztJQUVFO0V2RW1zU1I7O0V1RWpzU007O0lBRUU7RXZFb3NTUjs7RXVFbnRTTTtJQUF3QjtFdkV1dFM5Qjs7RXVFdHRTTTs7SUFFRTtFdkV5dFNSOztFdUV2dFNNOztJQUVFO0V2RTB0U1I7O0V1RXh0U007O0lBRUU7RXZFMnRTUjs7RXVFenRTTTs7SUFFRTtFdkU0dFNSOztFdUUzdVNNO0lBQXdCO0V2RSt1UzlCOztFdUU5dVNNOztJQUVFO0V2RWl2U1I7O0V1RS91U007O0lBRUU7RXZFa3ZTUjs7RXVFaHZTTTs7SUFFRTtFdkVtdlNSOztFdUVqdlNNOztJQUVFO0V2RW92U1I7O0V1RW53U007SUFBd0I7RXZFdXdTOUI7O0V1RXR3U007O0lBRUU7RXZFeXdTUjs7RXVFdndTTTs7SUFFRTtFdkUwd1NSOztFdUV4d1NNOztJQUVFO0V2RTJ3U1I7O0V1RXp3U007O0lBRUU7RXZFNHdTUjs7RXVFdHdTRTtJQUFtQjtFdkUwd1NyQjs7RXVFendTRTs7SUFFRTtFdkU0d1NKOztFdUUxd1NFOztJQUVFO0V2RTZ3U0o7O0V1RTN3U0U7O0lBRUU7RXZFOHdTSjs7RXVFNXdTRTs7SUFFRTtFdkUrd1NKO0FBQ0Y7QXdFaDFTRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtBeEVnMVNKOztBeUUxMVNBO0VBQWtCO0F6RTgxU2xCOztBeUUxMVNBO0VBQWlCO0F6RTgxU2pCOztBeUU3MVNBO0VBQWlCO0F6RWkyU2pCOztBeUVoMlNBO0VBQWlCO0F6RW8yU2pCOztBeUVuMlNBO0VDVEU7RUFDQTtFQUNBO0ExRWczU0Y7O0F5RWoyU0k7RUFBd0I7QXpFcTJTNUI7O0F5RXAyU0k7RUFBd0I7QXpFdzJTNUI7O0F5RXYyU0k7RUFBd0I7QXpFMjJTNUI7O0FldDBTSTtFMER2Q0E7SUFBd0I7RXpFazNTMUI7O0V5RWozU0U7SUFBd0I7RXpFcTNTMUI7O0V5RXAzU0U7SUFBd0I7RXpFdzNTMUI7QUFDRjtBZXAxU0k7RTBEdkNBO0lBQXdCO0V6RSszUzFCOztFeUU5M1NFO0lBQXdCO0V6RWs0UzFCOztFeUVqNFNFO0lBQXdCO0V6RXE0UzFCO0FBQ0Y7QWVqMlNJO0UwRHZDQTtJQUF3QjtFekU0NFMxQjs7RXlFMzRTRTtJQUF3QjtFekUrNFMxQjs7RXlFOTRTRTtJQUF3QjtFekVrNVMxQjtBQUNGO0FlOTJTSTtFMER2Q0E7SUFBd0I7RXpFeTVTMUI7O0V5RXg1U0U7SUFBd0I7RXpFNDVTMUI7O0V5RTM1U0U7SUFBd0I7RXpFKzVTMUI7QUFDRjtBeUUxNVNBO0VBQW1CO0F6RTY1U25COztBeUU1NVNBO0VBQW1CO0F6RWc2U25COztBeUUvNVNBO0VBQW1CO0F6RW02U25COztBeUUvNVNBO0VBQXVCO0F6RW02U3ZCOztBeUVsNlNBO0VBQXVCO0F6RXM2U3ZCOztBeUVyNlNBO0VBQXVCO0F6RXk2U3ZCOztBeUV4NlNBO0VBQXVCO0F6RTQ2U3ZCOztBeUUzNlNBO0VBQXVCO0F6RSs2U3ZCOztBeUU5NlNBO0VBQXVCO0F6RWs3U3ZCOztBeUU5NlNBO0VBQWM7QXpFazdTZDs7QTJFejlTRTtFQUNFO0EzRTQ5U0o7O0FNbDlTRTtFcUVMTTtBM0UyOVNSOztBMkVqK1NFO0VBQ0U7QTNFbytTSjs7QU0xOVNFO0VxRUxNO0EzRW0rU1I7O0EyRXorU0U7RUFDRTtBM0U0K1NKOztBTWwrU0U7RXFFTE07QTNFMitTUjs7QTJFai9TRTtFQUNFO0EzRW8vU0o7O0FNMStTRTtFcUVMTTtBM0VtL1NSOztBMkV6L1NFO0VBQ0U7QTNFNC9TSjs7QU1sL1NFO0VxRUxNO0EzRTIvU1I7O0EyRWpnVEU7RUFDRTtBM0VvZ1RKOztBTTEvU0U7RXFFTE07QTNFbWdUUjs7QTJFemdURTtFQUNFO0EzRTRnVEo7O0FNbGdURTtFcUVMTTtBM0UyZ1RSOztBMkVqaFRFO0VBQ0U7QTNFb2hUSjs7QU0xZ1RFO0VxRUxNO0EzRW1oVFI7O0F5RTUrU0E7RUFBYTtBekVnL1NiOztBeUUvK1NBO0VBQWM7QXpFbS9TZDs7QXlFai9TQTtFQUFpQjtBekVxL1NqQjs7QXlFcC9TQTtFQUFpQjtBekV3L1NqQjs7QXlFcC9TQTtFR3ZERTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RStpVEY7O0F5RXgvU0E7RUFBd0I7QXpFNC9TeEI7O0F5RTEvU0E7RUFDRTtFQUNBO0F6RTYvU0Y7O0F5RXgvU0E7RUFBYztBekU0L1NkOztBNkU3alRBO0VBQ0U7QTdFZ2tURjs7QTZFN2pUQTtFQUNFO0E3RWdrVEY7O0E4RWhrVEU7RUFDRTs7O0lBS0U7SUFFQTtFOUVna1RKOztFOEU1alRJO0lBQ0U7RTlFK2pUTjs7RThFdGpURTtJQUNFO0U5RXlqVEo7O0U4RTNpVEU7SUFDRTtFOUU4aVRKOztFOEU1aVRFOztJQUVFO0lBQ0E7RTlFK2lUSjs7RThFdmlURTtJQUNFO0U5RTBpVEo7O0U4RXZpVEU7O0lBRUU7RTlFMGlUSjs7RThFdmlURTs7O0lBR0U7SUFDQTtFOUUwaVRKOztFOEV2aVRFOztJQUVFO0U5RTBpVEo7O0U4RWxpVEU7SUFDRSxRMUUyaEM4QjtFSjBnUmxDO0U4RW5pVEU7SUFDRTtFOUVxaVRKOztFOEVuaVRFO0lBQ0U7RTlFc2lUSjs7RThFbGlURTtJQUNFO0U5RXFpVEo7O0U4RW5pVEU7SUFDRTtFOUVzaVRKOztFOEVuaVRFO0lBQ0U7RTlFc2lUSjtFOEVwaVRJOztJQUVFO0U5RXNpVE47O0U4RWppVEk7O0lBRUU7RTlFb2lUTjs7RThFaGlURTtJQUNFO0U5RW1pVEo7RThFamlUSTs7OztJQUlFLHFCMUV2SEc7RUowcFRUOztFOEUvaFRFO0lBQ0U7SUFDQSxxQjFFN0hLO0VKK3BUVDtBQUNGO0ErRWhxVEE7RUFDRTtBL0VrcVRGOztBK0UvcFRBO0VBQ0U7QS9Fa3FURjs7QStFL3BUQTtFQUNFO0EvRWtxVEY7O0ErRS9wVEE7RUFDRTtBL0VrcVRGOztBK0UvcFRBO0VBQ0U7QS9Fa3FURjs7QStFL3BUQTtFQUNFO0EvRWtxVEY7O0ErRS9wVEE7RUFDRTtBL0VrcVRGOztBK0UvcFRBO0VBQ0U7QS9Fa3FURjs7QStFL3BUQTtFQUNFO0EvRWtxVEY7O0FnRjdzVEE7RUFDRTtBaEZndFRGOztBZ0Y3c1RBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCaEZKVztBQW90VGI7QWU5cFRJO0VpRXhESjtJQVNJLHlCaEZSUztFQXl0VFg7QUFDRjtBZ0Yvc1RFO0VBQ0U7QWhGaXRUSjtBZ0Y5c1RFO0VBQ0U7RUFDQTtBaEZndFRKOztBZ0Y1c1RBO0VBQ0UseUJoRnJCVztFZ0ZzQlg7QWhGK3NURjtBZ0Y3c1RFO0VBQ0U7QWhGK3NUSjtBZ0Y1c1RFO0VBQ0Usc0JoRmhDVTtFZ0ZpQ1Y7QWhGOHNUSjtBZ0Y1c1RJO0VBQ0U7QWhGOHNUTjtBZ0Y1c1RNO0VBQ0U7QWhGOHNUUjtBZ0Y1c1RRO0VBQ0U7QWhGOHNUVjtBZ0Z6c1RJO0VBQ0UsbUJoRjlDTztFZ0YrQ1A7RUFDQTtFQUNBO0VBQ0E7QWhGMnNUTjtBZ0Z6c1RNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEYyc1RSO0FnRnZzVFE7RUFDRTtFQUNBO0FoRnlzVFY7QWdGcnNUTTtFQUNFO0FoRnVzVFI7QWdGcHNUTTtFQUNFO0FoRnNzVFI7QWdGbnNUTTtFQUNFO0VBQ0E7RUFDQTtBaEZxc1RSO0FnRmxzVE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEZvc1RSO0FnRmxzVFE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhGb3NUVjtBZ0Zsc1RVO0VBQ0U7QWhGb3NUWjtBZ0Y5clRJO0VBQ0U7RUFDQTtBaEZnc1ROO0FnRjlyVE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEZnc1RSO0FnRjlyVFE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhGZ3NUVjs7QWdGenJUQTtFQUNFO0VBQ0EsbUJoRnBJVztBQWcwVGI7O0FnRnpyVEE7RUFDRTtFQUNBO0VBQ0E7QWhGNHJURjs7QWdGenJUQTtFQUNFLHlCaEYvSVc7QUEyMFRiOztBZ0Z6clRBO0VBQ0UseUJoRmxKVztBQTgwVGI7O0FnRnpyVEE7RUFDRTtBaEY0clRGOztBZ0Z6clRBO0VBQ0UsZWhGeEpVO0VnRnlKVixpQmhGekpVO0FBcTFUWjs7QWdGdnJUSTtFQUNFO0FoRjByVE47QWdGdHJUTTtFQUNFO0FoRndyVFI7O0FnRmpyVEU7RUFDRSx5QkRwTE87QS9FdzJUWDtBZ0ZqclRFO0VBQ0UseUJEdkxRO0EvRTAyVFo7QWdGaHJURTtFQUNFLHVCRDFMUztBL0U0MlRiO0FnRi9xVEU7RUFDRSx5QkQ3TFU7QS9FODJUZDtBZ0Y5cVRFO0VBQ0UseUJEaE1TO0EvRWczVGI7QWdGN3FURTtFQUNFLHlCRG5NUTtBL0VrM1RaO0FnRjVxVEU7RUFDRSx5QkR0TVU7QS9FbzNUZDtBZ0YzcVRFO0VBQ0UseUJEeE1RO0EvRXEzVFo7O0FnRnZxVEk7RUFDRTtFQUNBO0VBQ0E7QWhGMHFUTjs7QWdGanFUQTtFQUNFO0FoRm9xVEY7O0FnRmpxVEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhGb3FURjs7QWdGaHFURTtFQUNFO0FoRm1xVEo7QWdGanFUSTtFQUNFO0FoRm1xVE47O0FnRjlwVEE7RUFDRTtBaEZpcVRGOztBZ0Y5cFRBO0VBQ0U7QWhGaXFURjs7QWdGOXBUQTtFQUNFO0FoRmlxVEY7O0FlMTJUSTtFaUU2TUY7SUFDRTtFaEZpcVRGOztFZ0Y5cFRBO0lBQ0U7RWhGaXFURjtFZ0Y5cFRJO0lBQ0U7RWhGZ3FUTjtBQUNGO0FnRjNwVEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEY2cFRGO0FnRjNwVEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEY2cFRKO0FnRjFwVEU7RUFDRTtFQUNBO0FoRjRwVEo7QWdGenBURTtFQUNFO0FoRjJwVEo7QWdGenBUSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhGMnBUTjtBZ0Z2cFRFO0VBQ0U7RUFDQTtBaEZ5cFRKO0FnRnZwVEk7RUFDRTtBaEZ5cFROOztBaUZwOVRBO0VBQ0UsZ0JqRkVZO0FBcTlUZDs7QWlGcDlUQTtFQUNFO0FqRnU5VEY7QWVoNlRJO0VrRXhESjtJQUlJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpGdzlURjtFaUZ0OVRFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakZ3OVRKO0VpRnQ5VEk7SUFDRTtFakZ3OVROO0VpRnI5VEk7SUFDRTtFakZ1OVROO0FBQ0Y7O0FpRmw5VEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakZxOVRGO0FpRm45VEU7RUFDRTtBakZxOVRKO0FpRm45VEk7RUFDRTtBakZxOVROO0FpRmg5VEk7RUFDRTtBakZrOVROO0FpRi84VEk7RUFDRTtFQUNBLG1CakZoRE87RWlGaURQO0FqRmk5VE47QWlGLzhUTTtFQUNFO0VBQ0E7QWpGaTlUUjtBaUYvOFRRO0VBQ0U7QWpGaTlUVjtBaUZ6OFRNO0VBQ0U7QWpGMjhUUjtBaUZ4OFRNO0VBQ0U7QWpGMDhUUjtBaUZ4OFRRO0VBQ0U7RUFDQTtFQUNBO0FqRjA4VFY7QWlGeDhUVTtFQUNFO0FqRjA4VFo7QWlGeDhUWTtFQUNFO0FqRjA4VGQ7QWlGdDhUVTtFQUNFO0FqRnc4VFo7QWV0K1RJO0VrRTVCSjtJQWtFSTtFakZvOFRGO0VpRmw4VEU7SUFDRTtFakZvOFRKO0VpRmw4VEk7SUFDRTtFakZvOFROO0VpRmg4VEU7SUFDRTtFakZrOFRKO0VpRmg4VEk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqRms4VE47RWlGaDhUTTtJQUNFO0VqRms4VFI7RWlGaDhUUTtJQUNFO0VqRms4VFY7RWlGOTdUTTtJQUNFO0VqRmc4VFI7RWlGNzdUTTtJQUNFO0lBQ0E7RWpGKzdUUjtFaUY1N1RNO0lBQ0U7RWpGODdUUjtFaUYxN1RJO0lBQ0U7SUFDQTtFakY0N1ROO0VpRjE3VE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtFakY0N1RSO0VpRjE3VFE7SUFDRTtFakY0N1RWO0VpRng3VE07SUFDRTtFakYwN1RSO0FBQ0Y7O0FrRnZsVUE7RUFDRTtFQUNBO0FsRjBsVUY7O0FtRjNsVUU7RUFDRTtBbkY4bFVKO0FtRjNsVUU7RUFDRTtBbkY2bFVKO0FtRjFsVUU7RUFDRTtBbkY0bFVKO0FtRnpsVUU7RUFDRTtBbkYybFVKO0FtRnhsVUU7RUFDRTtFQUNBO0FuRjBsVUo7QW1GdGxVSTtFQUNFO0FuRndsVU47QW1GcGxVRTtFQUNFO0FuRnNsVUo7QW1GcGxVSTtFQUNFO0FuRnNsVU47QW1GbGxVRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRm9sVUo7QW1GbGxVSTtFQUNFO0FuRm9sVU47QW1GamxVSTtFQUNFO0VBQ0E7QW5GbWxVTjtBbUZobFVJO0VBQ0U7RUFDQTtFQUNBO0FuRmtsVU47QW1GOWtVRTtFQUNFO0FuRmdsVUo7QW1GOWtVSTtFQUNFO0VBQ0E7QW5GZ2xVTjtBbUYza1VJO0VBQ0U7QW5GNmtVTjtBZXpsVUk7RW9FaUJBO0lBQ0U7RW5GMmtVSjtFbUZ6a1VJO0lBQ0U7RW5GMmtVTjtFbUZ4a1VJO0lBQ0U7RW5GMGtVTjtBQUNGOztBbUZua1VJO0VBQ0U7QW5Gc2tVTjs7QW9GcHFVQTtFQUNFO0VBQ0E7QXBGdXFVRjs7QW9GcHFVQTtFQUNFO0VBQ0E7QXBGdXFVRjs7QW9GbnFVRTtFQUNFO0VBQ0E7QXBGc3FVSjtBb0ZwcVVJO0VBQ0U7QXBGc3FVTjs7QXFGdHJVQTtFQUNFO0VBQ0E7QXJGeXJVRjs7QXFGdHJVQTtFQUNFO0lBQUs7RXJGMHJVTDtFcUZ6clVBO0lBQU07RXJGNHJVTjtFcUYzclVBO0lBQU07RXJGOHJVTjtFcUY3clVBO0lBQU07RXJGZ3NVTjtFcUYvclVBO0lBQU07RXJGa3NVTjtFcUZqc1VBO0lBQU07RXJGb3NVTjtFcUZuc1VBO0lBQU07RXJGc3NVTjtFcUZyc1VBO0lBQU87RXJGd3NVUDtBQUNGO0FxRnRzVUE7RUFDRTtBckZ3c1VGOztBcUZyc1VBO0VBQ0U7SUFBSztFckZ5c1VMO0VxRnhzVUE7SUFBTztFckYyc1VQO0FBQ0Y7QXNGbHVVQTtFQUNFO0VBQ0E7QXRGb3VVRjtBc0ZsdVVFO0VBQ0U7QXRGb3VVSjtBc0ZqdVVFO0VBQ0U7RUFDQTtBdEZtdVVKO0FzRmp1VUk7RUFDRTtFQUNBO0F0Rm11VU47QXNGanVVTTtFQUNFO0F0Rm11VVI7QXNGaHVVTTtFQUNFO0VBQ0E7QXRGa3VVUjtBc0Y5dFVRO0VBQ0U7QXRGZ3VVVjtBc0Y3dFVRO0VBQ0U7RUFDQSxXdEY1Qkk7QUEydlVkO0FzRjN0VU07RUFDRTtBdEY2dFVSO0FzRjN0VVE7RUFDRTtBdEY2dFVWO0FzRjN0VVU7RUFDRTtBdEY2dFVaOztBZTVzVUk7RXVFUEE7SUFDRTtFdEZ1dFVKO0FBQ0Y7QXVGN3dVRTtFQUNFLFd2RkVVO0V1RkRWO0F2Rit3VUo7QXVGN3dVSTtFQUNFO0F2Rit3VU47QXVGM3dVRTtFQUNFO0VBQ0E7QXZGNndVSjtBdUYzd1VJO0VBQ0U7QXZGNndVTjtBdUYzd1VNO0VBQ0U7QXZGNndVUjs7QXdGOXhVRTtFQUNFO0VBQ0E7QXhGaXlVSjtBd0YveFVJO0VBQ0U7QXhGaXlVTjtBd0YveFVNO0VBQ0UsZXhGREk7RXdGRUo7RUFDQTtFQUNBO0F4Rml5VVI7QXdGL3hVUTtFQUNFO0F4Rml5VVY7QWVwdlVJO0V5RXZDRTtJQUNFO0V4Rjh4VU47QUFDRjtBd0YxeFVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhGNHhVSjtBd0Z6eFVNO0VBQ0U7QXhGMnhVUjtBeUY5elVBO0VBQ0U7QXpGZzBVRjtBeUY3elVJO0VBQ0U7RUFDQTtBekYrelVOO0F5RjF6VUk7RUFDRTtFQUNBO0VBQ0E7RUFDQSxlekZQTTtFeUZRTjtBekY0elVOO0F5RjF6VU07RUFDRTtBekY0elVSO0F5Rnp6VU07RUFDRTtBekYyelVSO0F5Rnh6VU07RUFDRTtBekYwelVSO0F5RnZ6VU07RUFDRTtBekZ5elVSO0F5RnR6VU07RUFDRTtBekZ3elVSO0F5RnJ6VU07RUFDRTtBekZ1elVSO0F5RnB6VU07RUFDRTtBekZzelVSO0F5Rm56VU07RUFDRTtBekZxelVSO0F5Rmx6VU07RUFDRTtFQUNBO0VBQ0E7QXpGb3pVUjtBeUZqelVNO0VBQ0U7QXpGbXpVUjtBeUZoelVNO0VBQ0U7RUFDQTtBekZrelVSO0F5Ri95VU07RUFDRTtFQUNBO0VBQ0E7QXpGaXpVUjtBeUYveVVRO0VBQ0U7QXpGaXpVVjtBeUY1eVVRO0VBQ0U7RUFDQTtFQUNBO0F6Rjh5VVY7QXlGNXlVVTtFQUNFO0F6Rjh5VVo7QXlGM3lVVTtFQUNFO0VBQ0E7QXpGNnlVWjtBeUZ4eVVNO0VBQ0U7RUFDQTtFQUNBO0F6RjB5VVI7QXlGeHlVUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6RjB5VVY7QXlGdnlVUTtFQUNFO0F6Rnl5VVY7QXlGcHlVUTtFQUNFO0VBQ0E7RUFDQTtBekZzeVVWO0F5RnB5VVU7RUFDRTtFQUNBO0VBQ0E7QXpGc3lVWjtBeUZqeVVNO0VBQ0U7QXpGbXlVUjtBeUZqeVVRO0VBQ0U7QXpGbXlVVjtBeUY5eFVRO0VBQ0U7RUFDQTtBekZneVVWO0F5Rjl4VVU7RUFDRTtFQUNBO0VBQ0E7QXpGZ3lVWjtBeUY3eFVVO0VBQ0U7RUFDQTtFQUNBO0F6Rit4VVo7QXlGMXhVTTtFQUNFO0F6RjR4VVI7QXlGM3hVUTtFQUNFO0F6RjZ4VVY7QXlGeHhVSTtFQUNFO0F6RjB4VU47QXlGdHhVTTtFQUNFO0VBQ0E7QXpGd3hVUjtBeUZweFVJO0VBQ0U7RUFDQTtFQUNBO0F6RnN4VU47QXlGcHhVTTtFQUNFO0F6RnN4VVI7QXlGbnhVTTtFQUNFO0VBQ0E7QXpGcXhVUjtBeUZueFVRO0VBQ0U7RUFDQTtBekZxeFVWO0F5Rmx4VVE7RUFDRTtFQUNBO0F6Rm94VVY7QXlGbHhVVTtFQUNFO0F6Rm94VVo7QXlGL3dVTTtFQUNFO0F6Rml4VVI7QXlGOXdVTTtFQUNFO0F6Rmd4VVI7QXlGN3dVTTtFQUNFO0F6Rit3VVI7QXlGNXdVTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGOHdVUjtBeUY1d1VRO0VBQ0U7QXpGOHdVVjtBeUY1d1VVO0VBQ0U7QXpGOHdVWjtBeUZ4d1VRO0VBQ0U7QXpGMHdVVjtBeUZ0d1VVO0VBQ0U7QXpGd3dVWjtBeUZyd1VVO0VBQ0U7QXpGdXdVWjtBeUZsd1VNO0VBQ0U7QXpGb3dVUjtBeUYvdlVNO0VBQ0U7QXpGaXdVUjtBeUYxdlVNO0VBQ0U7QXpGNHZVUjtBeUYxdlVRO0VBQ0U7RUFDQTtFQUNBO0F6RjR2VVY7QXlGdHZVRTtFQUNFO0VBQ0E7RUFDQTtBekZ3dlVKO0F5Rm52VU07RUFDRTtFQUNBO0F6RnF2VVI7QXlGbHZVTTtFQUNFO0F6Rm92VVI7O0FlajlVSTtFMEV1T0k7SUFDRTtFekY4dVVSO0V5RjN1VU07SUFDRTtFekY2dVVSO0V5RjF1VU07SUFDRTtFekY0dVVSO0V5Rnp1VU07SUFDRTtFekYydVVSO0V5Rnh1VU07SUFDRTtFekYwdVVSO0V5RnZ1VU07SUFDRTtFekZ5dVVSO0V5RnR1VU07SUFDRTtFekZ3dVVSO0V5RnJ1VU07SUFDRTtFekZ1dVVSO0V5RnB1VU07SUFDRTtFekZzdVVSO0V5Ri90VU07SUFDRTtFekZpdVVSO0V5Rjl0VU07SUFDRTtFekZndVVSO0V5Rnp0VU07SUFDRTtFekYydFVSO0FBQ0Y7QTBGbmpWRTtFQUNFO0VBQ0E7QTFGcWpWSjs7QTBGampWQTtFQUNFO0ExRm9qVkY7QTBGbGpWRTtFQUNFO0ExRm9qVko7QTBGbGpWSTtFQUNFO0ExRm9qVk47QTBGampWUTtFQUNFO0ExRm1qVlY7O0FlemdWSTtFMkVsQ0Y7SUFDRTtFMUYraVZGOztFMEY1aVZBO0lBQ0U7RTFGK2lWRjtFMEY3aVZFO0lBQ0U7RTFGK2lWSjtBQUNGO0EyRmxsVkE7RUFDRTtFQUNBO0VBQ0E7QTNGb2xWRjtBMkZsbFZFO0VBQ0U7RUFDQTtFQUNBO0EzRm9sVko7QTJGbGxWSTtFQUNFO0EzRm9sVk47QTJGbGxWTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRm9sVlI7QTJGaGxWSTtFQUNFO0EzRmtsVk47QTJGaGxWTTtFQUNFO0EzRmtsVlI7QTJGN2tWRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNGK2tWSjtBMkY3a1ZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNGK2tWTjtBMkY3a1ZNO0VBQ0U7RUFDQTtFQUNBO0EzRitrVlI7QTJGNWtWTTtFQUNFO0EzRjhrVlI7QTJGM2tWTTtFQUNFO0EzRjZrVlI7QWU3a1ZJO0U0RTVESjtJQWtFSTtJQUNBO0UzRjJrVkY7RTJGemtWRTtJQUNFO0UzRjJrVko7RTJGeGtWRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UzRjBrVko7RTJGeGtWSTtJQUNFO0UzRjBrVk47RTJGdGtWRTtJQUNFO0lBQ0E7SUFDQTtFM0Z3a1ZKO0UyRnRrVkk7SUFDRTtJQUNBLGUzRm5GSTtFQTJwVlY7RTJGdGtWTTtJQUNFO0UzRndrVlI7QUFDRjs7QTJGaGtWSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzRm1rVk47QTJGamtWTTtFQUNFO0EzRm1rVlI7QTJGamtWUTtFQUNFO0EzRm1rVlY7QTJGamtWVTtFQUNFO0EzRm1rVlo7QTJGN2pWUTtFQUNFO0EzRitqVlY7QTJGM2pWTTtFQUNFO0VBQ0E7RUFDQTtBM0Y2alZSO0EyRjFqVlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRjRqVlo7QTJGdGpWSTtFQUNFO0EzRndqVk47QTJGdGpWTTtFQUNFO0VBQ0E7QTNGd2pWUjtBMkZyalZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNGdWpWUjtBMkZyalZRO0VBQ0U7RUFDQTtBM0Z1alZWO0EyRnJqVlU7RUFDRTtBM0Z1alZaO0EyRmpqVlk7RUFDRTtFQUNBO0EzRm1qVmQ7QTJGampWYztFQUNFO0VBQ0E7QTNGbWpWaEI7QTJGaGpWYztFQUNFO0EzRmtqVmhCO0EyRjNpVk07RUFDRTtFQUNBO0EzRjZpVlI7QTJGemlWSTtFQUNFO0VBQ0E7RUFDQTtBM0YyaVZOO0EyRnppVk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNGMmlWUjtBMkZ4aVZNO0VBQ0U7RUFDQTtFQUNBO0EzRjBpVlI7QTJGdGlWSTtFQUNFO0VBQ0E7QTNGd2lWTjtBMkZ0aVZNO0VBQ0U7QTNGd2lWUjtBMkZuaVZNO0VBQ0U7RUFDQTtFQUNBO0EzRnFpVlI7QTJGbmlWUTtFQUNFO0VBQ0E7QTNGcWlWVjtBMkZsaVZRO0VBQ0U7QTNGb2lWVjtBMkY5aFZFO0VBQ0U7QTNGZ2lWSjtBZXJ0Vkk7RTRFMExFO0lBQ0U7SUFDQTtFM0Y4aFZOO0UyRjNoVkk7SUFDRTtFM0Y2aFZOO0UyRjFoVkk7SUFDRTtJQUNBO0lBQ0E7RTNGNGhWTjtFMkYxaFZNO0lBQ0U7RTNGNGhWUjtBQUNGOztBMkZ0aFZBO0VBQ0UseUIzRnhRVztBQWl5VmI7QTJGdmhWRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzRnloVko7QTJGdmhWSTtFQUNFO0EzRnloVk47QTJGdGhWSTtFQUNFO0EzRndoVk47QTJGcmhWSTtFQUNFO0VBQ0E7RUFDQTtBM0Z1aFZOO0EyRnJoVk07RUFDRTtBM0Z1aFZSO0EyRnJoVlE7RUFDRTtBM0Z1aFZWO0EyRnBoVlE7RUFDRTtBM0ZzaFZWO0FlcHdWSTtFNEVrUE07SUFDRTtFM0ZxaFZWO0UyRmxoVlE7SUFDRTtFM0ZvaFZWO0FBQ0Y7QTJGL2dWSTtFQUNFO0VBQ0E7RUFDQTtBM0ZpaFZOO0EyRi9nVk07RUFDRTtBM0ZpaFZSO0EyRi9nVlE7RUFDRTtFQUNBO0EzRmloVlY7QTJGOWdWUTtFQUNFO0EzRmdoVlY7QTJGM2dWSTtFQUNFO0EzRjZnVk47QWU5eFZJO0U0RXVSRTtJQUNFO0UzRjBnVk47RTJGdmdWSTtJQUNFO0UzRnlnVk47RTJGcmdWRTtJQUNFO0UzRnVnVko7QUFDRjs7QTJGbmdWQTtFQUNFO0EzRnNnVkY7QTJGcGdWRTtFQUNFO0VBQ0E7RUFDQTtBM0ZzZ1ZKO0EyRm5nVkU7RUFDRTtBM0ZxZ1ZKOztBMkZqZ1ZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRm9nVkY7QTJGbGdWRTtFQUNFO0VBQ0E7QTNGb2dWSjs7QTJGLy9VRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0ZrZ1ZKO0EyRmhnVkk7RUFDRTtBM0ZrZ1ZOO0EyRi8vVUk7RUFDRTtFQUNBO0EzRmlnVk47O0EyRjUvVUE7RUFDRTtFQUNBO0EzRisvVUY7QTJGNy9VRTtFQUNFO0VBQ0E7RUFDQTtBM0YrL1VKOztBNEYzNVZBO0VBQ0U7RUFDQTtBNUY4NVZGOztBNkZ6NVZBO0VBQ0U7QTdGNDVWRjtBNkYxNVZFO0VBQ0U7QTdGNDVWSjtBNkZ6NVZFO0VBQ0UsZUFkZTtFQWVmLGlCQWZlO0E3RjA2Vm5CO0E2Rng1VkU7RUFDRTtFQUNBO0E3RjA1Vko7QTZGdjVWRTtFQUNFO0VBQ0E7QTdGeTVWSjtBNkZ0NVZFO0VBQ0U7RUFDQTtBN0Z3NVZKO0E2RnI1VkU7RUFDRTtFQUNBO0E3RnU1Vko7QTZGcDVWRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGczVWSjtBNkZuNVZNO0VBQ0U7QTdGcTVWUjtBNkZsNVZNO0VBQ0UsZUFwREk7RUFxREo7RUFDQTtFQUNBO0VBQ0E7QTdGbzVWUjtBNkZsNVZRO0VBQ0U7QTdGbzVWVjtBNkZqNVZRO0VBQ0U7QTdGbTVWVjtBNkY3NFZFO0VBQ0U7RUFDQTtBN0YrNFZKO0E2Rjc0Vkk7RUFDRTtFQUNBO0E3Ris0Vk47QTZGNzRWTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3Ris0VlI7QTZGMzRWUTtFQUNFO0VBQ0E7QTdGNjRWVjtBNkZ4NFZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0YwNFZOO0E2Rng0Vk07RUFDRTtFQUNBO0E3RjA0VlI7QTZGdjRWTTtFQUNFO0VBQ0E7QTdGeTRWUjtBNkZyNFZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RnU0Vk47QTZGcjRWTTtFQUNFO0VBQ0E7QTdGdTRWUjtBNkZyNFZRO0VBQ0U7RUFDQTtFQUNBO0E3RnU0VlY7QTZGcjRWVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3RnU0Vlo7QTZGbjRWUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0ZxNFZWO0E2Rmw0VlE7RUFDRTtBN0ZvNFZWO0E2Rmw0VlU7RUFDRTtBN0ZvNFZaO0E2Ri8zVk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0ZpNFZSO0E2RjkzVlU7RUFDRTtFQUNBO0VBQ0E7QTdGZzRWWjtBNkY5M1ZZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdGZzRWZDtBNkY3M1ZZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdGKzNWZDtBNkY1M1ZZO0VBQ0U7RUFDQTtBN0Y4M1ZkO0E2RngzVlU7RUFDRTtFQUNBO0VBQ0E7QTdGMDNWWjtBNkZ4M1ZZO0VBQ0U7QTdGMDNWZDtBNkZsM1ZNO0VBQ0U7RUFDQTtFQUNBO0E3Rm8zVlI7QTZGbDNWUTtFQUNFO0E3Rm8zVlY7QTZGNzJWWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3RisyVmQ7QTZGNzJWYztFQUNFO0VBQ0E7QTdGKzJWaEI7QTZGdjJWSTtFQUNFO0E3RnkyVk47QTZGdDJWUTtFQUNFO0E3RncyVlY7QTZGcDJWTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3RnMyVlI7QTZGcDJWUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0ZzMlZWO0E2RmoyVlE7RUFDRTtFQUNBO0E3Rm0yVlY7QTZGajJWVTtFQUNFO0E3Rm0yVlo7QTZGOTFWVTtFQUNFO0VBQ0E7QTdGZzJWWjtBNkZ6MVZFO0VBQ0U7RUFDQTtBN0YyMVZKO0E2RngxVk07RUFDRTtBN0YwMVZSO0E2RngxVlE7RUFDRTtBN0YwMVZWO0E2RnQxVk07RUFDRSxlQWxTVztFQW1TWCxpQkFuU1c7RUFvU1g7QTdGdzFWUjtBNkZ0MVZRO0VBQ0U7QTdGdzFWVjtBNkZsMVZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdGbzFWSjtBNkZsMVZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0ZvMVZOO0E2RmwxVk07RUFDRTtFQUNBO0E3Rm8xVlI7QTZGaDFWSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3RmsxVk47QTZGaDFWTTtFQUNFO0VBQ0E7QTdGazFWUjtBNkYvMFZNO0VBQ0U7QTdGaTFWUjtBNkYvMFZRO0VBQ0U7RUFDQTtFQUNBO0E3RmkxVlY7QTZGNTBWSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGODBWTjtBNkY1MFZNO0VBQ0U7RUFDQTtBN0Y4MFZSO0E2RjUwVlE7RUFDRTtBN0Y4MFZWO0E2RjMwVlE7RUFDRTtBN0Y2MFZWO0E2RjEwVlE7RUFDRTtBN0Y0MFZWO0E2RnYwVkk7RUFDRTtFQUNBO0VBQ0E7QTdGeTBWTjtBNkZ2MFZNO0VBQ0U7QTdGeTBWUjtBNkZwMFZNO0VBQ0U7QTdGczBWUjtBNkZqMFZFO0VBQ0U7QTdGbTBWSjtBNkY5elZNO0VBQ0UsbUJBcFlVO0E3Rm9zV2xCO0E2Rnp6Vk07RUFDRTtBN0YyelZSO0E2Rnp6VlE7RUFDRTtBN0YyelZWO0E2Rm56Vk07RUFDRTtBN0ZxelZSO0E2Rm56VlE7RUFDRTtBN0ZxelZWO0E2Rjd5Vk07RUFDRTtBN0YreVZSO0E2Rnh5Vk07RUFDRTtBN0YweVZSO0E2Rnh5VlE7RUFDRTtBN0YweVZWO0E2Rmx5Vk07RUFDRTtBN0ZveVZSO0E2Rmx5VlE7RUFDRTtBN0ZveVZWO0E2RjV4Vk07RUFDRTtBN0Y4eFZSO0E2RnZ4Vk07RUFDRSxtQkE3Y1E7QTdGc3VXaEI7QTZGbHhWTTtFQUNFO0E3Rm94VlI7QTZGN3dWTTtFQUNFO0E3Rit3VlI7QTZGN3dWUTtFQUNFO0E3Rit3VlY7O0E4Rmx2V0U7RUFDRTtBOUZxdldKO0E4Rm52V0k7RUFDRTtBOUZxdldOO0E4Rmp2V0U7RUFDRTtBOUZtdldKO0E4Rmp2V0k7RUFDRTtFQUNBO0E5Rm12V047QThGN3VXTTtFQUNFO0E5Rit1V1I7QThGN3VXUTtFQUNFO0E5Rit1V1Y7QThGNXVXUTtFQUNFO0E5Rjh1V1Y7QThGM3VXUTtFQUNFO0E5RjZ1V1Y7QThGMXVXUTtFQUNFO0E5RjR1V1Y7QThGenVXUTtFQUNFO0E5RjJ1V1Y7QThGeHVXUTtFQUNFO0E5RjB1V1Y7QThGdnVXUTtFQUNFO0E5Rnl1V1Y7QThGdHVXUTtFQUNFO0E5Rnd1V1Y7QThGcnVXUTtFQUNFO0E5RnV1V1Y7QThGcHVXUTtFQUNFO0E5RnN1V1Y7QThGbnVXUTtFQUNFO0E5RnF1V1Y7QThGbHVXUTtFQUNFO0VBQ0E7QTlGb3VXVjtBOEZodVdNO0VBQ0U7QTlGa3VXUjtBOEY5dFdRO0VBQ0U7QTlGZ3VXVjtBOEZ4dFdVO0VBQ0U7QTlGMHRXWjtBOEZwdFdJO0VBQ0U7QTlGc3RXTjtBOEZqdFdZO0VBQ0U7RUFDQTtBOUZtdFdkO0E4Rmp0V2M7RUFDRTtBOUZtdFdoQjtBOEY3c1dRO0VBQ0U7QTlGK3NXVjtBOEY3c1dVO0VBQ0U7RUFDQTtBOUYrc1daO0E4RjVzV1U7RUFDRTtBOUY4c1daO0E4RjNzV1U7RUFDRTtFQUNBO0VBQ0E7QTlGNnNXWjtBOEYzc1dZO0VBQ0U7RUFDQTtBOUY2c1dkO0E4RjFzV1k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGNHNXZDtBOEZwc1dVO0VBQ0U7QTlGc3NXWjtBOEZuc1dVO0VBQ0U7RUFDQTtFQUNBO0E5RnFzV1o7QThGOXJXRTtFQUNFO0VBQ0E7RUFDQTtBOUZnc1dKO0E4RjdyV007RUFDRTtFQUNBLGVEektJO0VDMEtKLGlCRDFLSTtBN0Z5MldaO0E4RjdyV1E7RUFDRTtBOUYrcldWO0E4RjFyV1E7RUFDRTtBOUY0cldWO0E4RnRyV0U7RUFDRTtBOUZ3cldKO0E4RnRyV0k7RUFDRTtFQUNBO0E5RndyV047QThGbHJXVTtFQUNFO0E5Rm9yV1o7QThGanJXVTtFQUNFO0E5Rm1yV1o7QThGaHJXVTtFQUNFO0E5RmtyV1o7QThGeHFXUTtFQUNFO0VBQ0E7RUFDQTtBOUYwcVdWO0E4RmpxV1E7RUFDRTtFQUNBO0VBQ0E7QTlGbXFXVjtBOEZqcVdVO0VBQ0U7QTlGbXFXWjtBOEZocVdVO0VBQ0U7QTlGa3FXWjtBOEYvcFdVO0VBQ0U7QTlGaXFXWjtBOEY5cFdVO0VBQ0U7QTlGZ3FXWjtBOEY3cFdVO0VBQ0U7QTlGK3BXWjtBOEY1cFdVO0VBQ0U7QTlGOHBXWjtBOEYzcFdVO0VBQ0U7QTlGNnBXWjtBOEZucFdRO0VBQ0U7RUFDQTtFQUNBO0E5RnFwV1Y7QThGbnBXVTtFQUNFO0E5RnFwV1o7QThGbHBXVTtFQUNFO0E5Rm9wV1o7QThGanBXVTtFQUNFO0E5Rm1wV1o7QThGeG9XVTtFQUNFO0E5RjBvV1o7QThGdm9XVTtFQUNFO0E5RnlvV1o7QThGdG9XVTtFQUNFO0E5RndvV1o7QThGOW5XUTtFQUNFO0E5RmdvV1Y7QThGOW5XVTtFQUNFO0E5RmdvV1o7QThGOW5XWTtFQUNFO0VBQ0E7RUFDQTtBOUZnb1dkO0E4RnJuV1E7RUFDRTtBOUZ1bldWO0E4RnJuV1U7RUFDRTtBOUZ1bldaO0E4RnJuV1k7RUFDRTtFQUNBO0VBQ0E7QTlGdW5XZDtBOEY5bVdJO0VBQ0U7QTlGZ25XTjtBOEYzbVdRO0VBQ0U7RUFDQTtBOUY2bVdWO0E4RjNtV1U7RUFDRTtBOUY2bVdaO0E4RjNtV1k7RUFDRTtFQUNBO0E5RjZtV2Q7QThGam1XVTtFQUNFO0VBQ0E7QTlGbW1XWjtBOEZ6bFdRO0VBQ0U7RUFDQTtBOUYybFdWO0E4RnhsV1k7RUFDRTtFQUNBO0VBQ0E7QTlGMGxXZDtBOEZ0bFdVO0VBQ0U7QTlGd2xXWjtBOEZ0bFdZO0VBQ0U7RUFDQTtFQUNBO0E5RndsV2Q7QThGcmxXWTtFQUNFO0VBQ0E7RUFDQTtBOUZ1bFdkO0E4Rm5sV1U7RUFDRTtBOUZxbFdaO0E4RjNrV1E7RUFDRTtFQUNBO0E5RjZrV1Y7QThGM2tXVTtFQUNFO0E5RjZrV1o7QThGM2tXWTtFQUNFO0E5RjZrV2Q7O0E4Rm5rV0U7RUFDRTtBOUZza1dKOztBOEYvaldNO0VBRUU7QTlGaWtXUjtBOEY5aldNO0VBQ0U7QTlGZ2tXUjtBOEY5aldRO0VBQ0U7QTlGZ2tXVjtBOEY3aldRO0VBQ0U7QTlGK2pXVjtBOEY1aldRO0VBQ0U7QTlGOGpXVjtBOEYzaldRO0VBQ0U7QTlGNmpXVjtBOEYxaldRO0VBQ0U7QTlGNGpXVjtBOEZ6aldRO0VBQ0U7QTlGMmpXVjtBOEZ4aldRO0VBQ0U7QTlGMGpXVjs7QStGL2hYRTtFQUNFO0EvRmtpWEo7QStGaGlYSTtFQUNFO0VBQ0E7RUFDQTtBL0ZraVhOO0ErRi9oWEk7RUFDRTtFQUNBO0VBQ0E7QS9GaWlYTjtBK0Y5aFhRO0VBQ0U7QS9GZ2lYVjtBK0Y5aFhVO0VBQ0U7QS9GZ2lYWjtBK0Y1aFhRO0VBQ0U7QS9GOGhYVjtBK0Z4aFhNO0VBQ0U7RUFDQTtFQUNBO0EvRjBoWFI7QStGeGhYUTtFQUNFO0EvRjBoWFY7QStGcGhYTTtFQUNFO0EvRnNoWFI7QWdHOWpYSTtFQUNFO0FoR2drWE47QWdHOWpYTTtFQUNFO0VBQ0E7RUFDQTtBaEdna1hSO0FnRzVqWEk7RUFDRTtBaEc4alhOO0FnRzNqWFE7RUFDRTtFQUNBO0VBQ0E7QWhHNmpYVjtBZ0czalhVO0VBQ0U7QWhHNmpYWjtBZ0cxalhVO0VBQ0U7QWhHNGpYWjtBZ0d4alhRO0VBQ0U7QWhHMGpYVjtBZ0d0alhVO0VBQ0U7QWhHd2pYWjtBZ0dqalhVO0VBQ0U7QWhHbWpYWjtBZ0dwalhVO0VBQ0U7QWhHc2pYWjtBZ0d2alhVO0VBQ0U7QWhHeWpYWjtBZ0cxalhVO0VBQ0U7QWhHNGpYWjtBZ0c3alhVO0VBQ0U7QWhHK2pYWjtBZ0doa1hVO0VBQ0U7QWhHa2tYWjtBZ0dua1hVO0VBQ0U7QWhHcWtYWjtBZ0d0a1hVO0VBQ0U7QWhHd2tYWjtBZ0d6a1hVO0VBQ0U7QWhHMmtYWjtBZ0c1a1hVO0VBQ0U7QWhHOGtYWjtBZ0d4a1hJO0VBQ0U7RUFDQTtBaEcwa1hOO0FnR3ZrWFE7RUFDRTtFQUNBO0VBQ0E7QWhHeWtYVjtBZ0dya1hNO0VBQ0U7QWhHdWtYUjtBZ0dya1hRO0VBQ0U7RUFDQTtBaEd1a1hWO0FnR3BrWFE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoR3NrWFY7QWdHOWpYVTtFQUNFO0VBQ0E7QWhHZ2tYWjtBZ0dwalhZO0VBQ0U7QWhHc2pYZDtBZ0d6aVhZO0VBQ0U7QWhHMmlYZDtBZ0doaVhRO0VBQ0U7QWhHa2lYVjtBZ0d6aFhRO0VBQ0U7RUFDQTtBaEcyaFhWO0FnR2xoWFE7RUFDRTtBaEdvaFhWO0FnRzNnWFE7RUFDRTtFQUNBO0VBQ0E7QWhHNmdYVjtBZ0czZ1hVO0VBQ0U7QWhHNmdYWjtBZ0cxZ1hVO0VBQ0U7QWhHNGdYWjtBZ0dsZ1hRO0VBQ0U7QWhHb2dYVjtBaUdsclhNO0VBQ0U7RUFDQTtBakdvclhSO0FpR2xyWFE7RUFDRTtBakdvclhWO0FpR2pyWFE7RUFDRTtBakdtclhWO0FpR2hyWFE7RUFDRTtBakdrclhWOztBa0dsc1hBO0VBQ0U7QWxHcXNYRjtBa0duc1hFO0VBQ0U7QWxHcXNYSjtBa0dsc1hFO0VBQ0U7QWxHb3NYSjtBa0dqc1hNO0VBQ0U7QWxHbXNYUjtBa0c3clhRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxHK3JYVjtBa0czclhNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEc2clhSO0FrRzNyWFE7RUFDRTtFQUNBO0FsRzZyWFY7QWtHMXJYUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsRzRyWFY7QWtHcnJYUTtFQUNFO0FsR3VyWFY7QWtHcHJYUTtFQUNFO0VBQ0E7QWxHc3JYVjtBa0c5cVhVO0VBQ0U7QWxHZ3JYWjtBa0dqclhVO0VBQ0U7QWxHbXJYWjtBa0dwclhVO0VBQ0U7QWxHc3JYWjtBa0d2clhVO0VBQ0U7QWxHeXJYWjtBa0cxclhVO0VBQ0U7QWxHNHJYWjtBa0c3clhVO0VBQ0U7QWxHK3JYWjtBa0doc1hVO0VBQ0U7QWxHa3NYWjtBa0duc1hVO0VBQ0U7QWxHcXNYWjtBa0d0c1hVO0VBQ0U7QWxHd3NYWjtBa0d6c1hVO0VBQ0U7QWxHMnNYWjtBa0c1c1hVO0VBQ0U7QWxHOHNYWjtBa0cvc1hVO0VBQ0U7QWxHaXRYWjtBa0dsdFhVO0VBQ0U7QWxHb3RYWjtBa0dydFhVO0VBQ0U7QWxHdXRYWjtBa0d4dFhVO0VBQ0U7QWxHMHRYWjtBa0czdFhVO0VBQ0U7QWxHNnRYWjtBa0c5dFhVO0VBQ0U7QWxHZ3VYWjtBa0dqdVhVO0VBQ0U7QWxHbXVYWjtBa0dwdVhVO0VBQ0U7QWxHc3VYWjtBa0d2dVhVO0VBQ0U7QWxHeXVYWjs7QStGeHlYRTtFQUNFO0EvRjJ5WEo7QStGenlYSTtFQUNFO0VBQ0E7RUFDQTtBL0YyeVhOO0ErRnh5WEk7RUFDRTtFQUNBO0VBQ0E7QS9GMHlYTjtBK0Z2eVhRO0VBQ0U7QS9GeXlYVjtBK0Z2eVhVO0VBQ0U7QS9GeXlYWjtBK0ZyeVhRO0VBQ0U7QS9GdXlYVjtBK0ZqeVhNO0VBQ0U7RUFDQTtFQUNBO0EvRm15WFI7QStGanlYUTtFQUNFO0EvRm15WFY7QStGN3hYTTtFQUNFO0EvRit4WFI7QW1HeDBYRTtFQUNFO0FuRzAwWEo7QW1HeDBYSTtFQUNFO0VBQ0E7RUFDQTtBbkcwMFhOO0FtR3QwWEU7RUFDRTtBbkd3MFhKO0FtR3IwWE07RUFDRTtBbkd1MFhSO0FtR2wwWE07RUFDRTtFQUNBO0FuR28wWFI7QW1HajBYTTtFQUNFO0FuR20wWFI7QW1HaDBYTTtFQUNFO0VBQ0E7RUFDQTtBbkdrMFhSO0FtR2gwWFE7RUFDRTtBbkdrMFhWO0FtRy96WFE7RUFDRTtBbkdpMFhWO0FtRzl6WFE7RUFDRSxpQk45Q0U7QTdGODJYWjtBbUc3elhRO0VBQ0U7QW5HK3pYVjtBbUc1elhRO0VBQ0U7QW5HOHpYVjtBbUczelhRO0VBQ0U7QW5HNnpYVjtBbUcxelhRO0VBQ0U7QW5HNHpYVjtBbUd6elhRO0VBQ0U7QW5HMnpYVjtBbUd6elhVO0VBQ0U7RUFDQTtFQUNBO0FuRzJ6WFo7QW1HenpYWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuRzJ6WGQ7QW1HdHpYUTtFQUNFO0FuR3d6WFY7QW1HcnpYUTtFQUNFO0FuR3V6WFY7QW1HcHpYUTtFQUNFO0FuR3N6WFY7QW1HbnpYUTtFQUNFO0FuR3F6WFY7QW1HanpYTTtFQUNFO0FuR216WFI7QW1HOXlYRTtFQUNFO0FuR2d6WEo7QW1HOXlYSTtFQUNFO0VBQ0E7RUFDQTtBbkdnelhOO0FvRzM1WFE7RUFDRTtBcEc2NVhWO0FvRzE1WFE7RUFDRTtFQUNBO0FwRzQ1WFY7QW9HMTVYVTtFQUNFO0FwRzQ1WFo7QW9HejVYVTtFQUNFO0FwRzI1WFo7QW9HeDVYVTtFQUNFO0FwRzA1WFo7QW9HeDVYWTtFQUNFO0FwRzA1WGQ7QW9HLzRYWTtFQUNFLG1CUC9CSTtBN0ZnN1hsQjtBb0c3NFhVO0VBQ0U7RUFDQTtFQUNBO0FwRys0WFo7QW9HNzRYWTtFQUNFO0FwRys0WGQ7QW9HNTRYWTtFQUNFO0FwRzg0WGQ7QW9HMzRYWTtFQUNFO0FwRzY0WGQ7QW9HMTRYWTtFQUNFO0FwRzQ0WGQ7QW9HejRYWTtFQUNFO0FwRzI0WGQ7QW9HeDRYWTtFQUNFO0FwRzA0WGQ7QW9HdjRYWTtFQUNFO0FwR3k0WGQ7QW9HOTNYWTtFQUNFO0FwR2c0WGQ7QXFHOThYUTtFQUNFO0VBQ0E7QXJHZzlYVjtBcUc5OFhVO0VBQ0U7QXJHZzlYWjtBcUc3OFhVO0VBQ0U7QXJHKzhYWjtBcUc1OFhVO0VBQ0U7QXJHODhYWjtBcUc1OFhZO0VBQ0U7QXJHODhYZDtBc0c5OVhRO0VBQ0U7RUFDQTtBdEdnK1hWO0FzRzk5WFU7RUFDRTtBdEdnK1haO0FzRzc5WFU7RUFDRTtBdEcrOVhaO0FzRzU5WFU7RUFDRTtBdEc4OVhaO0FzRzM5WFU7RUFDRTtBdEc2OVhaO0FzR3A5WFU7RUFDRTtFQUNBO0F0R3M5WFo7QXNHcDlYWTtFQUNFO0F0R3M5WGQ7QXNHbjlYWTtFQUNFO0F0R3E5WGQ7QXVHeC9YUTtFQUNFO0VBQ0E7QXZHMC9YVjtBdUd4L1hVO0VBQ0U7QXZHMC9YWjtBdUd2L1hVO0VBQ0U7QXZHeS9YWjtBdUd0L1hVO0VBQ0U7QXZHdy9YWjtBdUd0L1hZO0VBQ0U7QXZHdy9YZDtBdUduL1hRO0VBQ0U7QXZHcS9YVjtBd0czZ1lRO0VBQ0U7QXhHNmdZVjtBd0czZ1lVO0VBQ0U7QXhHNmdZWjtBd0cxZ1lVO0VBQ0U7QXhHNGdZWjtBd0cxZ1lZO0VBQ0U7QXhHNGdZZDtBd0d2Z1lRO0VBQ0U7QXhHeWdZVjtBeUcxaFlRO0VBQ0U7RUFDQTtFQUNBO0F6RzRoWVY7QXlHMWhZVTtFQUNFO0F6RzRoWVo7QXlHemhZVTtFQUNFO0F6RzJoWVo7QXlHemhZWTtFQUNFO0F6RzJoWWQ7QXlHdGhZUTtFQUNFO0F6R3doWVY7QTBHM2lZUTtFQUNFO0VBQ0E7QTFHNmlZVjtBMEczaVlVO0VBQ0U7QTFHNmlZWjtBMEcxaVlVO0VBQ0U7QTFHNGlZWjtBMEd6aVlVO0VBQ0U7QTFHMmlZWjtBMEd4aVlVO0VBQ0U7QTFHMGlZWjtBMEd2aVlVO0VBQ0U7QTFHeWlZWjtBMEd0aVlVO0VBQ0U7RUFDQTtBMUd3aVlaO0EwR3JpWVU7RUFDRTtBMUd1aVlaO0EyR3JrWVE7RUFDRTtFQUNBO0EzR3VrWVY7QTJHcmtZVTtFQUNFO0EzR3VrWVo7QTJHcGtZVTtFQUNFO0EzR3NrWVo7QTJHcGtZWTtFQUNFO0EzR3NrWWQ7QTJHamtZUTtFQUNFO0EzR21rWVY7QWlHdGxZTTtFQUNFO0VBQ0E7QWpHd2xZUjtBaUd0bFlRO0VBQ0U7QWpHd2xZVjtBaUdybFlRO0VBQ0U7QWpHdWxZVjtBaUdwbFlRO0VBQ0U7QWpHc2xZVjs7QTRHcm1ZRTtFQUNFO0VBQ0E7QTVHd21ZSjtBNEd0bVlJO0VBQ0U7RUFDQTtFQUNBO0E1R3dtWU47QTRHdG1ZTTtFQUNFO0VBQ0E7RUFDQTtBNUd3bVlSO0E0R3RtWVE7RUFDRTtBNUd3bVlWO0E0R3JtWVE7RUFDRTtBNUd1bVlWO0E0R2ptWUk7RUFDRTtBNUdtbVlOO0E0R2ptWU07RUFDRTtBNUdtbVlSO0E0R2htWVU7RUFDRTtFQUNBO0E1R2ttWVo7QTRHL2xZVTtFQUNFO0E1R2ltWVo7QTRHL2xZWTtFQUNFO0VBQ0E7QTVHaW1ZZDtBNEc5bFlZO0VBQ0U7QTVHZ21ZZDtBNEc3bFlZO0VBQ0U7QTVHK2xZZDtBNEc1bFlZO0VBQ0U7RUFDQTtBNUc4bFlkO0E0R3psWVk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNUcybFlkO0E0R3psWWM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RzJsWWhCO0E0R2hsWWM7RUFDRTtFQUNBO0E1R2tsWWhCO0E0R3RrWVk7RUFDRTtBNUd3a1lkO0E0R2hrWUU7RUFDRTtBNUdra1lKO0E0RzVqWVE7RUFDRTtFQUNBO0E1RzhqWVY7QTRHM2pZUTtFQUNFO0E1RzZqWVY7QTRHM2pZVTtFQUNFO0VBQ0E7QTVHNmpZWjtBNEcxallVO0VBQ0U7RUFDQTtBNUc0allaO0E0R3pqWVU7RUFDRTtBNUcyallaO0E0R3hqWVU7RUFDRTtFQUNBO0E1RzBqWVo7O0E2R25zWU07RUFDRTtBN0dzc1lSO0E2R25zWU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0dxc1lSO0E2R25zWVE7RUFDRTtBN0dxc1lWO0E2R2xzWVE7RUFDRTtBN0dvc1lWO0E2R2pzWVE7RUFDRTtBN0dtc1lWO0E2R2hzWVE7RUFDRTtBN0drc1lWO0E2Ry9yWVE7RUFDRTtBN0dpc1lWO0E2RzlyWVE7RUFDRTtBN0dnc1lWO0E2RzNyWVE7RUFDRTtBN0c2cllWO0E2R3hyWUk7RUFDRTtBN0cwcllOO0E2R3RyWUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3R3dyWUo7QTZHcnJZRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R3VyWUo7QTZHcnJZSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHdXJZTjtBNkdycllNO0VBQ0U7RUFDQTtFQUNBO0E3R3VyWVI7QTZHbnJZSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0dxcllOO0E2R25yWU07RUFDRTtBN0dxcllSO0E2R25yWVE7RUFDRTtFQUNBO0VBQ0E7QTdHcXJZVjtBNkducllVO0VBQ0U7RUFDQTtFQUNBO0E3R3FyWVo7QTZHbHJZVTtFQUNFO0VBQ0E7QTdHb3JZWjtBNkc5cVlRO0VBQ0U7RUFDQTtBN0dncllWO0E2RzFxWUU7RUFDRTtBN0c0cVlKO0E2R3pxWUU7RUFDRTtFQUNBO0E3RzJxWUo7QTZHenFZSTtFQUNFO0E3RzJxWU47QTZHeHFZUTtFQUNFO0E3RzBxWVY7QTZHdHFZVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R3dxWVo7QTZHdHFZWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R3dxWWQ7QTZHNXBZVTtFQUNFO0E3RzhwWVo7QTZHM3BZVTtFQUNFO0E3RzZwWVo7QTZHMXBZVTtFQUNFO0VBQ0E7QTdHNHBZWjtBNkd6cFlVO0VBQ0U7RUFDQTtBN0cycFlaO0E2R3pwWVk7RUFDRTtBN0cycFlkO0E2R3ZwWVU7RUFDRTtFQUNBO0E3R3lwWVo7QTZHdHBZVTtFQUNFO0VBQ0E7QTdHd3BZWjtBNkdycFlVO0VBQ0U7RUFDQTtBN0d1cFlaO0E2R3BwWVU7RUFDRTtBN0dzcFlaO0E2R25wWVU7RUFDRTtBN0dxcFlaO0E2R2xwWVU7RUFDRTtBN0dvcFlaO0E2R2pwWVU7RUFDRTtBN0dtcFlaO0E2R2hwWVU7RUFDRTtFQUNBO0E3R2twWVo7QTZHaHBZWTtFQUNFO0VBQ0E7QTdHa3BZZDtBNkc5b1lVO0VBQ0U7QTdHZ3BZWjtBNkc3b1lVO0VBQ0U7QTdHK29ZWjtBNkd6b1lZO0VBQ0U7QTdHMm9ZZDtBNkdwb1lZO0VBQ0U7QTdHc29ZZDtBNkcvbllRO0VBQ0U7QTdHaW9ZVjtBNkcvbllVO0VBQ0U7QTdHaW9ZWjtBNkd6bllRO0VBQ0U7QTdHMm5ZVjtBNkd4bllZO0VBQ0U7QTdHMG5ZZDtBNkd0blljO0VBQ0U7QTdHd25ZaEI7QTZHcG5ZWTtFQUNFO0E3R3NuWWQ7QTZHbm5ZWTtFQUNFO0E3R3FuWWQ7QTZHbG5ZWTtFQUNFO0E3R29uWWQ7QTZHNW1ZVTtFQUNFO0E3RzhtWVo7QTZHdG1ZUTtFQUNFO0E3R3dtWVY7QTZHcm1ZWTtFQUNFO0E3R3VtWWQ7QTZHOWxZUTtFQUNFO0E3R2dtWVY7QTZHOWxZVTtFQUNFO0VBQ0E7QTdHZ21ZWjtBNkc5bFlZO0VBQ0U7QTdHZ21ZZDtBNkc5bFljO0VBQ0U7QTdHZ21ZaEI7QTZHeGxZSTtFQUNFO0E3RzBsWU47QTZHdGxZVTtFQUNFLHlCaEI1VUk7QTdGbzZZaEI7QTZHdGxZWTtFQUNFO0E3R3dsWWQ7QTZHcGxZVTtFQUNFO0VBQ0E7QTdHc2xZWjtBNkdwbFlZO0VBQ0U7QTdHc2xZZDtBNkdubFlZO0VBQ0U7QTdHcWxZZDtBNkdubFljO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0dxbFloQjtBNkdqbFlZO0VBQ0U7RUFDQTtBN0dtbFlkO0E2RzlrWVk7RUFDRTtBN0dnbFlkO0E2R3ZrWVE7RUFDRTtBN0d5a1lWO0E2R3RrWVk7RUFDRTtBN0d3a1lkO0E2R2hrWWM7RUFDRTtBN0dra1loQjtBNkcxallJO0VBQ0U7QTdHNGpZTjtBNkd6allRO0VBQ0U7QTdHMmpZVjtBNkd6allVO0VBQ0U7RUFDQTtBN0cyallaO0E2R3pqWVk7RUFDRTtBN0cyallkO0E2R3hqWVk7RUFDRTtBN0cwallkO0E2R3ZqWVk7RUFDRTtBN0d5allkO0E2R3JqWVU7RUFDRTtBN0d1allaO0E2R2pqWUk7RUFDRTtBN0dtallOO0E2R2hqWVE7RUFDRTtBN0drallWO0E2R2hqWVU7RUFDRTtFQUNBO0E3R2tqWVo7QTZHaGpZWTtFQUNFO0E3R2tqWWQ7QTZHM2lZSTtFQUNFO0E3RzZpWU47QTZHMWlZUTtFQUNFO0E3RzRpWVY7QTZHMWlZVTtFQUNFO0VBQ0E7QTdHNGlZWjtBNkcxaVlZO0VBQ0U7QTdHNGlZZDtBNkd6aVlZO0VBQ0U7QTdHMmlZZDtBNkd4aVlZO0VBQ0U7QTdHMGlZZDtBNkdsaVlFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdHb2lZSjtBNkdsaVlJO0VBQ0U7QTdHb2lZTjtBNkdsaVlNO0VBQ0U7QTdHb2lZUjtBNkdqaVlVO0VBQ0U7QTdHbWlZWjtBNkcxaFlNO0VBQ0U7RUFDQTtBN0c0aFlSO0E2RzFoWVE7RUFDRTtFQUNBO0E3RzRoWVY7QTZHMWhZVTtFQUNFO0E3RzRoWVo7QTZHcmhZTTtFQUNFO0E3R3VoWVI7QTZHcmhZUTtFQUNFO0E3R3VoWVY7QTZHbGhZUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R29oWVY7QTZHOWdZRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHZ2hZSjtBNkc3Z1lNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdHK2dZUjtBNkc3Z1lRO0VBQ0U7QTdHK2dZVjtBNkcxZ1lJO0VBQ0U7QTdHNGdZTjtBNkcxZ1lNO0VBQ0U7RUFDQTtFQUNBO0E3RzRnWVI7QTZHeGdZSTtFQUNFO0VBQ0E7QTdHMGdZTjtBNkd4Z1lNO0VBQ0U7RUFDQTtFQUNBO0E3RzBnWVI7QTZHbmdZTTtFQUNFLG1CaEJua0JRO0E3RndrWmhCO0E2RzkvWE07RUFDRTtBN0dnZ1lSO0E2RzcvWFU7RUFDRTtBN0crL1haO0E2R3IvWFE7RUFDRSx5QmhCemxCUTtBN0ZnbFpsQjtBNkdyL1hVO0VBQ0U7QTdHdS9YWjtBNkdyL1hZO0VBQ0U7RUFDQTtBN0d1L1hkO0E2R2wvWFE7RUFDRTtFQUNBO0E3R28vWFY7QTZHbC9YVTtFQUNFO0E3R28vWFo7QTZHMytYTTtFQUNFO0E3RzYrWFI7QTZHMStYVTtFQUNFO0E3RzQrWFo7QTZHbitYTTtFQUNFO0E3R3ErWFI7QTZHaitYSTtFQUNFO0E3R20rWE47QTZHLzlYVTtFQUNFO0VBQ0E7QTdHaStYWjtBNkcvOVhZO0VBQ0U7QTdHaStYZDtBNkcvOVhjO0VBQ0U7QTdHaStYaEI7QTZHNzlYWTtFQUNFO0VBQ0E7QTdHKzlYZDtBNkc1OVhZO0VBQ0U7RUFDQTtBN0c4OVhkO0E2RzU5WGM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3Rzg5WGhCO0E2R3Q5WEk7RUFDRTtBN0d3OVhOO0E2R2g5WFU7RUFDRTtFQUNBO0E3R2s5WFo7QTZHaDlYWTtFQUNFO0E3R2s5WGQ7QTZHaDlYYztFQUNFO0E3R2s5WGhCO0E2Rzk4WFk7RUFDRTtFQUNBO0E3R2c5WGQ7QTZHNThYVTtFQUNFO0E3Rzg4WFo7QTZHeDhYSTtFQUNFO0E3RzA4WE47QTZHajhYWTtFQUNFO0E3R204WGQ7QTZHaDhYWTtFQUNFO0VBQ0E7QTdHazhYZDtBNkcvN1hZO0VBQ0U7RUFDQTtBN0dpOFhkO0E2Ry83WGM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3R2k4WGhCO0E2R3g3WE07RUFDRTtBN0cwN1hSO0E2R2w3WFk7RUFDRTtBN0dvN1hkO0E2R3o2WFk7RUFDRTtBN0cyNlhkO0E2R2w2WEk7RUFDRTtBN0dvNlhOO0E2R2g2WFU7RUFDRTtFQUNBO0E3R2s2WFo7QTZHaDZYWTtFQUNFO0VBQ0E7QTdHazZYZDtBNkd4NVhNO0VBQ0U7QTdHMDVYUjtBNkd2NVhVO0VBQ0U7QTdHeTVYWjtBNkdqNVhVO0VBQ0U7QTdHbTVYWjtBNkdqNVhZO0VBQ0U7QTdHbTVYZDtBNkcxNFhJO0VBQ0U7QTdHNDRYTjtBNkd4NFhVO0VBQ0U7RUFDQTtBN0cwNFhaO0E2R3g0WFk7RUFDRTtFQUNBO0E3RzA0WGQ7QTZHdDRYYztFQUNFO0E3R3c0WGhCO0E2R240WFU7RUFDRTtBN0dxNFhaO0E2RzczWEk7RUFDRTtBN0crM1hOO0E2RzMzWFU7RUFDRTtFQUNBO0E3RzYzWFo7QTZHMzNYWTtFQUNFO0VBQ0E7QTdHNjNYZDtBNkd6M1hjO0VBQ0U7QTdHMjNYaEI7QTZHbjNYZ0I7RUFDRTtBN0dxM1hsQjtBNkcvMlhVO0VBQ0U7QTdHaTNYWjtBNkd6MlhJO0VBQ0U7QTdHMjJYTjtBNkd2MlhVO0VBQ0U7RUFDQTtBN0d5MlhaO0E2R3YyWFk7RUFDRTtBN0d5MlhkO0E2R3YyWGM7RUFDRTtBN0d5MlhoQjtBNkdyMlhZO0VBQ0U7RUFDQTtBN0d1MlhkO0E2R24yWGM7RUFDRTtBN0dxMlhoQjtBNkdoMlhVO0VBQ0U7QTdHazJYWjtBNkd6MVhNO0VBQ0U7QTdHMjFYUjtBNkd4MVhVO0VBQ0U7QTdHMDFYWjs7QThHbnhaQTtFQUNFO0E5R3N4WkY7QThHcHhaRTtFQUNFO0VBQ0E7QTlHc3haSjtBOEdseFpJO0VBQ0U7QTlHb3haTjtBOEdoeFpFO0VBQ0U7QTlHa3haSjtBOEdoeFpJO0VBQ0U7QTlHa3haTjtBOEcvd1pJO0VBQ0U7RUFDQTtFQUNBO0E5R2l4Wk47QThHL3daTTtFQUNFO0VBQ0E7QTlHaXhaUjtBOEcvd1pRO0VBQ0U7QTlHaXhaVjtBOEc1d1pJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUc4d1pOO0E4RzV3Wk07RUFDRTtFQUNBO0E5Rzh3WlI7QThHNXdaUTtFQUNFO0E5Rzh3WlY7QThHeHdaRTtFQUNFO0E5RzB3Wko7QThHeHdaSTtFQUNFO0VBQ0E7QTlHMHdaTjtBOEd2d1pJO0VBQ0U7RUFDQTtFQUNBO0E5R3l3Wk47QThHdHdaSTtFQUNFO0VBQ0E7QTlHd3daTjtBOEdyd1pJO0VBQ0U7QTlHdXdaTjtBOEdud1pFO0VBQ0U7QTlHcXdaSjtBOEdud1pJO0VBQ0U7QTlHcXdaTjtBOEdud1pNO0VBQ0U7RUFDQTtBOUdxd1pSO0E4R2h3WlU7RUFDRTtBOUdrd1paO0E4Ry92WlU7RUFDRTtBOUdpd1paO0E4Ry92Wlk7RUFDRTtBOUdpd1pkO0E4RzN2Wk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlHNnZaUjtBOEczdlpRO0VBQ0U7QTlHNnZaVjtBOEcxdlpRO0VBQ0U7QTlHNHZaVjtBOEd6dlpRO0VBQ0U7QTlHMnZaVjtBOEd4dlpRO0VBQ0U7QTlHMHZaVjtBOEd2dlpRO0VBQ0U7QTlHeXZaVjtBOEd0dlpRO0VBQ0U7QTlHd3ZaVjtBOEcvdVpZO0VBQ0U7QTlHaXZaZDtBOEcxdVpZO0VBQ0U7QTlHNHVaZDtBOEcxdVpjO0VBQ0U7RUFDQTtBOUc0dVpoQjtBOEd6dVpjO0VBQ0U7RUFDQTtBOUcydVpoQjtBOEdsdVpFO0VBQ0U7RUFDQTtFQUNBO0E5R291Wko7QThHbHVaSTtFQUNFO0VBQ0E7RUFDQTtBOUdvdVpOO0E4R2x1Wk07RUFDRTtFQUNBO0E5R291WlI7QThHL3RaRTtFQUNFO0VBQ0E7RUFDQTtBOUdpdVpKO0E4Ry90Wkk7RUFDRTtBOUdpdVpOO0E4Rzl0Wkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUdndVpOO0E4Rzl0Wk07RUFDRTtFQUNBO0E5R2d1WlI7QThHOXRaUTtFQUNFO0E5R2d1WlY7QThHN3RaUTtFQUNFO0E5Ryt0WlY7QThHNXRaUTtFQUNFO0E5Rzh0WlY7QThHcHRaVTtFQUNFO0E5R3N0Wlo7QThHcHRaWTtFQUNFO0E5R3N0WmQ7QThHbnRaWTtFQUNFO0E5R3F0WmQ7QThHbHRaWTtFQUNFO0E5R290WmQ7QThHanRaWTtFQUNFO0E5R210WmQ7QThHaHRaWTtFQUNFO0E5R2t0WmQ7QThHM3NaSTtFQUNFO0E5RzZzWk47QThHMXNaSTtFQUNFO0VBQ0E7RUFDQTtBOUc0c1pOO0E4RzFzWk07RUFDRTtBOUc0c1pSOztBK0d0OVpJO0VBQ0U7QS9HeTlaTjtBK0dwOVpJO0VBQ0U7QS9HczlaTjtBK0duOVpRO0VBQ0U7RUFDQTtFQUNBO0EvR3E5WlY7QStHbDlaUTtFQUNFO0VBQ0E7QS9HbzlaVjtBK0dsOVpVO0VBQ0U7QS9HbzlaWjtBK0doOVpRO0VBQ0U7QS9HazlaVjtBK0cvOFpRO0VBQ0U7RUFDQTtBL0dpOVpWO0ErRzM4WkU7RUFDRTtFQUNBO0VBQ0E7QS9HNjhaSjtBK0cxOFpNO0VBQ0U7RUFDQSxlbEIvQ0k7RWtCZ0RKLGlCbEJoREk7QTdGNC9aWjtBK0cxOFpRO0VBQ0U7QS9HNDhaVjtBK0d2OFpRO0VBQ0U7QS9HeThaVjs7QWdIamdhRTtFQUNFO0FoSG9nYUo7QWdIbGdhSTtFQUNFO0FoSG9nYU47QWdIamdhUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoSG1nYVY7QWdIamdhVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoSG1nYVo7QWdIaGdhVTtFQUNFO0VBQ0E7RUFDQTtBaEhrZ2FaO0FnSC8vWlU7RUFDRTtBaEhpZ2FaOztBaUgxaGFNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakg2aGFSO0FpSDNoYVE7RUFDRTtBakg2aGFWO0FpSHRoYVE7RUFDRTtBakh3aGFWO0FpSHJoYVE7RUFDRTtBakh1aGFWOztBa0gzaWFJO0VBQ0U7QWxIOGlhTjtBa0h6aWFJO0VBQ0U7QWxIMmlhTjtBa0h6aWFNO0VBQ0U7QWxIMmlhUjtBa0h6aWFRO0VBQ0U7QWxIMmlhVjtBa0h4aWFRO0VBQ0U7RUFDQTtBbEgwaWFWO0FrSHhpYVU7RUFDRTtBbEgwaWFaO0FrSHhpYVk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbEgwaWFkO0FrSHRpYWM7RUFDRTtBbEh3aWFoQjtBa0h0aWFnQjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEh3aWFsQjtBa0hyaWFnQjtFQUNFO0VBQ0E7QWxIdWlhbEI7QWtIcGlhZ0I7RUFDRTtBbEhzaWFsQjtBa0hwaWFrQjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsSHNpYXBCO0FrSC9oYVU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxIaWlhWjtBa0g3aGFRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxIK2hhVjtBa0g3aGFVO0VBQ0U7RUFDQTtBbEgraGFaO0FrSDVoYWM7RUFDRTtFQUNBO0VBQ0E7QWxIOGhhaEI7QWtINWhhZ0I7RUFDRTtFQUNBO0FsSDhoYWxCO0FrSHZoYWdCO0VBQ0U7RUFDQTtBbEh5aGFsQjs7QW1Idm5hSTtFQUNFO0VBQ0E7RUFDQTtBbkgwbmFOOztBbUhubmFJO0VBQ0U7RUFDQTtBbkhzbmFOO0FtSHBuYU07RUFDRTtFQUNBO0FuSHNuYVI7QW1Ibm5hTTtFQUNFO0VBQ0E7QW5IcW5hUjtBbUhubmFRO0VBQ0U7QW5IcW5hVjtBZTVsYUk7RW9HdkNBO0lBbUJJO0lBQ0E7RW5Ib25hTjtFbUhsbmFNO0lBQ0U7SUFDQTtFbkhvbmFSO0VtSGpuYU07SUFDRTtJQUNBO0VuSG1uYVI7QUFDRjtBbUg3bWFJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5IK21hTjtBbUg3bWFNO0VBQ0U7QW5IK21hUjtBbUg1bWFNO0VBbEVKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkhpcmFGO0FtSGhuYU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkhrbmFSO0FtSGhuYVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSGtuYVY7QW1IL21hWTtFQUNFO0FuSGluYWQ7QW1INW1hUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSDhtYVY7QW1INW1hVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkg4bWFaO0FtSDNtYVU7RUFDRTtFQUNBO0FuSDZtYVo7QW1IM21hWTtFQUNFO0FuSDZtYWQ7QW1IeG1hWTtFQUNFO0VBQ0E7QW5IMG1hZDtBbUh2bWFZO0VBQ0U7QW5IeW1hZDtBbUh0bWFZO0VBQ0U7QW5Id21hZDtBbUhubWFRO0VBQ0U7QW5IcW1hVjtBbUhubWFVO0VBQ0U7QW5IcW1hWjtBbUg5bGFRO0VBQ0U7QW5IZ21hVjtBbUg5bGFVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkhnbWFaO0FtSDVsYVE7RUFDRTtBbkg4bGFWO0FtSDVsYVU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5IOGxhWjtBbUgxbGFRO0VBQ0U7QW5INGxhVjtBbUgxbGFVO0VBQ0U7RUFDQTtFQUNBO0FuSDRsYVo7QW1IeGxhUTtFQUNFO0VBQ0E7QW5IMGxhVjtBbUh0bGFNO0VBQ0U7QW5Id2xhUjtBbUhybGFNO0VBQ0U7QW5IdWxhUjtBbUhybGFRO0VBQ0U7RUFDQTtBbkh1bGFWO0FtSHBsYVE7RUFDRTtFQUNBO0FuSHNsYVY7QW1IaGxhVTtFQUNFLGNwQy9NRDtFb0NnTkM7QW5Ia2xhWjtBbUg1a2FJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5IOGthTjtBZTV1YUk7RW9Hb0tNO0lBQ0U7RW5IMmthVjtFbUh6a2FVO0lBQ0U7RW5IMmthWjtFbUh2a2FRO0lBQ0U7RW5IeWthVjtFbUh2a2FVO0lBQ0U7RW5IeWthWjtBQUNGO0FtSGxrYUU7RUFDRTtFQUNBO0FuSG9rYUo7QW1IaGthSTtFQUNFO0FuSGtrYU47O0FtSDdqYUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkhna2FGO0FtSDlqYUU7RUFDRTtBbkhna2FKO0FtSDdqYUU7RUFDRTtBbkgramFKO0FtSDdqYUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkgramFOO0FtSDNqYUU7RUFDRTtFQUNBO0FuSDZqYUo7QW1IM2phSTtFQUNFO0FuSDZqYU47QW1IMWphSTtFQUNFO0FuSDRqYU47QW1IMWphTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSDRqYVI7QW1IMWphUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuSDRqYVY7QW1IemphUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkgyamFWO0FtSHhqYVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSDBqYVY7QW1IeGphVTtFQUNFO0FuSDBqYVo7QW1IeGphWTtFQUNFO0FuSDBqYWQ7QW1IcGphTTtFQUNFO0VBQ0E7RUFDQTtBbkhzamFSO0FtSHBqYVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSHNqYVY7QW1IaGphRTtFQUNFO0FuSGtqYUo7QW1IL2lhTTtFQUNFO0VBQ0E7RUFDQTtBbkhpamFSO0FtSC9pYVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkhpamFWO0FtSDFpYUk7RUFDRTtFQUNBO0FuSDRpYU47QWV0MmFJO0VvR2tVTTtJQUNFO0VuSHVpYVY7QUFDRjs7QW1IaGlhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5IbWlhRjtBbUhqaWFFO0VBQ0U7RUFDQTtBbkhtaWFKO0FtSC9oYUk7RUFDRTtFQUNBO0FuSGlpYU47O0FtSDVoYUE7RUFDRTtBbkgraGFGOztBbUgxaGFJO0VBQ0U7RUFDQTtFQUNBO0FuSDZoYU47QW1IM2hhTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuSDZoYVI7QW1IM2hhUTtFQUNFO0VBQ0E7RUFDQTtBbkg2aGFWO0FtSDFoYVE7RUFDRTtBbkg0aGFWO0FtSDFoYVU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSDRoYVo7QW1IMWhhWTtFQUNFO0FuSDRoYWQ7QW1IemhhWTtFQUNFO0FuSDJoYWQ7QW1IeGhhWTtFQUNFO0FuSDBoYWQ7QW1IdmhhWTtFQUNFO0FuSHloYWQ7QW1IdGhhWTtFQUNFO0VBQ0E7RUFDQTtBbkh3aGFkO0FtSHJoYVk7RUFDRTtFQUNBO0FuSHVoYWQ7QW1IbGhhUTtFQUNFO0FuSG9oYVY7O0FtSDVnYUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkgrZ2FKO0FtSDdnYUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSCtnYU47QW1IN2dhTTtFQUNFO0FuSCtnYVI7O0FldDhhSTtFb0dpY0k7SUFDRTtFbkh5Z2FSO0VtSGpnYVE7SUFDRTtFbkhtZ2FWO0FBQ0Y7QW1INS9aQTtFQUNFO0FuSDgvWkY7QW1INS9aRTtFQUNFO0FuSDgvWko7QW1INS9aSTtFQUNFO0FuSDgvWk47QWV4OWFJO0VvR21kSjtJQVlJO0VuSDYvWkY7RW1IMy9aRTtJQUNFO0VuSDYvWko7QUFDRjs7QW1Iei9aQTtFQUNFO0VBQ0E7QW5INC9aRjtBbUgxL1pFO0VBQ0U7RUFDQTtFQUNBO0FuSDQvWko7QW1IMS9aSTtFQUNFO0FuSDQvWk47QW1Iei9aSTtFQUNFO0VBQ0E7QW5IMi9aTjtBbUh6L1pNO0VBQ0U7RUFDQTtBbkgyL1pSOztBbUhwL1pFO0VBQ0U7RUFDQTtFQUNBO0FuSHUvWko7QW1Ici9aSTtFQUNFO0FuSHUvWk47QW1IcC9aSTtFQUNFO0FuSHMvWk47QW1Ibi9aSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5IcS9aTjtBbUhsL1pJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5Iby9aTjtBbUhsL1pNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkhvL1pSO0FtSGwvWlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSG8vWlY7QW1IeCtaRTtFQUNFO0VBQ0E7RUFDQTtBbkgwK1pKO0FtSHgrWkk7RUFDRTtBbkgwK1pOO0FtSHgrWk07RUFDRTtBbkgwK1pSO0FtSHgrWlE7RUFDRTtBbkgwK1pWO0FtSHIrWkk7RUFDRTtBbkh1K1pOO0FtSHArWkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkhzK1pOO0FtSHArWk07RUFDRTtFQUNBO0FuSHMrWlI7QW1IbitaTTtFQUNFO0FuSHErWlI7QW1IbCtaTTtFQUNFO0VBQ0E7RUFDQTtBbkhvK1pSO0FtSGorWk07RUFDRTtBbkhtK1pSO0FtSGgrWk07RUFDRTtBbkhrK1pSO0FtSC85Wk07RUFDRTtFQUNBO0FuSGkrWlI7O0FtSDM5WkE7RUFDRTtBbkg4OVpGO0FtSDU5WkU7RUEvcUJBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQTRxQkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkhtK1pKOztBbUg5OVpFO0VBQ0U7RUFDQTtBbkhpK1pKO0FtSDk5WkU7RUFDRTtBbkhnK1pKO0FtSDk5Wkk7RUFDRTtFQUNBO0FuSGcrWk47O0FtSDM5WkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSDg5WkY7QW1INTlaRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuSDg5Wko7QW1INTlaSTtFQUNFO0FuSDg5Wk47QW1IMzlaSTtFQUNFO0FuSDY5Wk47QW1IMzlaTTtFQUNFO0FuSDY5WlI7O0FtSHY5WkE7RUFDRTtFQUNBO0FuSDA5WkY7QW1IeDlaRTtFQUNFO0VBQ0E7RUFDQTtBbkgwOVpKO0FtSHg5Wkk7RUFDRTtFQUNBO0VBQ0E7QW5IMDlaTjtBbUh2OVpJO0VBQ0U7RUFDQTtBbkh5OVpOO0FtSHY5Wk07RUFDRTtBbkh5OVpSO0FtSHY5WlE7RUFDRTtBbkh5OVpWO0FtSHQ5WlE7RUFDRTtBbkh3OVpWO0FtSHI5WlE7RUFDRTtBbkh1OVpWO0FtSG45Wk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkhxOVpSO0FtSGo5Wkk7RUFDRTtBbkhtOVpOO0FtSGo5Wk07RUFDRTtBbkhtOVpSO0FtSC84Wkk7RUFDRTtBbkhpOVpOO0FtSDk4Wkk7RUFDRTtBbkhnOVpOO0FtSDk4Wk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkhnOVpSO0FtSDU4Wkk7RUFDRTtBbkg4OFpOO0FtSDM4Wkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkg2OFpOOztBbUh2OFpFO0VBQ0U7RUFDQTtBbkgwOFpKO0FtSHg4Wkk7RUFDRTtBbkgwOFpOO0FtSHY4Wkk7RUFDRTtBbkh5OFpOOztBbUhuOFpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5IczhaSjtBbUhwOFpJO0VBQ0U7QW5IczhaTjtBbUhuOFpJO0VBQ0U7RUFDQTtBbkhxOFpOO0FtSGw4Wkk7RUFDRTtBbkhvOFpOO0FtSGw4Wk07RUFDRTtBbkhvOFpSO0FtSGo4Wk07RUFDRTtBbkhtOFpSO0FtSGo4WlE7RUFDRTtBbkhtOFpWO0FtSC83Wk07RUFDRTtFQUNBO0VBQ0E7QW5IaThaUjtBbUg5N1pNO0VBQ0U7QW5IZzhaUjtBbUg5N1pRO0VBQ0U7QW5IZzhaVjtBbUg1N1pVO0VBQ0U7QW5IODdaWjs7QW1IcjdaRTtFQUNFO0VBQ0E7QW5IdzdaSjtBbUh0N1pJO0VBQ0U7RUFDQTtFQUNBO0FuSHc3Wk47QW1IdDdaTTtFQUNFO0FuSHc3WlI7O0FtSGo3WkU7RUFDRTtFQUNBO0VBQ0E7QW5IbzdaSjs7QW1IaDdaQTtFQUNFO0lBQ0U7SUFDQTtFbkhtN1pGO0VtSGg3WkE7SUFDRTtJQUNBO0VuSGs3WkY7RW1ILzZaQTtJQUNFO0lBQ0E7RW5IaTdaRjtBQUNGO0FtSDc2WkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkgrNlpKO0FtSDc2Wkk7RUF6NkJGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQXM2Qkk7QW5IbzdaTjtBbUhqN1pJO0VBQ0U7QW5IbTdaTjtBbUhoN1pJO0VBQ0U7RUFDQTtBbkhrN1pOO0FtSC82Wkk7RUFDRTtFQUNBO0VBQ0E7QW5IaTdaTjtBbUg5NlpJO0VBQ0U7RUFDQTtBbkhnN1pOOztBbUh6NlpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5INDZaTjtBbUgxNlpNO0VBQ0U7QW5INDZaUjtBbUh6NlpNO0VBQ0U7RUFDQTtFQUNBO0FuSDI2WlI7QW1IdjZaUTtFQUNFO0FuSHk2WlY7O0FvSGo0YkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEhvNGJKO0FvSGw0Ykk7RUFDRTtBcEhvNGJOO0FvSGo0Ykk7RUFDRTtFQUNBO0VBQ0E7QXBIbTRiTjtBb0hoNGJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEhrNGJOO0FvSGg0Yk07RUFDRTtBcEhrNGJSO0FvSDkzYkk7RUFDRTtFQUNBO0VBQ0E7QXBIZzRiTjtBb0g3M2JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwSCszYk47QW9INzNiTTtFQUNFO0VBQ0E7RUFDQTtBcEgrM2JSO0FvSDUzYk07RUFDRTtFQUNBO0VBQ0E7QXBIODNiUjtBb0gzM2JNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBINjNiUjtBb0h6M2JJO0VBQ0U7RUFDQTtBcEgyM2JOO0FvSHgzYkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwSDAzYk47QW9IdjNiSTtFQUNFO0FwSHkzYk47QW9IdDNiSTtFQUNFO0FwSHczYk47QW9IcDNiTTtFQUNFO0FwSHMzYlI7O0FxSDU4YkE7RUFDRTtBckgrOGJGO0FxSDc4YkU7RUFDRTtBckgrOGJKO0FxSDU4YkU7RUFDRTtBckg4OGJKO0FxSDM4YkU7RUFDRTtBckg2OGJKOztBcUh4OGJFO0VBQ0U7QXJIMjhiSjtBcUh4OGJFO0VBQ0U7QXJIMDhiSjtBcUh4OGJJO0VBQ0U7QXJIMDhiTjtBcUh0OGJFO0VBQ0U7QXJIdzhiSjtBcUhyOGJFO0VBQ0U7QXJIdThiSjtBcUhyOGJJO0VBQ0U7RUFDQTtFQUVBO0FySHM4Yk47QXFIcDhiTTtFQUNFO0FySHM4YlI7QXFIbjhiTTtFQUNFO0FySHE4YlI7QXFIajhiUTtFQUNFO0FySG04YlY7QXFINzdiRTtFQUNFO0FySCs3Yko7O0FzSHovYkU7RUFDRTtFQUNBO0VBQ0E7QXRINC9iSjtBc0h4L2JRO0VBQ0U7QXRIMC9iVjtBc0hyL2JRO0VBQ0U7RUFDQTtBdEh1L2JWO0FzSHIvYlU7RUFDRTtBdEh1L2JaOztBc0gvK2JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEhrL2JGO0FzSGgvYkU7RUFDRTtFQUNBO0F0SGsvYko7O0F1SHRoY0E7RUFDRTtBdkh5aGNGO0F1SHZoY0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SHloY0o7O0F1SHJoY0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkh3aGNGO0F1SHRoY0U7RUFDRTtFQUNBO0VBQ0E7QXZId2hjSjtBdUh0aGNJO0VBQ0U7RUFDQTtFQUNBO0F2SHdoY047QXVIcmhjSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZIdWhjTjtBdUhyaGNNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZIdWhjUjtBdUhyaGNRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZIdWhjVjtBdUhwaGNRO0VBQ0U7QXZIc2hjVjtBdUhwaGNVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZIc2hjWjtBdUhoaGNZO0VBQ0U7RUFDQTtBdkhraGNkO0F1SGhoY2M7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkhraGNoQjtBdUhoaGNnQjtFQUNFO0F2SGtoY2xCO0F1SDdnY1k7RUFDRTtBdkgrZ2NkO0FleGljSTtFd0c3Q0o7SUErRUk7RXZIMGdjRjtBQUNGOztBQXRrY0E7RUFDRTtFQUNBO0FBeWtjRjs7QUFya2NFO0VBQ0U7QUF3a2NKO0FBdGtjSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBd2tjTjs7QUFua2NBO0VBQ0U7RUFDQTtBQXNrY0Y7QUFwa2NFO0VBQ0U7RUFDQTtBQXNrY0o7QUFwa2NJO0VBQ0U7QUFza2NOO0FBbmtjSTtFQUNFO0FBcWtjTjs7QUFoa2NBO0VBQ0U7QUFta2NGOztBQS9qY0U7RUFDRTtBQWtrY0o7O0FBNWpjSTtFQUNFO0VBQ0E7QUEramNOO0FBN2pjTTtFQUNFO0FBK2pjUjtBQTVqY007RUFDRTtBQThqY1I7QUE1amNRO0VtSDdGTjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW5IMkZRO0VBQ0E7QUFra2NWO0FBOWpjTTtFQUNFO0FBZ2tjUjtBQTdqY007RUFDRTtFQUNBO0VBQ0E7QUEramNSO0FBN2pjUTtFQUNFO0VBQ0E7QUEramNWOztBQXZqY0U7RUFDRTtFQUNBO0VBQ0E7QUEwamNKO0FBeGpjSTtFQUNFO0VBQ0E7QUEwamNOO0FBdmpjSTtFQUNFO0FBeWpjTjtBQXRqY0k7RUFDRTtFQUNBO0FBd2pjTjtBQXJqY0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF1amNOOztBQS9pY007RUFDRTtFQUNBO0FBa2pjUjs7QUE1aWNBO0VBQ0U7QUEraWNGO0FBNWljSTtFQUNFO0VBQ0E7QUE4aWNOO0FBeGljVTtFQUNFO0FBMGljWjtBQXZpY1U7RUFDRTtBQXlpY1o7QWVocWNJO0Vmc0dKO0lBeUJJO0lBQ0E7RUFxaWNGO0FBQ0Y7O0FBemhjVTtFQUNFO0VBQ0E7QUE0aGNaLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXRvYXN0LXBsdWdpbi9zcmMvanF1ZXJ5LnRvYXN0LmNzcyIsIndlYnBhY2s6Ly8vLi9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2ltYWdlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29kZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b24tZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS1mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19qdW1ib3Ryb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RvYXN0cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fc3Bpbm5lcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19kaXNwbGF5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9faW50ZXJhY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NjcmVlbnJlYWRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaGFkb3dzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3RleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJpbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9lbGVtZW50cy9jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9lbGVtZW50cy9iYXNlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZWxlbWVudHMvaGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZWxlbWVudHMvaGVhZGluZ3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9lbGVtZW50cy9mb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZWxlbWVudHMvYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL2VsZW1lbnRzL2FuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9lbGVtZW50cy9icmVhZGNydW1icy5zY3NzIiwid2VicGFjazovLy8uL2VsZW1lbnRzL2xpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZWxlbWVudHMvdGFicy5zY3NzIiwid2VicGFjazovLy8uL2VsZW1lbnRzL3RhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL2VsZW1lbnRzL2ZvbGRhYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvZXZlbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy91c2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvZXhwb3J0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvZXhwb3J0L3Jlc3VsdC5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL2V4cG9ydC9oZWFkZXIvbGFuZHNjYXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvZXhwb3J0L2hlYXRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvZXhwb3J0L2Zvb3Rlci9sYW5kc2NhcGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9leHBvcnQvc2NoZWR1bGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9leHBvcnQvY2xhc3NpZmljYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9leHBvcnQvY2xhc3NpZmljYXRpb24vc3BlZWR3YXlncC5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL2V4cG9ydC9jbGFzc2lmaWNhdGlvbi9zcGVlZHdheWdwMi5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL2V4cG9ydC9jbGFzc2lmaWNhdGlvbi9mbGF0dHJhY2suc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9leHBvcnQvY2xhc3NpZmljYXRpb24vZmltZS1pY2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9leHBvcnQvY2xhc3NpZmljYXRpb24vZmltLWlzZy5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL2V4cG9ydC9jbGFzc2lmaWNhdGlvbi9mbWktaXRhbGlhbm8tb3Blbi5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL2V4cG9ydC9jbGFzc2lmaWNhdGlvbi9mbWktZnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9leHBvcnQvY2xhc3NpZmljYXRpb24vcGFpcnMtMTAuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9leHBvcnQvcHJhY3RpY2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9leHBvcnQvaGVhdF90YWJsZS5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL2V4cG9ydC9zdGFydGluZ19saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvZXhwb3J0L3N3Yy5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL2V4cG9ydC9wb3NpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9leHBvcnQvcmFua2luZ19saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvZXhwb3J0L3F1YWxpZnlpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9oZWF0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvYW1lbmRtZW50cy5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL2RyYXcuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9teWxhcHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9xdWFsaWZ5aW5nLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBqUXVlcnkgdG9hc3QgcGx1Z2luIGNyZWF0ZWQgYnkgS2FtcmFuIEFobWVkIGNvcHlyaWdodCBNSVQgbGljZW5zZSAyMDE0XG4gKi9cbi5qcS10b2FzdC13cmFwIHsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiBmaXhlZDsgd2lkdGg6IDI1MHB4OyAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyB6LWluZGV4OiA5MDAwICFpbXBvcnRhbnQ7IH1cbi5qcS10b2FzdC13cmFwICogeyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IH1cblxuLmpxLXRvYXN0LXdyYXAuYm90dG9tLWxlZnQgeyBib3R0b206IDIwcHg7IGxlZnQ6IDIwcHg7IH1cbi5qcS10b2FzdC13cmFwLmJvdHRvbS1yaWdodCB7IGJvdHRvbTogMjBweDsgcmlnaHQ6IDQwcHg7IH1cbi5qcS10b2FzdC13cmFwLnRvcC1sZWZ0IHsgdG9wOiAyMHB4OyBsZWZ0OiAyMHB4OyB9XG4uanEtdG9hc3Qtd3JhcC50b3AtcmlnaHQgeyB0b3A6IDIwcHg7IHJpZ2h0OiA0MHB4OyB9XG5cbi5qcS10b2FzdC1zaW5nbGUgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwMCU7IHBhZGRpbmc6IDEwcHg7IG1hcmdpbjogMHB4IDBweCA1cHg7IGJvcmRlci1yYWRpdXM6IDRweDsgZm9udC1zaXplOiAxMnB4OyBmb250LWZhbWlseTogYXJpYWwsIHNhbnMtc2VyaWY7IGxpbmUtaGVpZ2h0OiAxN3B4OyBwb3NpdGlvbjogcmVsYXRpdmU7ICBwb2ludGVyLWV2ZW50czogYWxsICFpbXBvcnRhbnQ7IGJhY2tncm91bmQtY29sb3I6ICM0NDQ0NDQ7IGNvbG9yOiB3aGl0ZTsgfVxuXG4uanEtdG9hc3Qtc2luZ2xlIGgyIHsgZm9udC1mYW1pbHk6IGFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7IG1hcmdpbjogMHB4IDBweCA3cHg7IGJhY2tncm91bmQ6IG5vbmU7IGNvbG9yOiBpbmhlcml0OyBsaW5lLWhlaWdodDogaW5oZXJpdDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgfVxuLmpxLXRvYXN0LXNpbmdsZSBhIHsgY29sb3I6ICNlZWU7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgZm9udC13ZWlnaHQ6IGJvbGQ7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB3aGl0ZTsgcGFkZGluZy1ib3R0b206IDNweDsgZm9udC1zaXplOiAxMnB4OyB9XG5cbi5qcS10b2FzdC1zaW5nbGUgdWwgeyBtYXJnaW46IDBweCAwcHggMHB4IDE1cHg7IGJhY2tncm91bmQ6IG5vbmU7IHBhZGRpbmc6MHB4OyB9XG4uanEtdG9hc3Qtc2luZ2xlIHVsIGxpIHsgbGlzdC1zdHlsZS10eXBlOiBkaXNjICFpbXBvcnRhbnQ7IGxpbmUtaGVpZ2h0OiAxN3B4OyBiYWNrZ3JvdW5kOiBub25lOyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IH1cblxuLmNsb3NlLWpxLXRvYXN0LXNpbmdsZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAzcHg7IHJpZ2h0OiA3cHg7IGZvbnQtc2l6ZTogMTRweDsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5qcS10b2FzdC1sb2FkZXIgeyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IC0ycHg7IGhlaWdodDogNXB4OyB3aWR0aDogMCU7IGxlZnQ6IDA7IGJvcmRlci1yYWRpdXM6IDVweDsgYmFja2dyb3VuZDogcmVkOyB9XG4uanEtdG9hc3QtbG9hZGVkIHsgd2lkdGg6IDEwMCU7IH1cbi5qcS1oYXMtaWNvbiB7IHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDUwcHg7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IDEwcHg7IH1cbi5qcS1pY29uLWluZm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQmdBQUFBWUNBWUFBQURnZHozNEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUFHd1NVUkJWRWhMdFphOVNnTkJFTWM5c1V4eFJjb1VLU3pTV0loWHBGTWhoWVdGaGFCZzR5UFlpV0NYWnhCTEVSc0xSUzNFUWtFZndDS2RqV0pBd1NLQ2dvS0NjdWR2NE81WUxydDdFemdYaGlVMy80K2IyY2ttd1ZqSlNwS2tRNndBaTRnd2hUK3ozd1JCY0V6MHlqU3NlVVRyY1J5ZnNIc1htRDBBbWJIT0M5SWk4VkltbnVYQlBnbEhwUTV3d1NWTTdzTm5URzdaYTRKd0RkQ2p4eUFpSDNueUEybXRhVEp1ZmlEWjVkQ2FxbEl0SUxoMU5IYXRmTjVza3ZqeDlaMzhtNjlDZ3p1WG1aZ1ZyUElHRTc2M0p4OXFLc1JveldZdzZ4T0hkRVIrbm4yS2tPK0JiK1VWNUNCTjZXQzZRdEJnYlJWb3pyYWhBYm1tNkh0VXNndFBDMTl0RmR4WFpZQk9ma2JtRkoxVmFIQTFWQUhqZDBwcDcwb1RaenZSK0VWcngyWWdmZHNxNmV1NTVCSFlSOGhsY2tpK24ra0VSVUZHOEJyQTBCd2plQXYyTThXTFFCdGN5K1NENmZOc21uQjNBbEJMcmdUdFZXMWMyUU40YlZXTEFUYUlTNjBKMkR1NXkxVGlKZ2pTQnZGVlpnVG13Q1UrZEFaRm9QeEdFRXM4bnlIQzlCd2UyR3ZFSnYyV1haYjB2amR5RlQ0Q3hrM2Uva0lxbE9Hb1ZMd3dQZXZwWUhUKzAwVCtoV3dYRGY0QUpBT1VxV2NEaGJ3QUFBQUFTVVZPUks1Q1lJST0nKTsgYmFja2dyb3VuZC1jb2xvcjogIzMxNzA4ZjsgY29sb3I6ICNkOWVkZjc7IGJvcmRlci1jb2xvcjogI2JjZThmMTsgfVxuLmpxLWljb24td2FybmluZyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCZ0FBQUFZQ0FZQUFBRGdkejM0QUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQUdZU1VSQlZFaEw1WlN2VHNOUUZNYlhaR0lDTVlHWW1KaEFRSUpBSUNZUVBBQUNpU0RCOEFpSUNRUUpUNENxUUV3Z0p2WUFTQVFDaVppWW1KaEFJQkFUQ0FSSnkrOXJUc2xkZDhzS3UxTTArZExiMDU3djYvbGJxLzJySzBtUy9UUk5qOWNXTkFLUFlJSklJN2dJeENjUTUxY3ZxSUQrR0lFWDhBU0c0QjFiSzVnSVpGZVFmb0pkRVhPZmdYNFFBUWc3a0gyQTY1eVE4N2x5eGIyN3NnZ2tBekF1RmhiYmcxSzJrZ0NrQjFiVnd5SVI5bTJMN1BSUEloRFVJWGdHdHlLdzU3NXl6M2xUTnM2WDRKWG5qVitMS00vbTNNeWRuVGJ0T0tJanR6NlZoQ0JxNHZTbTNuY2RyRDJsazBWZ1VYU1ZLalZESlhKemlqVzFSUWRzVTdGNzdIZTh1Njhrb05aVHo4T3o1eUdhNkozSDNsWjB4WWdYQksyUXltbFdXQStSV25ZaHNrTEJ2MnZtRStoQk1DdGJBN0tYNWRyV3lSVC8ySnNxWjJJdmZCOVk0YldETk1GYkpSRm1DOUU3NFNvUzBDcXVsd2prQzArNWJwY1YxQ1o4Tk1lajRwankwVStkb0RRc0d5bzFoelZKdHRJamhRN0duQnRSRk4xVWFyVWxIOEYzeGljdCtIWTA3ckV6b1VHUGxXY2pSRlJyNC9nQ2haZ2MzWkwyZDhvQUFBQUFTVVZPUks1Q1lJST0nKTsgYmFja2dyb3VuZC1jb2xvcjogIzhhNmQzYjsgY29sb3I6ICNmY2Y4ZTM7IGJvcmRlci1jb2xvcjogI2ZhZWJjYzsgfVxuLmpxLWljb24tZXJyb3IgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQmdBQUFBWUNBWUFBQURnZHozNEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUFIT1NVUkJWRWhMclphL1NnTkJFTVp6aDBXS0NDbFNDS2FJWU9FRCtBQUtlUVFMRzhIV3p0TENJbUJyWWFkZ0lkWStnSUtOWWtCRlN3dTdDQW9xQ2dra29HQkkvRTI4UGRiTFptZURMZ3paemN4ODMveloyU1NYQzFqOWZyK0kxSHE5M2cyeXhINGl3TTF2a29CV0FkeENtcHpUeGZrTjJSY3laTmFIRklrU28xMCs4a2d4a1hJVVJWNUhHeFRtRnVjNzVCMlJmUWtweEhHOGFBZ2FBRmEwdEFIcVlGZlE3SXdlMnloT0RrOCtKNEM3eUFvUlRXSTN3LzRrbEdSZ1I0bE83UnBuOStndk15V3ArdXhGaDgrSCtBUmxnTjFuSnVKdVFBWXZOa0Vud0dGY2sxOEVyNHEzZWdFYy9vTyttaExkS2dSeWhkTkZpYWNDMHJsT0NiaE5WejRIOUZuQVlnREJ2VTNRSWlvWmxKRkxKdHNvSFlSRGZpWm9VeUl4cUN0UnBWbEFOcTBFVTRkQXBqcnRnZXpQRmFkNVMxOVdnamtjMGhOVm51RjRIalZBNkM3UXJTSWJ5bEIrb1plM2FIZ0JzcWxOcUtZSDQ4alh5SktNdUFiaXlWSjhLemFCM2VSYzBwZzlWd1E0bmlGcnlJNjhxaU9pM0Fiandkc2ZuQXRrMGJDalRMSktyNm1yRDlnOGlxL1MvQjgxaGd1T01sUVRuVnlHNDB3QWNqbm1nc0NORVNEcmptZTd3ZmZ0UDRQN1NQNE4zQ0paZHZ6b055R3EyYy9IV09YSkdzdlZnK1JBL2syTUMvd042STJZQTJQdDhHa0FBQUFBU1VWT1JLNUNZSUk9Jyk7IGJhY2tncm91bmQtY29sb3I6ICNhOTQ0NDI7IGNvbG9yOiAjZjJkZWRlOyBib3JkZXItY29sb3I6ICNlYmNjZDE7IH1cbi5qcS1pY29uLXN1Y2Nlc3MgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQmdBQUFBWUNBWUFBQURnZHozNEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUFEc1NVUkJWRWhMWTJBWUJmUU1nZi8vLzNQOCsvZXZBSWd2QS9Gc0lGK0JhdllERFdNQkdyb2FTTU1CaUU4VkM3QVpEcklGYU1GbmlpM0FaVGpVZ3NVVVdVREE4T2RBSDZpUWJRRWh3NEh5R3NQRWNLQlhCSUM0QVJoZXg0RzRCc2ptd2VVMXNvSUZhR2cvV3RvRlpSSVpkRXZJTWh4a0NDalhJVnNBVFY2Z0ZHQUNzNFJzdzBFR2dJSUgzUUpZSmdIU0FSUVpEcldBQitqYXd6Z3MrUTJVTzQ5RDdqblJTUkdvRUZSSUxjZG1FTVdHSTBjbTBKSjJRcFlBMVJEdmNtekpFV2hBQmhEL3BxckwwUzBDV3VBQktnblJraTlsTHNlUzdnMkFscXdIV1FTS0g0b0tMcklMcFJHaEVRQ3cyTGlSVUlhNGx3QUFBQUJKUlU1RXJrSmdnZz09Jyk7IGNvbG9yOiAjZGZmMGQ4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjM2M3NjNkOyBib3JkZXItY29sb3I6ICNkNmU5YzY7IH0iLCJAaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcFwiO1xuQGltcG9ydCBcIn5qcXVlcnktdG9hc3QtcGx1Z2luL3NyYy9qcXVlcnkudG9hc3QuY3NzXCI7XG5cbiRjb2xvci13aGl0ZTogI2ZmZjtcbiRjb2xvci1ibGFjazogIzAwMDtcbiRjb2xvci1ncmV5OiAjZTFlMWUxO1xuJGNvbG9yLWJsdWU6ICMxOTM2NTc7XG5cbiRmb250LXNpemU6IDE0cHg7XG4kbGluZS1oZWlnaHQ6ICRmb250LXNpemUgKiAxLjg7XG5cbkBpbXBvcnQgXCJlbGVtZW50cy9jb2xvcnNcIjtcblxuQGltcG9ydCBcImVsZW1lbnRzL2Jhc2VcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy9oZWFkZXJcIjtcblxuQGltcG9ydCBcImVsZW1lbnRzL2hlYWRpbmdzXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvZm9ybVwiO1xuQGltcG9ydCBcImVsZW1lbnRzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy9hbmltYXRpb25zXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvYnJlYWRjcnVtYnNcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy9saW5rc1wiO1xuQGltcG9ydCBcImVsZW1lbnRzL3RhYnNcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy90YWJsZXNcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy9mb2xkYWJsZVwiO1xuXG5AaW1wb3J0IFwicGFnZXMvZXZlbnRcIjtcbkBpbXBvcnQgXCJwYWdlcy91c2VyXCI7XG5AaW1wb3J0IFwicGFnZXMvZXhwb3J0XCI7XG5AaW1wb3J0IFwicGFnZXMvaGVhdFwiO1xuQGltcG9ydCBcInBhZ2VzL2FtZW5kbWVudHNcIjtcbkBpbXBvcnQgXCJwYWdlcy9kcmF3XCI7XG5AaW1wb3J0IFwicGFnZXMvbXlsYXBzXCI7XG5AaW1wb3J0IFwicGFnZXMvcXVhbGlmeWluZ1wiO1xuXG4uanEtdG9hc3Qtc2luZ2xlIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbn1cblxuLmZhbmN5Ym94X19jb250YWluZXIge1xuICAuZmFuY3lib3hfX3NsaWRlIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgLmZhbmN5Ym94X19jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDkwJSAhaW1wb3J0YW50O1xuICAgICAgbWF4LXdpZHRoOiAxMTAwcHggIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgbWluLXdpZHRoOiAxMDBweDtcbiAgcGFkZGluZzogNnB4O1xuXG4gIC5kcm9wZG93bi1pdGVtIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogMnB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4uY2hhbXBpb25zaGlwLXJvdW5kLWZsYWcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNkcmF3LWJ5LW51bWJlcnMtZm9ybSB7XG4gIGltZy5mbGFnIHtcbiAgICB3aWR0aDogMjBweDtcbiAgfVxufVxuXG4jc3ByaW50LWZvcm0ge1xuICAucmlkZXJzIHtcbiAgICAucmlkZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICYuaGVhZGVyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgIH1cblxuICAgICAgLmNvbG9yLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogNTBweDtcblxuICAgICAgICAuY29sb3Ige1xuICAgICAgICAgIEBpbmNsdWRlIHRlYW0tY29sb3I7XG5cbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24ge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICB9XG5cbiAgICAgIC5wb2ludHMsIC5hZGRpdGlvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJ0biB7XG4gICYubXlsYXBzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFlMWUxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2QxZDFkMTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBoZWlnaHQ6IDlweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4jbW9kYWwtYm9keSB7XG4gIC50YWJsZSB7XG4gICAgdHIge1xuICAgICAgdGgsIHRkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI3ByYWN0aWNlLXRpbWVzIHtcbiAgcGFkZGluZy10b3A6IDA7XG5cbiAgLmdyb3VwIHtcbiAgICBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAmLnBvcyB7XG4gICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRpbWUge1xuICAgICAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAyMHB4O1xuICB9XG59XG5cbiNwZGYtZXhwb3J0cyB7XG4gIHRhYmxlIHtcbiAgICB0ciB7XG4gICAgICB0aCwgdGQge1xuICAgICAgICAmLmZpbGUge1xuXG4gICAgICAgIH1cblxuICAgICAgICAmLmJ1dHRvbnMge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyohXG4gKiBCb290c3RyYXAgdjQuNS4zIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAyMCBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMjAgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gKi9cblxuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcInJvb3RcIjtcbkBpbXBvcnQgXCJyZWJvb3RcIjtcbkBpbXBvcnQgXCJ0eXBlXCI7XG5AaW1wb3J0IFwiaW1hZ2VzXCI7XG5AaW1wb3J0IFwiY29kZVwiO1xuQGltcG9ydCBcImdyaWRcIjtcbkBpbXBvcnQgXCJ0YWJsZXNcIjtcbkBpbXBvcnQgXCJmb3Jtc1wiO1xuQGltcG9ydCBcImJ1dHRvbnNcIjtcbkBpbXBvcnQgXCJ0cmFuc2l0aW9uc1wiO1xuQGltcG9ydCBcImRyb3Bkb3duXCI7XG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjdXN0b20tZm9ybXNcIjtcbkBpbXBvcnQgXCJuYXZcIjtcbkBpbXBvcnQgXCJuYXZiYXJcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJiYWRnZVwiO1xuQGltcG9ydCBcImp1bWJvdHJvblwiO1xuQGltcG9ydCBcImFsZXJ0XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJtZWRpYVwiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuQGltcG9ydCBcInRvYXN0c1wiO1xuQGltcG9ydCBcIm1vZGFsXCI7XG5AaW1wb3J0IFwidG9vbHRpcFwiO1xuQGltcG9ydCBcInBvcG92ZXJcIjtcbkBpbXBvcnQgXCJjYXJvdXNlbFwiO1xuQGltcG9ydCBcInNwaW5uZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwicHJpbnRcIjtcbiIsIi8vIERvIG5vdCBmb3JnZXQgdG8gdXBkYXRlIGdldHRpbmctc3RhcnRlZC90aGVtaW5nLm1kIVxuOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgYXQtcnVsZS1uby12ZW5kb3ItcHJlZml4LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNVxufVxuXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXG4vLyBvbiBlbGVtZW50cyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgcmVjZWl2ZSBmb2N1cyBidXQgd291bGRuJ3Qgbm9ybWFsbHkgc2hvdyBhIHZpc2libGVcbi8vIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXG4vLyBvciB0aGUgYnJvd3NlciBoYXMgc29tZWhvdyBkZXRlcm1pbmVkIHRoYXQgdGhlIHVzZXIgaXMgcHJpbWFyaWx5IGEga2V5Ym9hcmQgdXNlciBhbmQvb3Jcbi8vIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXG4vL1xuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxuLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gRGlzYWJsZSBhdXRvLWhpZGluZyBzY3JvbGxiYXIgaW4gSUUgJiBsZWdhY3kgRWRnZSB0byBhdm9pZCBvdmVybGFwLFxuICAvLyBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBpbnRlcmFjdCB3aXRoIHRoZSBjb250ZW50XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gV29yayBhcm91bmQgYSBGaXJlZm94L0lFIGJ1ZyB3aGVyZSB0aGUgdHJhbnNwYXJlbnQgYGJ1dHRvbmAgYmFja2dyb3VuZFxuLy8gcmVzdWx0cyBpbiBhIGxvc3Mgb2YgdGhlIGRlZmF1bHQgYGJ1dHRvbmAgZm9jdXMgc3R5bGVzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZS9cbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQ7XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2Vcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxufVxuXG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cbkBpZiAkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zIHtcbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtXG4gIHBhZGRpbmc6IDA7IC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC1cbn1cblxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBmb250LXNpemUoMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiBqb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAgICAgIDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAgICAgIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplOiAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICBsaWdodGVuKCR0YWJsZS1kYXJrLWJnLCA3LjUlKSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLWxldmVsOiAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWxldmVsOiAgICAgICAgICAtNiAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRsYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAvIDIpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjogICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNCcgdmlld0JveD0nMCAwIDQgNCc+PHBhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAvIDIgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBzdWJ0cmFjdCgkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNCkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgIGVzY2FwZS1zdmcoJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yKSBuby1yZXBlYXQgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogYWRkKDFlbSAqIC43NSwgKDIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKiAuNzUpICsgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PScwIDAgMTIgMTInPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuXG5cbi8vIE5hdmJhclxuXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vLyBTcGlubmVyc1xuXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gVXRpbGl0aWVzXG5cbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5ICFkZWZhdWx0O1xuJHVzZXItc2VsZWN0czogYWxsLCBhdXRvLCBub25lICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG5cbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCBmb250LXJlc2l6aW5nXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmc1xuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgZm9udCBzaXplXG4kcmZzLWJhc2UtZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy1mb250LXNpemUtdW5pdDogcmVtICFkZWZhdWx0O1xuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIGZvbnQtc2l6ZSBzdGFydHMgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbi8vIFJlc2l6ZSBmb250LXNpemUgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBcIm51bWJlclwiIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB0byBmYWxzZVxuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS1mb250LXNpemUgdW5pdFxuJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0OiB1bml0KCRyZnMtYmFzZS1mb250LXNpemUpO1xuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS1mb250LXNpemUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInB4XCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJyZW1cIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBmb250LXNpemUgbWl4aW5cbkBtaXhpbiByZnMoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAvLyBDYWNoZSAkZnMgdW5pdFxuICAkZnMtdW5pdDogaWYodHlwZS1vZigkZnMpID09IFwibnVtYmVyXCIsIHVuaXQoJGZzKSwgZmFsc2UpO1xuXG4gIC8vIEFkZCAhaW1wb3J0YW50IHN1ZmZpeCBpZiBuZWVkZWRcbiAgJHJmcy1zdWZmaXg6IGlmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIik7XG5cbiAgLy8gSWYgJGZzIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICRmcyBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gIEBpZiBub3QgJGZzLXVuaXQgb3IgJGZzLXVuaXQgIT0gXCJcIiBhbmQgJGZzLXVuaXQgIT0gXCJweFwiIGFuZCAkZnMtdW5pdCAhPSBcInJlbVwiIG9yICRmcyA9PSAwIHtcbiAgICBmb250LXNpemU6ICN7JGZzfSN7JHJmcy1zdWZmaXh9O1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBWYXJpYWJsZXMgZm9yIHN0b3Jpbmcgc3RhdGljIGFuZCBmbHVpZCByZXNjYWxpbmdcbiAgICAkcmZzLXN0YXRpYzogbnVsbDtcbiAgICAkcmZzLWZsdWlkOiBudWxsO1xuXG4gICAgLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xuICAgIEBpZiAkZnMtdW5pdCA9PSBcInB4XCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIEBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnMgLyAkcmZzLXJlbS12YWx1ZX1yZW0jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSBweCB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnN9cHgjeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGVycm9yIFwiYCN7JHJmcy1mb250LXNpemUtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtZm9udC1zaXplLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xuICAgIH1cblxuICAgIC8vIE9ubHkgYWRkIG1lZGlhIHF1ZXJ5IGlmIGZvbnQtc2l6ZSBpcyBiaWdnZXIgYXMgdGhlIG1pbmltdW0gZm9udC1zaXplXG4gICAgLy8gSWYgJHJmcy1mYWN0b3IgPT0gMSwgbm8gcmVzY2FsaW5nIHdpbGwgdGFrZSBwbGFjZVxuICAgIEBpZiAkZnMgPiAkcmZzLWJhc2UtZm9udC1zaXplIGFuZCAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB7XG4gICAgICAkbWluLXdpZHRoOiBudWxsO1xuICAgICAgJHZhcmlhYmxlLXVuaXQ6IG51bGw7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUpIC8gJHJmcy1mYWN0b3I7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gZ2l2ZW4gZm9udC1zaXplIGFuZCBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcblxuICAgICAgLy8gQmFzZSBmb250LXNpemUgZm9ybWF0dGluZ1xuICAgICAgLy8gTm8gbmVlZCB0byBjaGVjayBpZiB0aGUgdW5pdCBpcyB2YWxpZCwgYmVjYXVzZSB3ZSBkaWQgdGhhdCBiZWZvcmVcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAjeyRmcy1taW4gLyAkcmZzLXJlbS12YWx1ZX1yZW0sICN7JGZzLW1pbn1weCk7XG5cbiAgICAgIC8vIElmIHR3by1kaW1lbnNpb25hbCwgdXNlIHNtYWxsZXN0IG9mIHNjcmVlbiB3aWR0aCBhbmQgaGVpZ2h0XG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAjeyRmcy1kaWZmICogMTAwIC8gJHJmcy1icmVha3BvaW50fSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplLlxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcbiAgICB9XG5cbiAgICAvLyBSZW5kZXJpbmdcbiAgICBAaWYgJHJmcy1mbHVpZCA9PSBudWxsIHtcbiAgICAgIC8vIE9ubHkgcmVuZGVyIHN0YXRpYyBmb250LXNpemUgaWYgbm8gZmx1aWQgZm9udC1zaXplIGlzIGF2YWlsYWJsZVxuICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJG1xLXZhbHVlOiBudWxsO1xuXG4gICAgICAvLyBSRlMgYnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICBAaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcmVtIHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludCAvICRyZnMtcmVtLXZhbHVlfSN7JHJmcy1icmVha3BvaW50LXVuaXR9O1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50fXB4O1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgICAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LFxuICAgICAgICAvLyB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICAgICAmLFxuICAgICAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbiB1c2VzIFJGUyB0byByZXNjYWxlIGZvbnQgc2l6ZXNcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTsgfVxuaDIsIC5oMiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTsgfVxuaDMsIC5oMyB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTsgfVxuaDQsIC5oNCB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTsgfVxuaDUsIC5oNSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTsgfVxuaDYsIC5oNiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTsgfVxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5MS1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkyLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5NC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoOTAlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkKCkge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgLyAyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQoKSB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4iLCIvLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMDAlKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAvIDI7XG59XG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2AgbWl4aW5cIiwgXCJ2NC41LjJcIiwgXCJ2NVwiKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJSAvICRjb3VudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgLyAkY291bnQ7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIFRleHR1YWwgZm9ybSBjb250cm9sc1xuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHNlbGVjdCBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRpbnB1dC1jb2xvcjtcbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG4gIH1cbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICY6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgLy8gU3VwcHJlc3MgdGhlIG5lc3RlZCBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLCBhcyBpdCBsb29rcyBiYWQgYW5kIGNhbm5vdCBiZSBtYWRlIHRvXG4gICAgLy8gbWF0Y2ggdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIG5hdGl2ZSB3aWRnZXQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIH1cbn1cblxuLy8gTWFrZSBmaWxlIGlucHV0cyBiZXR0ZXIgbWF0Y2ggdGV4dCBpbnB1dHMgYnkgZm9yY2luZyB0aGVtIHRvIG5ldyBsaW5lcy5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuLy9cbi8vIExhYmVsc1xuLy9cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPi88bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG59XG5cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmW3NpemVdLFxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xufVxuXG5cbi8vIEZvcm0gZ3JpZFxuLy9cbi8vIFNwZWNpYWwgcmVwbGFjZW1lbnQgZm9yIG91ciBncmlkIHN5c3RlbSdzIGAucm93YCBmb3IgdGlnaHRlciBmb3JtIGxheW91dHMuXG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCBmb3Igd29ya2Fyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBiYXNlIC5mb3JtLWNoZWNrXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxuXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgbWFwLWdldCgkZGF0YSwgY29sb3IpLCBtYXAtZ2V0KCRkYXRhLCBpY29uKSk7XG59XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLFxuICAgIC5jdXN0b20tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmb3JtLWNvbnRyb2wtZm9jdXMoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG4vLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsIGVzY2FwZS1zdmcoJGljb24pICRjdXN0b20tc2VsZWN0LWJnIG5vLXJlcGVhdCAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uIC8gJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkYnRuLWZvbnQtc2l6ZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogaWYoJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucywgcG9pbnRlciwgbnVsbCk7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWZvY3VzLWJveC1zaGFkb3csICRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldDpkaXNhYmxlZCBhLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWxpbmUtaGVpZ2h0LWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1saW5lLWhlaWdodC1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbiAgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbiAgfVxufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tc3BhY2VyIDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1sZWZ0IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1yaWdodCB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcHJpZ2h0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChyaWdodCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wbGVmdCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGxlZnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiBlbmFibGVkIFBvcHBlci5qcywgcmVzZXQgYmFzaWMgZHJvcGRvd24gcG9zaXRpb25cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uZHJvcGRvd24tbWVudSB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gIH1cbn1cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcsICRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15LCB0cnVlKTtcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gIC8vIFByZXZlbnQgZHJvcGRvd24gb3ZlcmZsb3cgaWYgdGhlcmUncyBubyBwYWRkaW5nXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG59XG4iLCJAbWl4aW4gY2FyZXQtZG93bigpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwKCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtcmlnaHQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICRuYXYtZGl2aWRlci1jb2xvciwgJG1hcmdpbi15OiAkbmF2LWRpdmlkZXItbWFyZ2luLXksICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICRtYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG5hdi1kaXZpZGVyKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3ByaWdodCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmN1c3RvbS1zZWxlY3Q6Zm9jdXMsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBjdXN0b20gZmlsZSBpbnB1dCBhYm92ZSB0aGUgbGFiZWxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIHtcbiAgICB6LWluZGV4OiA0O1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5jdXN0b20tc2VsZWN0IHtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kXG4vL1xuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxuLy8gYXBwZW5kIGVsZW1lbnRzIGFsbG93IHVzIHRvIDEpIGJlIGxlc3MgY2xldmVyLCAyKSBzaW1wbGlmeSBvdXIgc2VsZWN0b3JzLCBhbmRcbi8vIDMpIHN1cHBvcnQgSFRNTDUgZm9ybSB2YWxpZGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG5cbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQgeyBtYXJnaW4tcmlnaHQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHsgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gQWxsb3cgdXNlIG9mIDxsYWJlbD4gZWxlbWVudHMgYnkgb3ZlcnJpZGluZyBvdXIgZGVmYXVsdCBtYXJnaW4tYm90dG9tXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmQgcm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBjb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogJGN1c3RvbS1jb250cm9sLXNwYWNlci14O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IC0xOyAvLyBQdXQgdGhlIGlucHV0IGJlaGluZCB0aGUgbGFiZWwgc28gaXQgZG9lc24ndCBvdmVybGF5IHRleHRcbiAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgaGVpZ2h0OiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgb3BhY2l0eTogMDtcblxuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc2V1ZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtY3Vyc29yO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgICAmOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSYWRpb3Ncbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgcmFkaW9zLlxuXG4uY3VzdG9tLXJhZGlvIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdywgJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyO1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAvIDI7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwOyAvLyBFZGdlIHNwZWNpZmljXG4gICAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7IC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIG1hcmdpbi1sZWZ0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7ICAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCAvIDI7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5jb250YWluZXIsXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgICAvLyBDaGFuZ2VzIGZsZXgtYmFzZXMgdG8gYXV0byBiZWNhdXNlIG9mIGFuIElFMTAgYnVnXG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcbi5uYXZiYXItZGFyayB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiAkY2FyZC1oZWlnaHQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIC8vIER1ZSB0byBzcGVjaWZpY2l0eSBvZiB0aGUgYWJvdmUgc2VsZWN0b3IgKGAuY2FyZCA+IC5saXN0LWdyb3VwYCksIHdlIG11c3RcbiAgLy8gdXNlIGEgY2hpbGQgc2VsZWN0b3IgaGVyZSB0byBwcmV2ZW50IGRvdWJsZSBib3JkZXJzLlxuICA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuICA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBpbWFnZSBzaXplIGJ1ZyBpbiBJRVxuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI4ODU1XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jb2xvcjtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtJGNhcmQtc3BhY2VyLXkgLyAyO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBmbGV4LXNocmluazogMDsgLy8gRm9yIElFOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5Mzk2XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIENhcmQgZGVja1xuXG4uY2FyZC1kZWNrIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWRlY2stbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogLSRjYXJkLWRlY2stbWFyZ2luO1xuXG4gICAgLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHRcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuXG4gID4gLmNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgIH1cblxuICAgID4gLmNhcmQtaGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRicmVhZGNydW1iLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYnJlYWRjcnVtYi1mb250LXNpemUpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gU3VwcHJlc3MgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvciBpbiBtb2Rlcm4gYnJvd3NlcnNcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgICAgY29udGVudDogZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtYXJnaW4tbGVmdDogLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJGJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAkanVtYm90cm9uLXBhZGRpbmcgKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIGNvbG9yOiAkanVtYm90cm9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpICRqdW1ib3Ryb24tcGFkZGluZztcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGNsb3NlLWZvbnQtc2l6ZSArICRhbGVydC1wYWRkaW5nLXggKiAyO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmFsZXJ0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJvcmRlci1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWNvbG9yLWxldmVsKSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gICAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbiAgfVxufVxuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBsaW5lLWhlaWdodDogMDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwcm9ncmVzcy1mb250LXNpemUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwcm9ncmVzcy1ib3gtc2hhZG93KTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbik7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XG59XG5cbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc7XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmICsgJiB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAtOSksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgNikpO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5hLmNsb3NlLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIudG9hc3Qge1xuICAvLyBQcmV2ZW50cyBmcm9tIHNocmlua2luZyBpbiBJRTExLCB3aGVuIGluIGEgZmxleCBjb250YWluZXJcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgzNDFcbiAgZmxleC1iYXNpczogJHRvYXN0LW1heC13aWR0aDtcbiAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvYXN0LWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkdG9hc3QtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJHRvYXN0LWJveC1zaGFkb3c7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvYXN0LWJvcmRlci1yYWRpdXMpO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHRvYXN0LXBhZGRpbmcteDtcbiAgfVxuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteSAkdG9hc3QtcGFkZGluZy14O1xuICBjb2xvcjogJHRvYXN0LWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhzdWJ0cmFjdCgkdG9hc3QtYm9yZGVyLXJhZGl1cywgJHRvYXN0LWJvcmRlci13aWR0aCkpO1xufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXg7IC8vIGFwcGx5IHRvIGJvdGggdmVydGljYWwgYW5kIGhvcml6b250YWxcbn1cbiIsIi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi5tb2RhbC1vcGVuIHtcbiAgLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1vZGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDsgLy8gSUUxMC8xMVxuICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTsgLy8gSUUxMC8xMVxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC8vIEVuc3VyZSBgbW9kYWwtZGlhbG9nLWNlbnRlcmVkYCBleHRlbmRzIHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgdmlldyAoSUUxMC8xMSlcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gSUUxMFxuICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDsgLy8gUmVzZXQgaGVpZ2h0IHRvIDAgZXhjZXB0IG9uIElFXG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC8vIEVuc3VyZSBgLm1vZGFsLWJvZHlgIHNob3dzIHNjcm9sbGJhciAoSUUxMC8xMSlcbiAgJi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmcgLSAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuIC8gMjtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvb2x0aXAtZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3Age1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXJpZ2h0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWxlZnQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcG9wb3Zlci1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIG1hcmdpbjogMCAkcG9wb3Zlci1ib3JkZXItcmFkaXVzO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gIG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgdG9wOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tcmlnaHQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUgLyAxMDAlIDEwMCU7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBSb3RhdGluZyBib3JkZXJcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJvcmRlcjogJHNwaW5uZXItYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogc3Bpbm5lci1ib3JkZXIgLjc1cyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG4gIGJvcmRlci13aWR0aDogJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtO1xufVxuXG4vL1xuLy8gR3Jvd2luZyBjaXJjbGVcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogc3Bpbm5lci1ncm93IC43NXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmICRzaXplICE9IDAge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIERlcHJlY2F0ZWQsIGJ1dCBhdm9pZHMgaXNzdWVzIHdpdGggZmxleCBjb250YWluZXJzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBVc2VkIGluc3RlYWQgb2YgYG92ZXJmbG93LXdyYXBgIGZvciBJRSAmIEVkZ2UgTGVnYWN5XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9tYWluLmNzcy9ibG9iL21hc3Rlci9zcmMvX3ByaW50LmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMTgwODE1MTUwOTM0L2h0dHA6Ly9jc3MtZGlzY3Vzcy5pbmN1dGlvLmNvbS93aWtpL1ByaW50aW5nX1RhYmxlc1xuICAgIC8vXG5cbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIFNwZWNpZnkgYSBzaXplIGFuZCBtaW4td2lkdGggdG8gbWFrZSBwcmludGluZyBjbG9zZXIgYWNyb3NzIGJyb3dzZXJzLlxuICAgIC8vIFdlIGRvbid0IHNldCBtYXJnaW4gaGVyZSBiZWNhdXNlIGl0IGJyZWFrcyBgc2l6ZWAgaW4gQ2hyb21lLiBXZSBhbHNvXG4gICAgLy8gZG9uJ3QgdXNlIGAhaW1wb3J0YW50YCBvbiBgc2l6ZWAgYXMgaXQgYnJlYWtzIGluIENocm9tZS5cbiAgICBAcGFnZSB7XG4gICAgICBzaXplOiAkcHJpbnQtcGFnZS1zaXplO1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAgIC5uYXZiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYmxhY2s7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktMzAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWRhcmsge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxuICB9XG59XG4iLCIkZ2F0ZS1yZWQ6IHJnYigyMDQsIDUxLCAwKTtcbiRnYXRlLWJsdWU6IHJnYigwLCAxMDIsIDE1Myk7XG4kZ2F0ZS13aGl0ZTogcmdiKDI1NSwgMjU1LCAyNTUpO1xuJGdhdGUteWVsbG93OiByZ2IoMjU1LCAyMDQsIDApO1xuJGdhdGUtZ3JlZW46IHJnYigwLCAxNTMsIDEwMik7XG4kZ2F0ZS1ncmV5OiAjYjdiN2I3O1xuJGdhdGUtb3JhbmdlOiAjYzY4NTAzO1xuJGdhdGUtZ29sZDogI0E2N0MwMTtcbiRnYXRlLXBpbms6ICNmYTAwZmY7XG5cbi5jb2xvci1yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2F0ZS1yZWQgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2F0ZS1ibHVlICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnYXRlLXdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci15ZWxsb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2F0ZS15ZWxsb3cgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWdyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdhdGUtZ3JlZW4gIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2F0ZS1ncmV5ICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2F0ZS1vcmFuZ2UgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWdvbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2F0ZS1nb2xkICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci1waW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdhdGUtcGluayAhaW1wb3J0YW50O1xufVxuIiwiKiB7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogbm9uZTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleTtcbiAgfVxuXG4gICYucGRmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG5cbiAgaW1nLmVtb2ppIHtcbiAgICB3aWR0aDogMTZweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ubWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xuICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgJi5zdWIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgLndyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmJhY2sge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG5cbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAwLjI1cmVtO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXk7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAubWV0YSwgLmJ1dHRvbnMge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICB9XG5cbiAgICAgIC50aXRsZS1jb250ZW50IHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgICAgIH1cblxuICAgICAgLm1ldGEge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAuYnV0dG9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBnYXA6IDZweDtcblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAuY29udGVudC1vdmVybGF5IHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjUpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgei1pbmRleDogOTk5O1xuXG4gICAgICAgIC5hbGVydCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTBweDtcbiAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWFpbi1wYW5lbCB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xufVxuXG4uYnV0dG9uLWJhciB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgYmFja2dyb3VuZDogI2NjY2NjYztcbn1cblxuI2JyZWFkY3J1bWJzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXk7XG59XG5cbiNhbGVydHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZTtcbn1cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsLXNtIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGZvbnQtc2l6ZTtcbn1cblxuLmRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24taXRlbSB7XG4gICAgc3BhbiB7XG4gICAgICBmb250LXNpemU6IHNtYWxsZXI7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBzbWFsbCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZ2F0ZSwgLnJpZGVyLCAucmVzdWx0LXJpZGVyLCAudGVhbS1jb2xvciwgLmNvbG9yIHtcbiAgJi5yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnYXRlLXJlZDtcbiAgfVxuXG4gICYuYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdhdGUtYmx1ZTtcbiAgfVxuXG4gICYud2hpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnYXRlLXdoaXRlO1xuICB9XG5cbiAgJi55ZWxsb3cge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnYXRlLXllbGxvdztcbiAgfVxuXG4gICYuZ3JlZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnYXRlLWdyZWVuO1xuICB9XG5cbiAgJi5ncmV5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2F0ZS1ncmV5O1xuICB9XG5cbiAgJi5vcmFuZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnYXRlLW9yYW5nZTtcbiAgfVxuXG4gICYucGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdhdGUtcGluaztcbiAgfVxufVxuXG50YWJsZSB7XG4gIHRkW2NvbnRlbnRlZGl0YWJsZV0ge1xuICAgICY6aG92ZXIge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQ6ICNkOGQ4ZDg7XG4gICAgfVxuICB9XG59XG5cbi8vLm1vZGFsLWRpYWxvZyB7XG4vLyAgbWFyZ2luOiA1cHg7XG4vL31cblxuLm1vZGFsLWhlYWRlciwgLm1vZGFsLWJvZHkge1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4ubG9hZGVyIHtcbiAgdG9wOiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDB2dztcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICB6LWluZGV4OiAxMDAwMDAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm1vZGFsLWJvZHkge1xuICAubW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMDtcblxuICAgID4gKiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAyNXB4O1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMjNweDtcbn1cblxuaDUge1xuICBmb250LXNpemU6IDIxcHg7XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLm1haW4tcGFuZWwge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAubWFpbiB7XG4gICAgcGFkZGluZzogMS41cmVtIDA7XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAudGl0bGUsIC5jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFsZXJ0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICBwLCBzcGFuIHtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgaW1nIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAmLmluZm8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcblxuICAgIGxpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4jaGVhdC1saXN0IHtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG5cbiAgfVxufVxuIiwiaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xufVxuXG4jdG9wLWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgcGFkZGluZy10b3A6IDVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAxNXB4IDEwcHg7XG5cbiAgLmxvZ28ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAyMjBweDtcbiAgICB9XG4gIH1cblxuICAuc3ViLWhlYWRlciB7XG4gICAgPiAqIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1lbnUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXk7XG4gICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICAgIC51c2VyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogNXB4IDVweCA1cHggMTBweDtcblxuICAgICAgICAuaGV5IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAud2F2ZSB7XG5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBidXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogMTVweCAwO1xuXG4gICAgLmxvZ28ge1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMjUwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN1Yi1oZWFkZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5cbiAgICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgICAgc21hbGwge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxN3B4XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tZW51IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMzBweDtcblxuICAgICAgICAudXNlciB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcblxuICAgICAgICAgIC5oZXkge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuIiwiaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtZmFtaWx5OiByaWZ0LCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuIiwiZm9ybSB7XG4gIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogY2hlY2tib3g7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogcmFkaW87XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveDtcbiAgfVxuXG4gIGxhYmVsLnJlcXVpcmVkOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAqXCI7XG4gICAgY29sb3I6ICNmZjAwMDA7XG4gIH1cblxuICB0ZXh0YXJlYSB7XG4gICAgJi5mb3JtLWNvbnRyb2wge1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICB9XG4gIH1cblxuICAubWFpbi1wYW5lbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDE0MHB4O1xuXG4gICAgJi5oYXMtaW5mbyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTgwcHg7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbi1iYXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItdG9wOiA1cHggJGNvbG9yLWJsdWUgc29saWQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDIwcHggMTBweCAkY29sb3ItYmx1ZTtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgfVxuXG4gICAgLmJ1dHRvbnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGdhcDogMTBweDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgJi5kaWFsb2ctYnV0dG9ucyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWdyb3VwIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAuYnV0dG9uLWJhciB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG5cbiAgICAgIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAuYnV0dG9ucyB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nIHtcbiAgdGV4dGFyZWEge1xuICAgICYuZm9ybS1jb250cm9sIHtcbiAgICAgIGhlaWdodDogODBweDtcbiAgICB9XG4gIH1cbn1cbiIsIltkYXRhLWVtb2ppXSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuW2RhdGEtZW1vamldOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1lbW9qaSk7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuXG4uYnRuIHtcbiAgJi5idG4tZW1vamkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5lbW9qaSB7XG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLndhdmUge1xuICBhbmltYXRpb246IHdhdmUgMnMgaW5maW5pdGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQGtleWZyYW1lcyB3YXZlIHtcbiAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSggMC4wZGVnKSB9XG4gIDEwJSB7IHRyYW5zZm9ybTogcm90YXRlKDE0LjBkZWcpIH1cbiAgMjAlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTguMGRlZykgfVxuICAzMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgxNC4wZGVnKSB9XG4gIDQwJSB7IHRyYW5zZm9ybTogcm90YXRlKC00LjBkZWcpIH1cbiAgNTAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMTAuMGRlZykgfVxuICA2MCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSggMC4wZGVnKSB9XG4gIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSggMC4wZGVnKSB9XG59XG5cbi5mYWRlLWluIHtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gbGluZWFyIDFzO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHsgb3BhY2l0eTogMDsgfVxuICAxMDAlIHsgb3BhY2l0eTogMTsgfVxufVxuIiwiI2JyZWFkY3J1bWJzIHtcbiAgcGFkZGluZzogMTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcblxuICAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICBvbC5icmVhZGNydW1iIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgIH1cblxuICAgICAgYSwgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICYuc2VwYXJhdG9yIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDZweDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAjYnJlYWRjcnVtYnMge1xuICAgIG9sLmJyZWFkY3J1bWIge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuICB9XG59XG4iLCJhIHtcbiAgJjpub3QoLmJ0bik6bm90KC5lbW9qaSk6bm90KC5kcm9wZG93bi1pdGVtKSB7XG4gICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuZW1vamkge1xuICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC41O1xuXG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuY29udGVudCB7XG4gIC5uYXYtdGFicyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAubmF2LWxpbmsge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAubmF2LXRhYnMge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFiLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDE1cHggMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAudGFiLXBhbmUge1xuICAgICAgLmZvcm0tZ3JvdXA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG5cbiAgICB9XG4gIH1cbn1cbiIsInRhYmxlIHtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcblxuICB0aGVhZCB7XG4gICAgdGgge1xuICAgICAgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICB0ciB7XG4gICAgdGgsIHRkIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGZvbnQtc2l6ZSAqIDEuNDtcblxuICAgICAgJi5jZW50ZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgICYuZHJhdyB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgfVxuXG4gICAgICAmLm51bWJlciB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgfVxuXG4gICAgICAmLmRhdGUge1xuICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgIH1cblxuICAgICAgJi5uYXQge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgIH1cblxuICAgICAgJi5mbW4ge1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgIH1cblxuICAgICAgJi5yZXNlcnZlIHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICB9XG5cbiAgICAgICYudGltaW5nIHtcbiAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICB9XG5cbiAgICAgICYuZWxsaXBzaXMge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgJi5tb2JpbGUtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgaW1nLmZsYWcge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICYuYmFyIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwIDVweCAwIDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnRyYWNrIHtcbiAgICAgICAgLndyYXBwZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpbWcuZmxhZyB7XG4gICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGl2LnRleHQtZW1vamkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5lbW9qaSB7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5kcm9wZG93bi1jZWxsIHtcbiAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhLmVtb2ppIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubGljZW5zZSB7XG4gICAgICAgIC5saWNlbnNlLXdyYXBwZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubGljZW5zZS1oZWFkZXIge1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGgge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICAmLnJlbW92ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmNiY2I7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggIzAwMCBzb2xpZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aCwgdGQge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgJltjb250ZW50ZWRpdGFibGVdIHtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogaW5pdGlhbDtcbiAgICAgIH1cblxuICAgICAgJi5pY29uIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG5cbiAgICAgICAgJi5sYXN0IHtcbiAgICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gICAgICAgIH1cblxuICAgICAgICBhLmVtb2ppIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYS5tb3ZlIHtcbiAgICAgICAgY3Vyc29yOiBtb3ZlO1xuICAgICAgfVxuXG4gICAgICAmLmh0bWwge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICB9XG5cbiAgICAgICYubGlua3Mge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIHdpZHRoOiAxNDJweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzcGFuLmhlYXQtZmluaXNoZWQge1xuICAgICAgICBhLnJlc2V0IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYS5maW5pc2hlZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGEucmVzZXQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYudG90YWxzIHtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5ncmFkaW5nIHtcbiAgICAgIHRoLCB0ZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkOGQ4ZDg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5yYWNlLXRlYW0tbGlzdCB7XG4gICAgdGQge1xuICAgICAgJi5yaWRlci1saXN0IHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IHNtYWxsZXI7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2VsZWN0ZWQge1xuICAgIGJvcmRlcjogMnB4ICMwMDAgc29saWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZDdkNztcbiAgICBib3gtc2hhZG93OiA2cHggM3B4IDVweCAjNTU1LCAwIDFweCAwICNjY2MgaW5zZXQsIDAgLTFweCAwICNjY2MgaW5zZXQ7XG4gIH1cblxuICB0ciB7XG4gICAgdGgsIHRkIHtcbiAgICAgICYubmF2LW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgfVxuXG4gICAgICAmLm5hdi1kZXNrdG9wIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICB0YWJsZSB7XG4gICAgdHIge1xuICAgICAgdGgsIHRkIHtcbiAgICAgICAgJi5tb2JpbGUtaGlkZGVuIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5wb3Mge1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uYXQge1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zdWIge1xuICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZGF0ZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5yZXNlcnZlIHtcbiAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubGluayB7XG4gICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uYXYtbW9iaWxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uYXYtZGVza3RvcCB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuZXZlbnQtbGlzdCB7XG4gICAgICB0aCwgdGQge1xuICAgICAgICAmLnRyYWNrIHtcbiAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmVuYWJsZWQge1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYucmlkZXItbGlzdCB7XG4gICAgICB0aCwgdGQge1xuICAgICAgICAmLnRlYW0ge1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmZvbGRhYmxlLXRyaWdnZXIge1xuICBpbWcuZW1vamkge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5mb2xkYWJsZS1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLm9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJi5idXR0b25zIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXG4gICAgICAuZW1vamkge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5mb2xkYWJsZS10cmlnZ2VyOm5vdCguaGVhdC1jb25maWcpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZm9sZGFibGUtY29udGVudDpub3QoLmhlYXQtY29uZmlnKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgICYuYnV0dG9ucyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLnBhZ2UtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAubWV0YSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDE1cHggMTBweDtcblxuICAgIGgzLCBoNCB7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgICYuaGVhZGVyLXRpdGxlIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbnMge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbjogMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5idXR0b25zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItdG9wOiAxcHggI2UxZTFlMSBzb2xpZDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogOHB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgcGFkZGluZzogNnB4IDRweDtcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcblxuICAgICAgJi5lbW9qaSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuXG4gICAgICAmLm5vLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGltZy5lbW9qaSB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICYud3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cblxuICAgIC5tZXRhIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5idXR0b25zIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9ucyB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXItdG9wOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDZweDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgICAgICYubm8tbW9iaWxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2V2ZW50LWhlYWRlci5wYWdlLWhlYWRlciB7XG4gIC5tZXRhIHtcbiAgICAubWV0YS10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAgICAgaDMge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgJi5wb2ludGVyIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhLmVtb2ppIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24ge1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICB3aWR0aDogMzYwcHg7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5tZXRhLWxlZnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICB9XG5cbiAgICAgIC5tZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIC5pdGVtcyB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBnYXA6IDZweDtcblxuICAgICAgICAgIGJ1dHRvbi5teWxhcHMge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgJi5oYW1idXJnZXIge1xuICAgICAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhLmJ0biB7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICB0ZXh0LXdyYXA6IG5vd3JhcDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZXZlbnQtdHJhY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIH1cblxuICAgICAgLmZsYWcge1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZXZlbnQtaGVhdCwgLmV2ZW50LXVwZGF0ZSB7XG4gICAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmV2ZW50LW1ldGEge1xuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTJweDtcblxuICAgICAgICBzcGFuLCBzdHJvbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYS5idG4ge1xuICAgIGJhY2tncm91bmQ6ICNlMWUxZTE7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgLm1ldGEge1xuICAgICAgLmV2ZW50LXRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIH1cblxuICAgICAgLmV2ZW50LXRyYWNrIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuXG4gICAgICAubWV0YS1sZWZ0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIC5tZW51IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNyYWNlLWhlYWRlci5wYWdlLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5O1xuXG4gIC5tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogMTBweDtcblxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cblxuICAgIC5yYWNlLXRpdGxlIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgIC5yYWNlLWJ1dHRvbnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICBnYXA6IDZweDtcblxuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAmLm5hdi1tb2JpbGUge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICYubmF2LWRlc2t0b3Age1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgJi5uYXYtbW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5uYXYtZGVza3RvcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJhY2UtbWVudSB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IDZweDtcblxuICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAubWV0YSB7XG4gICAgICBzZWxlY3Qge1xuICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICB9XG5cbiAgICAgIC5yYWNlLWJ1dHRvbnMge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b25zIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbiNyYWNlLWJ1dHRvbnMsICNldmVudC1idXR0b25zIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgLmxlZnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogOHB4O1xuICB9XG5cbiAgYS5lbW9qaSB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cbn1cblxuI3NjcmVlbi1zd2l0Y2hlciB7XG4gIGJhY2tncm91bmQ6ICNlMWUxZTE7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIGEsIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgfVxufVxuXG4uY29udGFpbmVyIHtcbiAgJi5jaGFtcGlvbnNoaXAge1xuICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5hbGVydCB7XG4gICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5yZWFkLW9ubHktbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuXG4gIGltZyB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgfVxufVxuIiwiI3VzZXItZXZlbnQtbGlzdCB7XG4gIG1heC1oZWlnaHQ6IDMwMHB4O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIkZm9udC1zaXplOiAxOHB4O1xuJGZvbnQtc2l6ZS1oZWFkZXI6IDI2cHg7XG4kZm9udC1zaXplLWZvb3RlcjogMTZweDtcblxuJGNvbG9yLWZpbS1zd2M6ICNmZGIzNGM7XG4kY29sb3ItZGlzY292ZXJ5OiAjZTlmZjE1O1xuXG5ib2R5LnBkZiB7XG4gIG1hcmdpbjogMDtcblxuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBzcGFuLCB0ZCwgdGgge1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgfVxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaGVhZGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9udC1zaXplLWhlYWRlcjtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaGVhZGVyICogMC45O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9udC1zaXplLWhlYWRlciAqIDAuOTtcbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaGVhZGVyICogMC44O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9udC1zaXplLWhlYWRlciAqIDAuODtcbiAgfVxuXG4gIGg0IHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaGVhZGVyICogMC43O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9udC1zaXplLWhlYWRlciAqIDAuNztcbiAgfVxuXG4gIGg1IHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaGVhZGVyICogMC42O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9udC1zaXplLWhlYWRlciAqIDAuNjtcbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyOiAycHggIzAwMCBzb2xpZDtcblxuICAgIHRyIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgIH1cblxuICAgICAgdGgsIHRkIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJGZvbnQtc2l6ZSAqIDEuODtcbiAgICAgICAgYm9yZGVyOiAxcHggIzAwMCBzb2xpZDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAmLmNlbnRlciB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uYW1lIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogJGZvbnQtc2l6ZSAqIDEuNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAudG9wIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMzRweDtcblxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiA4cHggNHB4IDRweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICAmLmZpbS1sb2dvIHtcbiAgICAgICAgICB3aWR0aDogNjZweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2tld2VyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB3aWR0aDogMzQwcHg7XG4gICAgICB0b3A6IDE1cHg7XG5cbiAgICAgICYubGVmdCB7XG4gICAgICAgIGxlZnQ6IC00cHg7XG4gICAgICAgIHRyYW5zZm9ybTogc2tldygzMGRlZyk7XG4gICAgICB9XG5cbiAgICAgICYucmlnaHQge1xuICAgICAgICByaWdodDogLTRweDtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3KC0zMGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxvZ29zIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgIC5sb2dvIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAmLnN3YyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IC0yNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5sb2dvLXJpZ2h0IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWV0YSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLmxlZnQge1xuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgICAgICYudGl0bGUge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc3ViLXRpdGxlIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmRhdGUge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZpY2lhbHMge1xuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmZpbWUge1xuICAgICAgLnRvcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5sb2dvcyB7XG4gICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICBnYXA6IDIwcHg7XG5cbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5mbGF0dHJhY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgLmxvZ28ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tZXRhIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2YyYjkzNjtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHJnYigyMCwgNDQsIDcwKSBzb2xpZDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGNvbG9yOiByZ2IoMjAsIDQ0LCA3MCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICB3aWR0aDogMjYwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuY2xhc3NpZmljYXRpb24ge1xuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZyxyZ2JhKDIzOSwgMjI0LCA3MSwgMSkgMCUsIHJnYmEoMjM5LCAyMjQsIDcxLCAxKSA0MCUsIHJnYmEoMTgsIDQ1LCA3MCwgMSkgNjAlKTtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tZXRhIHtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG1haW4ge1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuXG4gICAgLmZvb3RlciB7XG4gICAgICAqIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWZvb3RlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRmb250LXNpemUtZm9vdGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgJi5oZWFkIHtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZm9vdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIH1cblxuICAgICAgJi5kbXNiLCAmLmZtaSwgJi5tYW1zLCAmLmtubXYsICYuaG1zIHtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG5cbiAgICAgICAgJi5hbmxhcyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYua29vcG1hbm4ge1xuICAgICAgICAgIG1heC13aWR0aDogMTM1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZpbS1tb3RvIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5maW1lIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZGl2LmZsYXR0cmFjayB7XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2YtdG9vbGJhciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi5zcGVlZHdheWdwLCAmLnNwZWVkd2F5Z3AyLCAmLnNwZWVkd2F5Z3AzIHtcbiAgICBoZWFkZXIge1xuICAgICAgLnRvcCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1kaXNjb3Zlcnk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5sb25ndHJhY2sge1xuICAgIGhlYWRlciB7XG4gICAgICAudG9wIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzJhNjQyOTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubG9uZ3RyYWNrLXUyMyB7XG4gICAgaGVhZGVyIHtcbiAgICAgIC50b3Age1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTczYzg1O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5mbGF0dHJhY2sge1xuICAgIGhlYWRlciB7XG4gICAgICAudG9wIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2U2Yzg2ZjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZpbWUtaWNlIHtcbiAgICBoZWFkZXIge1xuICAgICAgLnRvcCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMTdGQzk7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZpbS1pc2cge1xuICAgIGhlYWRlciB7XG4gICAgICAudG9wIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAzYjNmYztcblxuICAgICAgICBwIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaGVhdHMge1xuICAgIGhlYWRlciB7XG4gICAgICAuc2tld2VyIHtcbiAgICAgICAgd2lkdGg6IDUwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZmltLXN3YyB7XG4gICAgaGVhZGVyIHtcbiAgICAgIC50b3Age1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItZmltLXN3YztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmtubXYge1xuICAgIGhlYWRlciB7XG4gICAgICAudG9wIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0YyOEMwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndvbWVucyB7XG4gICAgaGVhZGVyIHtcbiAgICAgIC50b3Age1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZDRhZjM3O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbXBvcnQgXCJleHBvcnQvaGVhZGVyL2xhbmRzY2FwZVwiO1xuQGltcG9ydCBcImV4cG9ydC9mb290ZXIvbGFuZHNjYXBlXCI7XG5cbkBpbXBvcnQgXCJleHBvcnQvY2xhc3NpZmljYXRpb24vc3BlZWR3YXlncFwiO1xuQGltcG9ydCBcImV4cG9ydC9jbGFzc2lmaWNhdGlvbi9zcGVlZHdheWdwMlwiO1xuQGltcG9ydCBcImV4cG9ydC9jbGFzc2lmaWNhdGlvbi9mbGF0dHJhY2tcIjtcbkBpbXBvcnQgXCJleHBvcnQvY2xhc3NpZmljYXRpb24vZmltZS1pY2VcIjtcbkBpbXBvcnQgXCJleHBvcnQvY2xhc3NpZmljYXRpb24vZmltLWlzZ1wiO1xuQGltcG9ydCBcImV4cG9ydC9jbGFzc2lmaWNhdGlvbi9mbWktaXRhbGlhbm8tb3BlblwiO1xuQGltcG9ydCBcImV4cG9ydC9jbGFzc2lmaWNhdGlvbi9mbWktZnRcIjtcbkBpbXBvcnQgXCJleHBvcnQvY2xhc3NpZmljYXRpb24vcGFpcnMtMTBcIjtcblxuQGltcG9ydCBcImV4cG9ydC9yZXN1bHRcIjtcbkBpbXBvcnQgXCJleHBvcnQvaGVhdHNcIjtcbkBpbXBvcnQgXCJleHBvcnQvc2NoZWR1bGVcIjtcbkBpbXBvcnQgXCJleHBvcnQvY2xhc3NpZmljYXRpb25cIjtcbkBpbXBvcnQgXCJleHBvcnQvcHJhY3RpY2VcIjtcbkBpbXBvcnQgXCJleHBvcnQvaGVhdF90YWJsZVwiO1xuQGltcG9ydCBcImV4cG9ydC9zdGFydGluZ19saXN0XCI7XG5AaW1wb3J0IFwiZXhwb3J0L3N3Y1wiO1xuQGltcG9ydCBcImV4cG9ydC9wb3NpdGlvbnNcIjtcbkBpbXBvcnQgXCJleHBvcnQvcmFua2luZ19saXN0XCI7XG5AaW1wb3J0IFwiZXhwb3J0L3F1YWxpZnlpbmdcIjtcblxuLy8gMTIzXG4iLCJib2R5LnJlc3VsdCwgYm9keS5zcHJpbnQsIGJvZHkucHJhY3RpY2UtdGltZXMsIGJvZHkucXVhbGlmeWluZy1yZXN1bHQge1xuICAudGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5ydW5vZmZzLCAuZXh0cmEtaGVhdHMge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB0ciB7XG4gICAgICB0aCwgdGQge1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgICAgICAgJi5wbGFjZSB7XG4gICAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLm51bWJlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5mbW4ge1xuICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uYXRpb24ge1xuICAgICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYucG9pbnRzIHtcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLnJlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2NjMzMwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYmx1ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzAwNjY5OTtcbiAgICAgICAgfVxuXG4gICAgICAgICYud2hpdGUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICAgIH1cblxuICAgICAgICAmLnllbGxvdyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmY2MwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYudGltZSB7XG4gICAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5nYXAge1xuICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5vdGhlci10aW1lIHtcbiAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xuICAgICAgfVxuXG4gICAgICB0ZCB7XG4gICAgICAgICYub3RoZXItdGltZSB7XG4gICAgICAgICAgY29sb3I6ICM4ZjhmOGY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNvbG8tdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi50ZWFtLXRhYmxlIHtcbiAgICAgIHRhYmxlLWxheW91dDogYXV0bztcblxuICAgICAgdHIge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgJi50ZWFtLW5hbWUge1xuICAgICAgICAgICAgLndyYXBwZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgICAgICAgLm1hbmFnZXIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcblxuICAgICAgICAgICYucGxhY2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm51bWJlciB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZsYWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm5hbWUge1xuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5wb2ludHMge1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi50b3RhbCB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm9mZmljaWFscyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIC5vZmZpY2lhbCB7XG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkZm9udC1zaXplO1xuXG4gICAgICAgICYubGFiZWwge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBwIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYudGVhbSB7XG4gICAgcGFkZGluZzogMCA0MHB4O1xuXG4gICAgLnRhYmxlIHtcbiAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDUwcHg7XG4gICAgfVxuXG4gICAgdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICYucGxhY2Uge1xuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5mbGFnIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi55b3V0aCB7XG4gICAgdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZmxhdHRyYWNrIHtcbiAgICB0YWJsZSB7XG4gICAgICB0ciB7XG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgNHB4O1xuXG4gICAgICAgICAgJi5wbGFjZSB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm51bWJlciB7XG4gICAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm5hdGlvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5wb2ludHMge1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5tYW51ZmFjdHVyZXIge1xuICAgICAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYudGVhbSB7XG4gICAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbWFpbi5tYW51ZmFjdHVyZXIge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuXG4gICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5wbGFjZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5wb2ludHMge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZm1pLWZsYXQtdHJhY2sge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm5hdGlvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5tYW51ZmFjdHVyZXIge1xuICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zcGVlZHdheS1vZi1uYXRpb25zIHtcbiAgICB0YWJsZSB7XG4gICAgICB0ciB7XG4gICAgICAgIHRkIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcblxuICAgICAgICAgICYuZmxhZyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggIzAwMCBzb2xpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3BlZWR3YXktb2YtbmF0aW9ucy0yLCAucGFpcnMtOCB7XG4gICAgdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAmLmZsYWcge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4ICMwMDAgc29saWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmxvbmctdHJhY2stbmF0aW9ucyB7XG4gICAgZGl2LnRhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuXG4gICAgdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICAgICAgJi5mbGFnIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG1haW4ge1xuICAgICYubG9uZy10cmFjay1jaGFsbGVuZ2Uge1xuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5wYWlycy0xMCB7XG4gICAgdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcblxuICAgICAgICAgICYudGVhbS1uYW1lIHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZsYWcge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4ICMwMDAgc29saWQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mbW4ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnBsYWNlLCAmLnRvdGFsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmJheWVybi1jdXAge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGQge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgICAgICYuZmxhZyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmJvZHkuc3ByaW50IHtcbiAgZGl2LnRhYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgfVxufVxuXG5ib2R5LnF1YWxpZnlpbmctcmVzdWx0IHtcbiAgdGFibGUge1xuICAgIHRyIHtcbiAgICAgICY6bnRoLWNoaWxkKDQpLFxuICAgICAgJjpudGgtY2hpbGQoOCkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggIzAwMCBzb2xpZDtcbiAgICAgIH1cblxuICAgICAgdGgsIHRkIHtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG5cbiAgICAgICAgJi5wbGFjZSB7XG4gICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLm51bWJlciB7XG4gICAgICAgICAgd2lkdGg6IDg1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLm5hbWUge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZm1uIHtcbiAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubmF0aW9uIHtcbiAgICAgICAgICB3aWR0aDogMTQ1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlc3Npb24ge1xuICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5yZXN1bHQge1xuICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gbGFuZHNjYXBlLWhlYWRlciB7XG4gIGhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgIC5za2V3ZXIge1xuICAgICAgdG9wOiAxNXB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDUwMHB4O1xuICAgIH1cblxuICAgIC5sb2dvcyB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHggMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtaW4taGVpZ2h0OiA4OHB4O1xuXG4gICAgICAubWV0YSB7XG4gICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgICAgICBwLnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmaWNpYWxzIHtcbiAgICAgICAgICB3aWR0aDogMjkwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAub2ZmaWNpYWxzIHtcbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmZpbWUge1xuICAgICAgLmxvZ29zIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJib2R5LmhlYXRzIHtcbiAgQGluY2x1ZGUgbGFuZHNjYXBlLWhlYWRlcjtcblxuICBtYWluIHtcbiAgICAudGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgdHIge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgICBwYWRkaW5nOiA0cHggMTBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJi50aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRpbWUge1xuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAge1xuICAgICAgICAmLnRvdGFsLWdhdGVzLSN7JGl9IHtcbiAgICAgICAgICB0aC5wb3NpdGlvbiwgdGQucG9zaXRpb24ge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoKDEwODBweCAtIDE2MHB4KSAvICN7JGl9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29kZXMge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzAwMDtcbiAgICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuXG4gICAgICAudGl0bGUsIC5jb2RlIHtcbiAgICAgICAgc3Ryb25nLCBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnOic7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubG9uZy10cmFjay1jaGFsbGVuZ2Uge1xuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgdGgsdGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi55b3V0aCB7XG4gICAgbWFpbiB7XG4gICAgICAudGFibGUge1xuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgdHIge1xuICAgICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuc3BlZWR3YXlncCwgJi5zcGVlZHdheWdwMiwgJi5zcGVlZHdheWdwMyB7XG4gICAgbWFpbiB7XG4gICAgICAudGFibGUge1xuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgdHIge1xuICAgICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogM3B4IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZmltLXN3YyB7XG4gICAgaGVhZGVyIHtcbiAgICAgIC5sb2dvcyB7XG4gICAgICAgIC5sb2dvLXJpZ2h0IHtcbiAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucmFjZS0xMTQ1IHtcbiAgICB0YWJsZSB7XG4gICAgICB0ciB7XG4gICAgICAgIHRkIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDFweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5maW0tc29uIHtcbiAgICB0YWJsZSB7XG4gICAgICB0ciB7XG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgcGFkZGluZzogM3B4IDZweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5mbGF0dHJhY2sge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBwYWRkaW5nOiAzcHggNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMXB4O1xuXG4gICAgICAgICAgJi50aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRpbWUge1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5zcGVlZHdheS1vZi1uYXRpb25zLTIge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTFweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGxhbmRzY2FwZS1mb290ZXI7XG59XG5cbiIsIkBtaXhpbiBsYW5kc2NhcGUtZm9vdGVyIHtcbiAgZm9vdGVyIHtcbiAgICAubG9nb3Mge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MHB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiA2MHB4O1xuXG4gICAgICAgICYuYW5sYXMge1xuICAgICAgICAgIG1heC13aWR0aDogMTEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmtvb3BtYW5uIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDExMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5maW0tbW90byB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiYm9keS5ldmVudC1zY2hlZHVsZSB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuXG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cblxuICB0YWJsZSB7XG4gICAgaGVpZ2h0OiAxMDIwcHg7XG5cbiAgICB0aGVhZCB7XG4gICAgICB0ciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkOGQ4ZDg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdHIge1xuICAgICAgJi5zcGFjZXIge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2Q4ZDhkODtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGgsIHRkIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICYubnVtYmVyIHtcbiAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5yYWNlLCAmLmhlYXQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAmLnJhY2Uge1xuXG4gICAgICAgIH1cblxuICAgICAgICAmLmhlYXQge1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZ2F0ZSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDIwIHtcbiAgICAgICYudG90YWwtZ2F0ZXMtI3skaX0ge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICYuZ2F0ZSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg0MDBweCAvICN7JGl9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsImJvZHkuY2xhc3NpZmljYXRpb24ge1xuICBAaW5jbHVkZSBsYW5kc2NhcGUtaGVhZGVyO1xuXG4gIC50YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgdGhlYWQge1xuICAgICAgdHIge1xuICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdHIge1xuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB9XG5cbiAgICAgIHRkOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xuICAgICAgfVxuXG4gICAgICB0aCwgdGQge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICBwYWRkaW5nOiAwIDZweDtcblxuICAgICAgICAmLnBsYWNlIHtcbiAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubnVtYmVyIHtcbiAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubmFtZSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6ICRmb250LXNpemU7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1hbnVmYWN0dXJlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5mbW4ge1xuICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uYXRpb24ge1xuICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYudG90YWwge1xuICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5yb3VuZCB7XG4gICAgICAgICAgd2lkdGg6IDkwcHg7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuXG4gICAgICAgICAgICAmLnRyYWNrIHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wb3MtMSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ29sZDtcbiAgICAgICAgfVxuXG4gICAgICAgICYucG9zLTIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNpbHZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYucG9zLTMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNBNTZBM0Y7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuLnN1ZmZpeCB7XG4gICAgICAgICAgZm9udC1zaXplOiBzbWFsbGVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubGluZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCAjMDAwIHNvbGlkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ydW5vZmZzIHtcbiAgICBtYXJnaW4tdG9wOiA2cHg7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBjbGFzc2lmaWNhdGlvbi1zcGVlZHdheWdwO1xuICBAaW5jbHVkZSBjbGFzc2lmaWNhdGlvbi1zcGVlZHdheWdwMjtcbiAgQGluY2x1ZGUgY2xhc3NpZmljYXRpb24tZmxhdHRyYWNrO1xuICBAaW5jbHVkZSBjbGFzc2lmaWNhdGlvbi1maW1lLWljZTtcbiAgQGluY2x1ZGUgY2xhc3NpZmljYXRpb24tZmltLWlzZztcbiAgQGluY2x1ZGUgY2xhc3NpZmljYXRpb24tZm1pLWl0YWxpYW5vLW9wZW47XG4gIEBpbmNsdWRlIGNsYXNzaWZpY2F0aW9uLWZsYXR0cmFjay1pdDtcbiAgQGluY2x1ZGUgcGFpcnMtMTA7XG5cbiAgQGluY2x1ZGUgbGFuZHNjYXBlLWZvb3Rlcjtcbn1cbiIsIkBtaXhpbiBjbGFzc2lmaWNhdGlvbi1zcGVlZHdheWdwIHtcbiAgJi5zcGVlZHdheWdwIHtcbiAgICB0YWJsZSB7XG4gICAgICB0ciB7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICBoZWlnaHQ6IDI2cHg7XG4gICAgICAgIH1cblxuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTNweDtcblxuICAgICAgICAgICYucGxhY2Uge1xuICAgICAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5udW1iZXIge1xuICAgICAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5yb3VuZCB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc2Vhc29uLTIwMjQsICYuc2Vhc29uLTIwMjUge1xuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgdGgge1xuICAgICAgICAgICAgJi5zcHJpbnQge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItZGlzY292ZXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTFweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMnB4O1xuXG4gICAgICAgICAgICAmLnBsYWNlIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubnVtYmVyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubmFtZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm5hdGlvbiB7XG4gICAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnRvdGFsIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucm91bmQge1xuICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNlYXNvbi0yMDI1IHtcbiAgICAgIHRhYmxlIHtcbiAgICAgICAgdHIge1xuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAmLnJvdW5kIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gY2xhc3NpZmljYXRpb24tc3BlZWR3YXlncDIge1xuICAmLnNwZWVkd2F5Z3AyIHtcbiAgICB0YWJsZSB7XG4gICAgICB0ciB7XG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuXG4gICAgICAgICAgJi5mbW4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYubmF0aW9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnJvdW5kIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMjBweDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGNsYXNzaWZpY2F0aW9uLWZsYXR0cmFjayB7XG4gICYuZmxhdHRyYWNrIHtcbiAgICB0YWJsZSB7XG4gICAgICB0ciB7XG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgJi5yb3VuZCB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgICB3aWR0aDogNzVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm5hdGlvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5tYW51ZmFjdHVyZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIG1haW4ubWFudWZhY3R1cmVyLWNsYXNzaWZpY2F0aW9uIHtcbiAgICAgIHRhYmxlIHtcbiAgICAgICAgdHIge1xuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcblxuICAgICAgICAgICAgJi5wbGFjZSB7XG4gICAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnJvdW5kIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGNsYXNzaWZpY2F0aW9uLWZpbWUtaWNlIHtcbiAgJi5maW1lLWljZSB7XG4gICAgdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcblxuICAgICAgICAgICYuZm1uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm5hdGlvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5yb3VuZCB7XG4gICAgICAgICAgICB3aWR0aDogMTQwcHg7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aCB7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gY2xhc3NpZmljYXRpb24tZmltLWlzZyB7XG4gICYuZmltLWlzZyB7XG4gICAgdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgICAgICYuZm1uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnJvdW5kIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjbGFzc2lmaWNhdGlvbi1mbWktaXRhbGlhbm8tb3BlbiB7XG4gICYuZm1pLWl0YWxpYW5vLW9wZW4ge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgcGFkZGluZzogMCAzcHg7XG5cbiAgICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnJvdW5kIHtcbiAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGgge1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGNsYXNzaWZpY2F0aW9uLWZsYXR0cmFjay1pdCB7XG4gICYuZm1pLWZsYXQtdHJhY2sge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG5cbiAgICAgICAgICAmLnBsYWNlIHtcbiAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYubnVtYmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYucm91bmQge1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5mbW4ge1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5uYXRpb24ge1xuICAgICAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYubWFudWZhY3R1cmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRvdGFsIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIHBhaXJzLTEwIHtcbiAgJi5wYWlycy0xMCB7XG4gICAgdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcblxuICAgICAgICAgICYucGxhY2Uge1xuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5yb3VuZCB7XG4gICAgICAgICAgICB3aWR0aDogMTIwcHg7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aCB7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsImJvZHkucHJhY3RpY2Uge1xuICAuaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIC50eXBlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICB3aWR0aDogMTQwcHg7XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTdweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZ3JvdXBzIHtcbiAgICAuZ3JvdXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuXG4gICAgICB0YWJsZSB7XG4gICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICB0ciB7XG4gICAgICAgICAgdGgge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcblxuICAgICAgICAgICAgJi5udW1iZXIge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm5hbWUge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc3BhY2VyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2Vzc2lvbiB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5ncmFkaW5nLXJvdyB7XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogaW5pdGlhbDtcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG5cbiAgICAgICAgICAgICAgc3Bhbi5ncmFkaW5nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNkOGQ4ZDg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZChuKzIpIHtcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgJi5udW1iZXIsICYubmFtZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmhhcy1zcHJpbnQge1xuICAgICAgLmdyb3VwIHtcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zcHJpbnQge1xuICAgIG1hcmdpbi10b3A6IC0yMnB4O1xuICB9XG5cbiAgdGFibGUge1xuICAgICYuc3ByaW50LXRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGgge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cblxuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgIGhlaWdodDogMjRweDtcblxuICAgICAgICAgICYuZ2F0ZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm51bWJlciB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm5hbWUge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYucG9pbnRzIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsImJvZHkuaGVhdF90YWJsZSB7XG4gIHRhYmxlIHtcbiAgICB0ciB7XG4gICAgICB0aCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgdGgsIHRkIHtcbiAgICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJi5yZWQge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNjYzMzMDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmJsdWUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDY2OTk7XG4gICAgICAgIH1cblxuICAgICAgICAmLndoaXRlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICB9XG5cbiAgICAgICAgJi55ZWxsb3cge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmNjMDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmdyZWVuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDA5OTY2O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ncmV5IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjYjdiN2I3O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRkIHtcbiAgICAgICAgJi50ZC1mbW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRmb290IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgI2hlYXQtdGFibGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gICNoZWFkZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICAubG9nbyB7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB3aWR0aDogMTIwcHg7XG4gICAgICBoZWlnaHQ6IDc1cHg7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgIGJhY2tncm91bmQ6ICNlOWZmMTU7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCAjMDAwIHNvbGlkO1xuXG4gICAgICAudGV4dCB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgJi50aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmRhdGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb3VudHJ5IHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICBib3JkZXI6IDFweCAjMDAwIHNvbGlkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI3RhYmxlLCAjZmluYWxzIHtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gIH1cblxuICAjdGFibGUge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgZmxleC1ncm93OiAxO1xuXG4gICAgdGFibGUge1xuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICB0aGVhZCB7XG4gICAgICAgICY6bm90KC50aW1pbmcpIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggIzAwMCBzb2xpZDtcbiAgICAgICAgfVxuXG4gICAgICAgICYudGltaW5nIHtcbiAgICAgICAgICB0aCB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICBjb2xvcjogIzc1NzU3NTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGJvZHkge1xuXG4gICAgICB9XG5cbiAgICAgIHRyIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAmLnRkLW51bWJlciB7XG4gICAgICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRkLW5hbWUsICYucmlkZXItbmFtZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRkLWZtbiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRkLWZsYWcge1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRkLXNtYWxsIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYudGQtc3ViIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYudGQtZmluYWwge1xuICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYudGQtY2xhc3NpZmljYXRpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm5vLXBvaW50czpub3QoLnRkLWZpbmFsKTpub3QoLmlzLXJ1bi1vZmYpOm5vdCgucmVzZXJ2ZS1jb21wZXRpbmcpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM5ZjlmOWY7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5yZXNlcnZlLWNvbXBldGluZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWFlOGU4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHNwYW4uZ2F0ZS1wb3NpdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYudGQtdGVhbS1mbGFnIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5uby1nYXRlcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi50ZWFtLXRvdGFsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLXJlc2VydmUge1xuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAmLm5vLXBvaW50cyB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi50ZWFtLXJvdyB7XG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRyLm1hbmFnZXItcm93IHtcbiAgICAgICAgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3BlZWR3YXktZ3AsICYuc3BlZWR3YXktZ3AtMjUge1xuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgaGVpZ2h0OiAyNnB4O1xuXG4gICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICYudGQtZm1uIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudGQtZmxhZyB7XG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50ZC1zbWFsbCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyN3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnRkLWZpbmFsIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDI5cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaW50ZXJ2YWwge1xuICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5oYXMtdGltaW5ncyB7XG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICB0ciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zcGVlZHdheS0yMC1kYXktb25lIHtcbiAgICAgIHRhYmxlIHtcbiAgICAgICAgdHIge1xuICAgICAgICAgIGhlaWdodDogMjdweDtcblxuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAmLnRkLXNtYWxsIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5sb25nLXRyYWNrLWNoYWxsZW5nZSB7XG4gICAgICB0YWJsZSB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICBoZWlnaHQ6IDIxcHg7XG5cbiAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG5cbiAgICAgICAgICAgICYudGQtZmxhZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIzcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNwZWVkd2F5LXdvcmxkLWN1cCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRhYmxlIHtcbiAgICAgICAgdHIge1xuICAgICAgICAgICYudGVhbS1yb3cge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWZpbS1zd2M7XG5cbiAgICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcblxuICAgICAgICAgICAgJi50ZC1zbWFsbCwgJi50ZC1zdWIge1xuICAgICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50ZC1zbWFsbCB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICBzcGFuLmdhdGUtcG9zaXRpb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTNweDtcbiAgICAgICAgICAgICAgICByaWdodDogMXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudGVhbS1uYW1lIHtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5tYW5hZ2VyLXJvdyB7XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxvbmctdHJhY2stZmluYWwge1xuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgaGVpZ2h0OiAyN3B4O1xuXG4gICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICYudGQtc21hbGwsICYudGQtc3ViIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5oYXMtZm1uIHtcbiAgICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgICAmLnRkLXNtYWxsLCAmLnRkLXN1YiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMzcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxvbmctdHJhY2stbmF0aW9ucyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICB0YWJsZSB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICBoZWlnaHQ6IDE4cHg7XG5cbiAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG5cbiAgICAgICAgICAgICYudGQtc21hbGwsICYudGQtc3ViIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubm8tcG9pbnRzIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzU5NTk1OTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1ydW4tb2ZmIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRlYW0tcm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zcGVlZHdheS0xMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICB0YWJsZSB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICBoZWlnaHQ6IDM4cHg7XG5cbiAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG5cbiAgICAgICAgICAgICYudGQtc21hbGwsICYudGQtc3ViIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zcGVlZHdheS0xNCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICB0YWJsZSB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICBoZWlnaHQ6IDMycHg7XG5cbiAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG5cbiAgICAgICAgICAgICYudGQtc21hbGwsICYudGQtc3ViIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDI5cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaW50ZXJ2YWwge1xuICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50ZC1maW5hbCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNmaW5hbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAyMHB4O1xuXG4gICAgLmZpbmFsIHtcbiAgICAgIG1heC13aWR0aDogMjQwcHg7XG5cbiAgICAgIHRhYmxlIHtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG5cbiAgICAgICAgY29sLCB0aCwgdGQge1xuICAgICAgICAgICYuZ2F0ZSwgJi5wb2ludHMge1xuICAgICAgICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5uYW1lIHtcblxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZmluYWwtdGl0bGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRTdFN0U3O1xuICAgICAgICBwYWRkaW5nOiAycHg7XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG5cbiAgICAgICAgICAucHJvcG9zYWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiBzbWFsbGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMjBweDtcblxuICAgICAgICAmLmZpbS0yMDI0LXdoaXRlIHtcbiAgICAgICAgICBmaWx0ZXI6IGludmVydCgxKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnFyIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNmb290ZXIge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiA2cHggMjBweDtcblxuICAgIC5vZmZpY2lhbCB7XG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcblxuICAgICAgICAmLmxhYmVsIHtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxvZ28ge1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9nb3Mge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogNDBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LWhlaWdodDogMzBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5maW0tc3djIHtcbiAgICAjaGVhZGVyIHtcbiAgICAgIC5jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWZpbS1zd2M7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5sb25ndHJhY2ssICYubG9uZy10cmFjay1jaGFsbGVuZ2Uge1xuICAgICNoZWFkZXIge1xuICAgICAgLmNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBncmVlbjtcblxuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZpbS1zb24ge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgJi50ZWFtLXJvdyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRpc2NvdmVyeTtcblxuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG5cbiAgICAgICAgICAmLnRkLXNtYWxsIHtcbiAgICAgICAgICAgIHdpZHRoOiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5sb25ndHJhY2stdTIzIHtcbiAgICAjaGVhZGVyIHtcbiAgICAgIC5jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogIzE3M2M4NTtcblxuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZsYXR0cmFjayB7XG4gICAgI2hlYWRlciB7XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlNmM4NmY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI3RhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcblxuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xuXG4gICAgICAgICAgICAmLnRkLWZsYWcge1xuICAgICAgICAgICAgICB3aWR0aDogMzFweDtcblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50ZC1tYW51ZmFjdHVyZXIge1xuICAgICAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50ZC1zbWFsbCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMXB4O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgc3Bhbi5nYXRlLXBvc2l0aW9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICNmaW5hbHMge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLnNwZWVkd2F5LW9mLW5hdGlvbnMtMiB7XG4gICAgI3RhYmxlIHtcbiAgICAgIHRhYmxlIHtcbiAgICAgICAgdHIge1xuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcblxuICAgICAgICAgICAgJi50ZC1mbGFnIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDMxcHg7XG5cbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudGQtc21hbGwge1xuICAgICAgICAgICAgICB3aWR0aDogMjJweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5tYW5hZ2VyLXJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICNmb290ZXIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAmLmZtaS1mbGF0LXRyYWNrIHtcbiAgICAjdGFibGUge1xuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICYudGQtZm1uIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudGQtbWFudWZhY3R1cmVyIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudGQtc21hbGwge1xuICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgIHNwYW4uZ2F0ZS1wb3NpdGlvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAjZmluYWxzIHtcbiAgICAgIGRpdi5maW5hbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5mbGF0LXRyYWNrLTEyIHtcbiAgICAgICN0YWJsZSB7XG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmZsYXQtdHJhY2stMTMge1xuICAgICAgI3RhYmxlIHtcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZXRzYyB7XG4gICAgI3RhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcblxuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxN3B4O1xuXG4gICAgICAgICAgICAmLnRkLXNtYWxsIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDI5cHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndvbWVucy1jdXAtMTMge1xuICAgICNoZWFkZXIge1xuICAgICAgLmNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZDRhZjM3O1xuXG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAjdGFibGUge1xuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuXG4gICAgICAgICAgICAmLnRkLXNtYWxsIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDMzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5wYWlycy04IHtcbiAgICAjdGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuXG4gICAgICB0YWJsZSB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG5cbiAgICAgICAgICAgICYudGQtc21hbGwge1xuICAgICAgICAgICAgICB3aWR0aDogMjhweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnRkLXRlYW0tZmxhZyB7XG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm1hbmFnZXItcm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5wYWlycy0xMCB7XG4gICAgI3RhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcblxuICAgICAgdGFibGUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAmLnRkLXNtYWxsIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDM0cHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50ZC10ZWFtLWZsYWcge1xuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi50ZWFtLXJvdyB7XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGVtIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYubWFuYWdlci1yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmJheWVybi1jdXAge1xuICAgICN0YWJsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRhYmxlIHtcbiAgICAgICAgdHIge1xuICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTFweDtcblxuICAgICAgICAgICAgJi50ZC1mbGFnIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG5cbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnRkLXNtYWxsIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50ZC10ZWFtLWZsYWcge1xuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5tYW5hZ2VyLXJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZmltLWV1cm9wZSB7XG4gICAgI2hlYWRlciB7XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG5cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIjc3RhcnRpbmctbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG5cbiAgaGVhZGVyLCAudGFibGUsIC5hYm91dCB7XG4gICAgd2lkdGg6IDY0MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvIGF1dG87XG4gIH1cblxuICAuZmxhdHRyYWNrLWhlYWRlciB7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIGhlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG5cbiAgICAmLmZsYXR0cmFjayB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAubG9nb3Mge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwcHg7XG5cbiAgICAgICAgJi5mbGF0dHJhY2sge1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDU1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWV0YSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzlmOWY5ZjtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50aXRsZXMge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICBoMSwgaDIsIGgzIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIH1cbiAgfVxuXG4gIC50YWJsZSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgIHRhYmxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICB0aGVhZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuXG4gICAgICB0Ym9keSB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYudGVhbS1yb3cge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDA7XG5cbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGgsIHRkIHtcbiAgICAgICAgcGFkZGluZzogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgICYubnVtYmVyIHtcbiAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubmFtZSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1hbnVmYWN0dXJlciB7XG4gICAgICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50ZWFtIHtcbiAgICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLm5hdGlvbiB7XG4gICAgICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy10ZWFtIHtcbiAgICAgIHRhYmxlIHtcbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG4gICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICYudGVhbSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcblxuICAgICAgICAgICAgICBkaXYubmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBkaXYubWFuYWdlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWJvdXQge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZy10b3A6IDhweDtcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICMwMDA7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4O1xuXG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogNDBweDtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogNDAwcHg7XG4gICAgfVxuXG4gICAgJi5sb2dvcyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG5cbiAgICAgICAgJi5hbmxhcyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYua29vcG1hbm4ge1xuICAgICAgICAgIG1heC13aWR0aDogMTM1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZpbS1tb3RvIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5mbGF0dHJhY2sge1xuICAgIC50YWJsZSB7XG4gICAgICB0YWJsZSB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuXG4gICAgICAgICAgICAmLm51bWJlciB7XG4gICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm5hdGlvbiB7XG4gICAgICAgICAgICAgIHdpZHRoOiA5NXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm1hbnVmYWN0dXJlciB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50ZWFtIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5hYm91dCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIGZvb3RlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiYm9keS5zd2Mge1xuICBoZWFkZXIge1xuICAgIC5pbW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0YWJsZSB7XG4gICAgdHIge1xuICAgICAgaGVpZ2h0OiA1NXB4O1xuXG4gICAgICB0ZCB7XG4gICAgICAgICYucG9zIHtcbiAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZmxhZyB7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5uYW1lIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5vZmZpY2lhbHMge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAub2ZmaWNpYWwge1xuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJGZvbnQtc2l6ZTtcblxuICAgICAgICAmLmxhYmVsIHtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsImJvZHkucG9zaXRpb25zIHtcbiAgLmhlYXQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICB0YWJsZSB7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcblxuICAgICAgdHIge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcblxuICAgICAgICAgICYuaGVhdC1udW1iZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmhlYXQtcm93IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnJpZGVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsImJvZHkucmFua2luZy1saXN0IHtcbiAgdGFibGUge1xuICAgIHRyIHtcbiAgICAgIHRoLCB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEycHggIWltcG9ydGFudDtcblxuICAgICAgICAmLnBvcyB7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLm5hbWUge1xuXG4gICAgICAgIH1cblxuICAgICAgICAmLmZtbiB7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uYXRpb24ge1xuICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiYm9keS5xdWFsaWZ5aW5nIHtcblxuICBoZWFkZXIge1xuICAgIC5sb2dvcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIG1haW4ge1xuICAgICNxdWFsaWZ5aW5nIHtcbiAgICAgIGdhcDogNTBweDtcblxuICAgICAgLnF1YWxpIHtcbiAgICAgICAgd2lkdGg6IDMwJTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAucGFpcnMge1xuICAgICAgICAgIGdhcDogOHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgIC5wYWlyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweDtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yaWRlcnMge1xuICAgICAgICAgICAgICAucmlkZXIge1xuICAgICAgICAgICAgICAgIGdhcDogOHB4O1xuXG4gICAgICAgICAgICAgICAgLnJpZGVyLW5hbWUsIC5yaWRlci10aW1lIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5yaWRlci1uYW1lIHtcbiAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5yaWRlci10aW1lcyB7XG4gICAgICAgICAgICAgICAgICBnYXA6IDhweDtcblxuICAgICAgICAgICAgICAgICAgLnJpZGVyLXRpbWUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDNweDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDExcHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmdyYWRpbmcge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Q4ZDhkODtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTFweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAtMzBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3ByaW50IHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggIzAwMCBzb2xpZDtcblxuICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcblxuICAgICAgICAgICAgICAgICYuZ2F0ZSB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLm5hbWUge1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5wb2ludHMge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gdGVhbS1jb2xvciB7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogMXB4ICMwMDAgc29saWQ7XG59XG5cbiNoZWF0LWdhdGVzIHtcbiAgLmNvbnRlbnQge1xuICAgICYucHJlLXNlbGVjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgYmFja2dyb3VuZDogI2UxZTFlMTtcbiAgICB9XG4gIH1cbn1cblxuLmhlYXQtZ2F0ZXMge1xuICAud3JhcHBlciB7XG4gICAgLnRpdGxlIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgLm1ldGEge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB9XG5cbiAgICAgIC5idXR0b25zIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC5tZXRhIHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b25zIHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ2F0ZXMge1xuICAgIC5nYXRlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4ICRjb2xvci1ibHVlIHNvbGlkO1xuXG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7XG4gICAgICB9XG5cbiAgICAgIC50ZWFtLWNvbG9yIHtcbiAgICAgICAgQGluY2x1ZGUgdGVhbS1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgZGl2IHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAmLmljb24ge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBpbWcuZW1vamkge1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubmFtZSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjNyZW07XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgc21hbGwge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3Bhbiwgc21hbGwge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnJlcGxhY2VkOjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiAn8J+UhCc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYud2FybmVkOjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiAn4pqg77iPJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnJhY2UtdGltZSB7XG4gICAgICAgICAgd2lkdGg6IDcwcHg7XG5cbiAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5yZXBsYWNlIHtcbiAgICAgICAgfVxuXG4gICAgICAgICYuY291bnRyeSB7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG5cbiAgICAgICAgICAuZmxhZyB7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gYXV0bztcbiAgICAgICAgICAgIGJvcmRlcjogMXB4ICM0NDQgc29saWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb2xvciB7XG4gICAgICAgICAgd2lkdGg6IDYwcHg7XG5cbiAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgdGV4dC1hbGlnbi1sYXN0OiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnBvaW50cywgJi5wb2ludHMtYWRkaXRpb24ge1xuICAgICAgICAgIHdpZHRoOiA1MHB4O1xuXG4gICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucmVtb3ZlIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4ICMwMDAgc29saWQ7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmY2JjYjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgfVxuXG4gICAgICAmLmhlYWQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICBkaXYge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAucmVtb3ZlIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaXMtcmVwbGFjZWQge1xuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgLmZ1bGwtbmFtZSB7XG4gICAgICAgICAgICBjb2xvcjogJGdhdGUtcmVkO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJlcGxhY2VtZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGJhY2tncm91bmQ6ICNkOGQ4ZDg7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgLmdhdGUge1xuICAgICAgICBkaXYge1xuICAgICAgICAgICYuY29sb3Ige1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYucG9pbnRzLCAmLnBvaW50cy1hZGRpdGlvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTIwcHg7XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwLm5vbi1zdGFydGVycyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgfVxuXG4gICYucmVwbGFjZWQtcmlkZXJzIHtcbiAgICAud3JhcHBlciAudGl0bGUgLm1ldGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLnJlc3VsdC1yaWRlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmLm5vLWNvbG9yIHtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gIH1cblxuICAmLmV4Y2x1ZGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICB9XG4gIH1cblxuICAucmlkZXIge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICBmbGV4LXNocmluazogMDtcblxuICAgICAgJi5uYW1lIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLnJpZGVyLXdhcm5pbmcge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAucmlkZXItbmFtZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAucmlkZXItcmVwbGFjZW1lbnQge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZy5lbW9qaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5jb3VudHJ5IHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gYXV0bztcbiAgICAgICAgICBib3JkZXI6IDFweCAjNDQ0IHNvbGlkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBvaW50cyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAuZHJvcGRvd24ge1xuICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5ub25lIHtcbiAgICAubmFtZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgLnJpZGVyIHtcbiAgICAgIGRpdiB7XG4gICAgICAgICYubmFtZSB7XG4gICAgICAgICAgLnJpZGVyLW5hbWUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jcHJldmlldyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlcjogMXB4ICNkOGQ4ZDggc29saWQ7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgdGFibGUge1xuICAgIHRkLCB0aCB7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgfVxuICB9XG59XG5cbiNyYWNlX2dhdGVzIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG59XG5cbiNoZWF0LXJlc3VsdHMge1xuICAuY29udGVudCB7XG4gICAgLmhlYXRzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW46IC01cHg7XG5cbiAgICAgIC5oZWF0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgICBib3JkZXI6IDFweCAjZDhkOGQ4IHNvbGlkO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucmlkZXJzIHtcbiAgICAgICAgICBib3JkZXI6IDFweCAjZDhkOGQ4IHNvbGlkO1xuXG4gICAgICAgICAgLnJpZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgY3Vyc29yOiBncmFiO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICBjdXJzb3I6IGdyYWJiaW5nO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5udW1iZXIge1xuICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5hbWUge1xuICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb3VudHJ5IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yZXN1bHQge1xuICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kcmFnLWdob3N0LWNsYXNzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZDhkOGQ4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNhZGQtZ2F0ZS1mb3JtIHtcbiAgLmdhdGVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAxMHB4O1xuXG4gICAgLmdhdGUge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMTBweCk7XG4gICAgICBib3JkZXI6IDJweCAjMDAwIHNvbGlkO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogZGFzaGVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICNoZWF0LXJlc3VsdHMge1xuICAgIC5jb250ZW50IHtcbiAgICAgIC5oZWF0cyB7XG4gICAgICAgIC5oZWF0IHtcbiAgICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxMHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc2luZ2xlLWhlYXQge1xuICAgICAgLmNvbnRlbnQge1xuICAgICAgICAuaGVhdHMge1xuICAgICAgICAgIC5oZWF0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jYnV0dG9uLWJhci1oZWF0IHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gIC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIC5idXR0b25zIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuICB9XG59XG5cbiNuZXh0LWhlYXQtYmFyIHtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgaW5wdXQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgIC5lbW9qaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2dhdGUtc2VsZWN0aW9uIHtcbiAgLnJpZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTBweDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTFlMWUxO1xuICAgIH1cblxuICAgIC5uYW1lIHtcbiAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIH1cblxuICAgIC5nYXRlcyB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGdhcDogNXB4O1xuXG4gICAgICAuZ2F0ZSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBwYWRkaW5nOiAzcHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAxcHggIzAwMCBzb2xpZDtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgJi5kaXNhYmxlZC1jb2xvciwgJi5hbHJlYWR5LXBpY2tlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2Q4ZDhkOCAhaW1wb3J0YW50O1xuICAgICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuXG4gIH1cbn1cblxuI3ByZS1zZWxlY3Rpb24tZm9ybSB7XG4gIC5yaWRlciB7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgYmFja2dyb3VuZDogI2UxZTFlMTtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICAgICAgfVxuXG4gICAgICAucmFuayB7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgfVxuXG4gICAgICAubnVtYmVyIHtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgIH1cblxuICAgICAgLm5hbWUge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgfVxuXG4gICAgICAuZmxhZyB7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIH1cblxuICAgICAgLnBvaW50cyB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2FkZC1yZXN1bHQtZm9ybSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgLnRlYW0tY29sb3Ige1xuICAgIEBpbmNsdWRlIHRlYW0tY29sb3I7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4jaGVhdC1maW5pc2hlZCB7XG4gIC5jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gIH1cblxuICAuZmluaXNoZWQtbWV0YSB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIGltZy5lbW9qaSB7XG4gICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4jcG9pbnRzLXBvcHVwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDIwcHg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICBzcGFuIHtcbiAgICBib3JkZXI6IDFweCAjMDAwIHNvbGlkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAyMHB4KTtcbiAgICBoZWlnaHQ6IDUwcHg7XG5cbiAgICBoMyB7XG4gICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgaDMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2FkZC1yaWRlcnMtbGlzdCB7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xuXG4gIC5yaWRlciB7XG4gICAgcGFkZGluZzogNHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5yYW5rLCAubnVtYmVyLCAubmFtZSwgLm5hdCwgLnB0cywgLmdhdGUge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTNweDtcbiAgICB9XG5cbiAgICAubmFtZS13cmFwcGVyIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIC5uYW1lLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIC5yYW5rIHtcbiAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5udW1iZXIge1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucHJvcG9zZWQtaW5mbyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgY29sb3I6ICM4MDgwODA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdCB7XG4gICAgICB3aWR0aDogMzBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnB0cyB7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICB9XG5cbiAgICAuZ2F0ZSB7XG4gICAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgYmFja2dyb3VuZDogI2UzZTNlMztcbiAgICB9XG5cbiAgICAmLnByb3Bvc2VkIHtcbiAgICAgIGJvcmRlcjogMnB4ICNkODAwMDAgc29saWQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcbiAgICB9XG4gIH1cbn1cblxuI3J1bi1vZmYtZm9ybSB7XG4gIC5mb3JtLWNoZWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIH1cbiAgfVxufVxuXG4jcnVuLW9mZi1lbnRyaWVzIHtcbiAgLmVudHJpZXMge1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIGJvcmRlcjogMXB4ICMwMDAgc29saWQ7XG4gICAgcGFkZGluZzogMTBweDtcblxuICAgIHAsIGRpdiwgbGFiZWwge1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC5lbnRyeSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAucG9zIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICB9XG5cbiAgICAgIC5uYW1lIHtcbiAgICAgICAgZmxleDogMTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNoZWNrIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNoZWNrIHtcbiAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNydW4tb2ZmLXNlcmllcy1oZWxwIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZzogMTBweDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2J0bi1maW5pc2gtaGVhdCB7XG4gICYuYmxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgYm9yZGVyOiAzcHggc29saWQgcmVkO1xuICAgIGFuaW1hdGlvbjogYmxpbmstYnV0dG9uIDFzIGluZmluaXRlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYmxpbmstYnV0dG9uIHtcbiAgMCUge1xuICAgIGJvcmRlci1jb2xvcjogcmVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XG4gIH1cblxuICA1MCUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MCwgMTY3LCA2OSwgMC45KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIGJvcmRlci1jb2xvcjogcmVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XG4gIH1cbn1cblxuLnRlYW0tcHJvcG9zYWwge1xuICAudGVhbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgLmNvbG9yIHtcbiAgICAgIEBpbmNsdWRlIHRlYW0tY29sb3I7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAubmFtZSwgLmdhdGUge1xuICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgfVxuXG4gICAgLm5hbWUge1xuICAgICAgZmxleDogMTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgLmdhdGUge1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuXG4gICAgLnJpZGVycyB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbiN0ZWFtLWdhdGVzLWZvcm0ge1xuICAuaGVhdHMge1xuICAgIC5oZWF0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgLm5hbWUge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICB9XG5cbiAgICAgIC5nYXRlIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLnJpZGVycyB7XG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIjZW50cmllcyB7XG4gIC5lbnRyeSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcblxuICAgIGRpdiB7XG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICB9XG5cbiAgICAucG9zIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgd2lkdGg6IDM0cHg7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAuaGFuZGxlIHtcbiAgICAgIGN1cnNvcjogbW92ZTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy90d2Vtb2ppLzE0LjAuMi83Mng3Mi8yMTk1LnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm51bWJlciB7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5uYW1lIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgLmVudHJ5LW5hbWUge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgLmZsYWcge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJpZGUge1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAucG9pbnRzIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgfVxuXG4gICAgLnNwYWNlciB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTFlMWUxO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgZGl2IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNoZWFkaW5nLCAjZHJhdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLm51bWJlcnMge1xuICAgIHdpZHRoOiA4MHB4O1xuICB9XG5cbiAgLnJpZGVycyB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICB9XG5cbiAgLmhlYWQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cbn1cblxuI2RyYXcge1xuICAucmlkZXJzLCAuaGVhZCB7XG4gICAgYm9yZGVyOiAxcHggIzAwMCBzb2xpZDtcbiAgfVxuXG4gIC5udW1iZXJzIHtcbiAgICBib3JkZXI6IDFweCAjZmZmIHNvbGlkO1xuXG4gICAgLm51bWJlciB7XG4gICAgICBwYWRkaW5nOiA2cHggNnB4IDZweCAwO1xuICAgIH1cbiAgfVxuXG4gIC5yaWRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgfVxuXG4gIC5lbnRyaWVzIHtcbiAgICBiYWNrZ3JvdW5kOiAjZDhkOGQ4O1xuXG4gICAgLnJpZGVyIHtcbiAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgIGN1cnNvcjogbW92ZTtcblxuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgICB9XG5cbiAgICAgIC5udW1iZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnJpZGVyLCAubnVtYmVyIHtcbiAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgfVxufVxuIiwiI215bGFwcy1oZWFkZXIge1xuICAubWV0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIC53cmFwcGVyIHtcbiAgICAgIC5tZXRhLXRpdGxlIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWV0YS1sZWZ0IHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNteWxhcHMtbWVudSB7XG4gIGJhY2tncm91bmQ6ICNlMWUxZTE7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxMHB4O1xuXG4gIGEsIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgfVxufVxuIiwiI3F1YWxpZnlpbmctY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAub3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbiNxdWFsaWZ5aW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTBweDtcblxuICAucXVhbGkge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgIH1cblxuICAgIC5wYWlycyB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBnYXA6IDEwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuXG4gICAgICAucGFpciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlMWUxZTE7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDAwY2M7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggNHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZGVycyB7XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICAgICAgLnJpZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAuc2VsZWN0LXJpZGVyIHtcbiAgICAgICAgICAgICAgLy9mbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yaWRlci10aW1lcyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIGdhcDogMTBweDtcblxuICAgICAgICAgICAgICAucmlkZXItdGltZSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcblxuICAgICAgICAgICAgICAgIHNwYW4udGV4dC1tdXRlZCB7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/