<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/*!
 * Bootstrap v4.4.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 The Bootstrap Authors
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/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: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

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

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

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

a:not([href]):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;
}

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

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

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

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

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

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

progress {
  vertical-align: baseline;
}

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

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

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

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

output {
  display: inline-block;
}

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

template {
  display: none;
}

[hidden] {
  display: none !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

small,
.small {
  font-size: 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: "\2014\00A0";
}

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

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

.figure {
  display: inline-block;
}

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

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

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

a &gt; 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 {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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 &gt; th,
.table-primary &gt; 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 &gt; td,
.table-hover .table-primary:hover &gt; th {
  background-color: #9fcdff;
}

.table-secondary,
.table-secondary &gt; th,
.table-secondary &gt; 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 &gt; td,
.table-hover .table-secondary:hover &gt; th {
  background-color: #c8cbcf;
}

.table-success,
.table-success &gt; th,
.table-success &gt; 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 &gt; td,
.table-hover .table-success:hover &gt; th {
  background-color: #b1dfbb;
}

.table-info,
.table-info &gt; th,
.table-info &gt; 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 &gt; td,
.table-hover .table-info:hover &gt; th {
  background-color: #abdde5;
}

.table-warning,
.table-warning &gt; th,
.table-warning &gt; 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 &gt; td,
.table-hover .table-warning:hover &gt; th {
  background-color: #ffe8a1;
}

.table-danger,
.table-danger &gt; th,
.table-danger &gt; 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 &gt; td,
.table-hover .table-danger:hover &gt; th {
  background-color: #f1b0b7;
}

.table-light,
.table-light &gt; th,
.table-light &gt; 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 &gt; td,
.table-hover .table-light:hover &gt; th {
  background-color: #ececf6;
}

.table-dark,
.table-dark &gt; th,
.table-dark &gt; 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 &gt; td,
.table-hover .table-dark:hover &gt; th {
  background-color: #b9bbbe;
}

.table-active,
.table-active &gt; th,
.table-active &gt; 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 &gt; td,
.table-hover .table-active:hover &gt; 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 &gt; .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 &gt; .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 &gt; .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 &gt; .table-bordered {
    border: 0;
  }
}

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

.table-responsive &gt; .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;
}

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 &gt; .col,
.form-row &gt; [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%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem;
}

.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%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem;
}

.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;
  cursor: pointer;
  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;
}

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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .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;
  box-shadow: none;
}

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

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

.btn-sm, .btn-group-sm &gt; .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 &gt; .btn,
.btn-group-vertical &gt; .btn {
  position: relative;
  flex: 1 1 auto;
}

.btn-group &gt; .btn:hover,
.btn-group-vertical &gt; .btn:hover {
  z-index: 1;
}

.btn-group &gt; .btn:focus, .btn-group &gt; .btn:active, .btn-group &gt; .btn.active,
.btn-group-vertical &gt; .btn:focus,
.btn-group-vertical &gt; .btn:active,
.btn-group-vertical &gt; .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group &gt; .btn:not(:first-child),
.btn-group &gt; .btn-group:not(:first-child) {
  margin-left: -1px;
}

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

.btn-group &gt; .btn:not(:first-child),
.btn-group &gt; .btn-group:not(:first-child) &gt; .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 &gt; .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg &gt; .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 &gt; .btn,
.btn-group-vertical &gt; .btn-group {
  width: 100%;
}

.btn-group-vertical &gt; .btn:not(:first-child),
.btn-group-vertical &gt; .btn-group:not(:first-child) {
  margin-top: -1px;
}

.btn-group-vertical &gt; .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical &gt; .btn-group:not(:last-child) &gt; .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical &gt; .btn:not(:first-child),
.btn-group-vertical &gt; .btn-group:not(:first-child) &gt; .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

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

.btn-group-toggle &gt; .btn input[type="radio"],
.btn-group-toggle &gt; .btn input[type="checkbox"],
.btn-group-toggle &gt; .btn-group &gt; .btn input[type="radio"],
.btn-group-toggle &gt; .btn-group &gt; .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 &gt; .form-control,
.input-group &gt; .form-control-plaintext,
.input-group &gt; .custom-select,
.input-group &gt; .custom-file {
  position: relative;
  flex: 1 1 0%;
  min-width: 0;
  margin-bottom: 0;
}

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

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

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

.input-group &gt; .form-control:not(:last-child),
.input-group &gt; .custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

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

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

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

.input-group &gt; .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 &gt; .form-control:not(textarea),
.input-group-lg &gt; .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

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

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

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

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

.input-group &gt; .input-group-prepend &gt; .btn,
.input-group &gt; .input-group-prepend &gt; .input-group-text,
.input-group &gt; .input-group-append:not(:last-child) &gt; .btn,
.input-group &gt; .input-group-append:not(:last-child) &gt; .input-group-text,
.input-group &gt; .input-group-append:last-child &gt; .btn:not(:last-child):not(.dropdown-toggle),
.input-group &gt; .input-group-append:last-child &gt; .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

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

.custom-control {
  position: relative;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
}

.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 &gt; .nav-link {
  color: #fff;
  background-color: #007bff;
}

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

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

.tab-content &gt; .tab-pane {
  display: none;
}

.tab-content &gt; .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 &gt; .container,
  .navbar-expand-sm &gt; .container-fluid, .navbar-expand-sm &gt; .container-sm, .navbar-expand-sm &gt; .container-md, .navbar-expand-sm &gt; .container-lg, .navbar-expand-sm &gt; .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 &gt; .container,
  .navbar-expand-sm &gt; .container-fluid, .navbar-expand-sm &gt; .container-sm, .navbar-expand-sm &gt; .container-md, .navbar-expand-sm &gt; .container-lg, .navbar-expand-sm &gt; .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 &gt; .container,
  .navbar-expand-md &gt; .container-fluid, .navbar-expand-md &gt; .container-sm, .navbar-expand-md &gt; .container-md, .navbar-expand-md &gt; .container-lg, .navbar-expand-md &gt; .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 &gt; .container,
  .navbar-expand-md &gt; .container-fluid, .navbar-expand-md &gt; .container-sm, .navbar-expand-md &gt; .container-md, .navbar-expand-md &gt; .container-lg, .navbar-expand-md &gt; .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 &gt; .container,
  .navbar-expand-lg &gt; .container-fluid, .navbar-expand-lg &gt; .container-sm, .navbar-expand-lg &gt; .container-md, .navbar-expand-lg &gt; .container-lg, .navbar-expand-lg &gt; .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 &gt; .container,
  .navbar-expand-lg &gt; .container-fluid, .navbar-expand-lg &gt; .container-sm, .navbar-expand-lg &gt; .container-md, .navbar-expand-lg &gt; .container-lg, .navbar-expand-lg &gt; .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 &gt; .container,
  .navbar-expand-xl &gt; .container-fluid, .navbar-expand-xl &gt; .container-sm, .navbar-expand-xl &gt; .container-md, .navbar-expand-xl &gt; .container-lg, .navbar-expand-xl &gt; .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 &gt; .container,
  .navbar-expand-xl &gt; .container-fluid, .navbar-expand-xl &gt; .container-sm, .navbar-expand-xl &gt; .container-md, .navbar-expand-xl &gt; .container-lg, .navbar-expand-xl &gt; .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 &gt; .container,
.navbar-expand &gt; .container-fluid, .navbar-expand &gt; .container-sm, .navbar-expand &gt; .container-md, .navbar-expand &gt; .container-lg, .navbar-expand &gt; .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 &gt; .container,
.navbar-expand &gt; .container-fluid, .navbar-expand &gt; .container-sm, .navbar-expand &gt; .container-md, .navbar-expand &gt; .container-lg, .navbar-expand &gt; .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 &gt; .nav-link,
.navbar-light .navbar-nav .active &gt; .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(0, 0, 0, 0.5)' 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 &gt; .nav-link,
.navbar-dark .navbar-nav .active &gt; .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(255, 255, 255, 0.5)' 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 &gt; hr {
  margin-right: 0;
  margin-left: 0;
}

.card &gt; .list-group:first-child .list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.card &gt; .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.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-header + .list-group .list-group-item:first-child {
  border-top: 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;
}

.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 &gt; .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group &gt; .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group &gt; .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group &gt; .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group &gt; .card:not(:last-child) .card-img-top,
  .card-group &gt; .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group &gt; .card:not(:last-child) .card-img-bottom,
  .card-group &gt; .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group &gt; .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group &gt; .card:not(:first-child) .card-img-top,
  .card-group &gt; .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group &gt; .card:not(:first-child) .card-img-bottom,
  .card-group &gt; .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 &gt; .card {
  overflow: hidden;
}

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

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

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

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

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

.breadcrumb-item + .breadcrumb-item::before {
  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;
  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;
  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;
}

.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: 0.25rem;
  border-top-right-radius: 0.25rem;
}

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

.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 .list-group-item {
  border-right-width: 0;
  border-left-width: 0;
  border-radius: 0;
}

.list-group-flush .list-group-item:first-child {
  border-top-width: 0;
}

.list-group-flush:last-child .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: .5;
}

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

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

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

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

.toast {
  max-width: 350px;
  overflow: hidden;
  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);
  backdrop-filter: blur(10px);
  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);
}

.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);
  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 &gt; * {
  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);
  }
  .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 &gt; .arrow, .bs-popover-auto[x-placement^="top"] &gt; .arrow {
  bottom: calc(-0.5rem - 1px);
}

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

.bs-popover-top &gt; .arrow::after, .bs-popover-auto[x-placement^="top"] &gt; .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 &gt; .arrow, .bs-popover-auto[x-placement^="right"] &gt; .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-right &gt; .arrow::before, .bs-popover-auto[x-placement^="right"] &gt; .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 &gt; .arrow::after, .bs-popover-auto[x-placement^="right"] &gt; .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 &gt; .arrow, .bs-popover-auto[x-placement^="bottom"] &gt; .arrow {
  top: calc(-0.5rem - 1px);
}

.bs-popover-bottom &gt; .arrow::before, .bs-popover-auto[x-placement^="bottom"] &gt; .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 &gt; .arrow::after, .bs-popover-auto[x-placement^="bottom"] &gt; .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 &gt; .arrow, .bs-popover-auto[x-placement^="left"] &gt; .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-left &gt; .arrow::before, .bs-popover-auto[x-placement^="left"] &gt; .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 &gt; .arrow::after, .bs-popover-auto[x-placement^="left"] &gt; .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: .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 .75s linear infinite;
}

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

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
  }
}

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: spinner-grow .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.85714%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}

@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
}

@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}

@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}

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

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

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

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

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

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmNzcyIsInNvdXJjZXMiOlsiYm9vdHN0cmFwLnNjc3MiLCJfZnVuY3Rpb25zLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJfbWl4aW5zLnNjc3MiLCJ2ZW5kb3IvX3Jmcy5zY3NzIiwibWl4aW5zL19kZXByZWNhdGUuc2NzcyIsIm1peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIm1peGlucy9faG92ZXIuc2NzcyIsIm1peGlucy9faW1hZ2Uuc2NzcyIsIm1peGlucy9fYmFkZ2Uuc2NzcyIsIm1peGlucy9fcmVzaXplLnNjc3MiLCJtaXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIm1peGlucy9fc2l6ZS5zY3NzIiwibWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJtaXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIm1peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJtaXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIm1peGlucy9fdmlzaWJpbGl0eS5zY3NzIiwibWl4aW5zL19hbGVydC5zY3NzIiwibWl4aW5zL19idXR0b25zLnNjc3MiLCJtaXhpbnMvX2NhcmV0LnNjc3MiLCJtaXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIm1peGlucy9fbGlzdHMuc2NzcyIsIm1peGlucy9fbGlzdC1ncm91cC5zY3NzIiwibWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwibWl4aW5zL19mb3Jtcy5zY3NzIiwibWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIm1peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJtaXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIm1peGlucy9fYm94LXNoYWRvdy5zY3NzIiwibWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIm1peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwibWl4aW5zL19jbGVhcmZpeC5zY3NzIiwibWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwibWl4aW5zL19ncmlkLnNjc3MiLCJtaXhpbnMvX2Zsb2F0LnNjc3MiLCJfcm9vdC5zY3NzIiwiX3JlYm9vdC5zY3NzIiwiX3R5cGUuc2NzcyIsIl9pbWFnZXMuc2NzcyIsIl9jb2RlLnNjc3MiLCJfZ3JpZC5zY3NzIiwiX3RhYmxlcy5zY3NzIiwiX2Zvcm1zLnNjc3MiLCJfYnV0dG9ucy5zY3NzIiwiX3RyYW5zaXRpb25zLnNjc3MiLCJfZHJvcGRvd24uc2NzcyIsIl9idXR0b24tZ3JvdXAuc2NzcyIsIl9pbnB1dC1ncm91cC5zY3NzIiwiX2N1c3RvbS1mb3Jtcy5zY3NzIiwiX25hdi5zY3NzIiwiX25hdmJhci5zY3NzIiwiX2NhcmQuc2NzcyIsIl9icmVhZGNydW1iLnNjc3MiLCJfcGFnaW5hdGlvbi5zY3NzIiwiX2JhZGdlLnNjc3MiLCJfanVtYm90cm9uLnNjc3MiLCJfYWxlcnQuc2NzcyIsIl9wcm9ncmVzcy5zY3NzIiwiX21lZGlhLnNjc3MiLCJfbGlzdC1ncm91cC5zY3NzIiwiX2Nsb3NlLnNjc3MiLCJfdG9hc3RzLnNjc3MiLCJfbW9kYWwuc2NzcyIsIl90b29sdGlwLnNjc3MiLCJfcG9wb3Zlci5zY3NzIiwiX2Nhcm91c2VsLnNjc3MiLCJfc3Bpbm5lcnMuc2NzcyIsIl91dGlsaXRpZXMuc2NzcyIsInV0aWxpdGllcy9fYWxpZ24uc2NzcyIsInV0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwidXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJ1dGlsaXRpZXMvX2NsZWFyZml4LnNjc3MiLCJ1dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsInV0aWxpdGllcy9fZW1iZWQuc2NzcyIsInV0aWxpdGllcy9fZmxleC5zY3NzIiwidXRpbGl0aWVzL19mbG9hdC5zY3NzIiwidXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwidXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwidXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJ1dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsInV0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJ1dGlsaXRpZXMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCJ1dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsInV0aWxpdGllcy9fdGV4dC5zY3NzIiwidXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJfcHJpbnQuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEJvb3RzdHJhcCB2NC40LjEgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE5IFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAxOSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImlucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJzcGlubmVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuQGltcG9ydCBcInByaW50XCI7XG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluICN7JG1hcC1uYW1lfSBtdXN0IHN0YXJ0IGF0IDAsIGJ1dCBzdGFydHMgYXQgI3skZmlyc3QtdmFsdWV9LlwiO1xuICB9XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBTZWUgaHR0cHM6Ly9jb2RlcGVuLmlvL2tldmlud2ViZXIvcGVuL2RYV29Sd1xuQGZ1bmN0aW9uIGVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAkc3RyaW5nOiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkY2hhciwgJGVuY29kZWQpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3RcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yLCAkZGFyazogJHlpcS10ZXh0LWRhcmssICRsaWdodDogJHlpcS10ZXh0LWxpZ2h0KSB7XG4gICRyOiByZWQoJGNvbG9yKTtcbiAgJGc6IGdyZWVuKCRjb2xvcik7XG4gICRiOiBibHVlKCRjb2xvcik7XG5cbiAgJHlpcTogKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xuXG4gIEBpZiAoJHlpcSA+PSAkeWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkKSB7XG4gICAgQHJldHVybiAkZGFyaztcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkbGlnaHQ7XG4gIH1cbn1cblxuLy8gUmV0cmlldmUgY29sb3IgU2FzcyBtYXBzXG5AZnVuY3Rpb24gY29sb3IoJGtleTogXCJibHVlXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gdGhlbWUtY29sb3IoJGtleTogXCJwcmltYXJ5XCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gZ3JheSgka2V5OiBcIjEwMFwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkZ3JheXMsICRrZXkpO1xufVxuXG4vLyBSZXF1ZXN0IGEgdGhlbWUgY29sb3IgbGV2ZWxcbkBmdW5jdGlvbiB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3ItbmFtZTogXCJwcmltYXJ5XCIsICRsZXZlbDogMCkge1xuICAkY29sb3I6IHRoZW1lLWNvbG9yKCRjb2xvci1uYW1lKTtcbiAgJGNvbG9yLWJhc2U6IGlmKCRsZXZlbCA+IDAsICRibGFjaywgJHdoaXRlKTtcbiAgJGxldmVsOiBhYnMoJGxldmVsKTtcblxuICBAcmV0dXJuIG1peCgkY29sb3ItYmFzZSwgJGNvbG9yLCAkbGV2ZWwgKiAkdGhlbWUtY29sb3ItaW50ZXJ2YWwpO1xufVxuXG4vLyBSZXR1cm4gdmFsaWQgY2FsY1xuQGZ1bmN0aW9uIGFkZCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxICsgJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSArICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiArIFwiKSArICR2YWx1ZTIpO1xufVxuXG5AZnVuY3Rpb24gc3VidHJhY3QoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XG4gIEBpZiAkdmFsdWUxID09IG51bGwgYW5kICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAtJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xuICAgIEByZXR1cm4gJHZhbHVlMSAtICR2YWx1ZTI7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gLSAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgLSBcIikgKyAkdmFsdWUyKTtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApLFxuICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIixcIiUzY1wiKSxcbiAgKFwiPlwiLFwiJTNlXCIpLFxuICAoXCIjXCIsXCIlMjNcIiksXG4pICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6IDI1JSxcbiAgICA1MDogNTAlLFxuICAgIDc1OiA3NSUsXG4gICAgMTAwOiAxMDAlLFxuICAgIGF1dG86IGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcbiRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2U6IDE1JSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kcm91bmRlZC1waWxsOiAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiBqb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAgICAgIDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAgICAgIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplOiAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15IC8gMikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0Jz48cGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplIC8gMiAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSc+PHBhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgZXNjYXBlLXN2ZygkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3IpIG5vLXJlcGVhdCByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgIGNlbnRlciByaWdodCAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBJRS9FZGdlXG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9JzAgMCAxMiAxMic+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuXG5cbi8vIE5hdmJhclxuXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vLyBTcGlubmVyc1xuXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gVXRpbGl0aWVzXG5cbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5ICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG5cbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuLy8gVmVuZG9yXG5AaW1wb3J0IFwidmVuZG9yL3Jmc1wiO1xuXG4vLyBEZXByZWNhdGVcbkBpbXBvcnQgXCJtaXhpbnMvZGVwcmVjYXRlXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9icmVha3BvaW50c1wiO1xuQGltcG9ydCBcIm1peGlucy9ob3ZlclwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9iYWRnZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2NyZWVuLXJlYWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWhpZGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC10cnVuY2F0ZVwiO1xuQGltcG9ydCBcIm1peGlucy92aXNpYmlsaXR5XCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9jYXJldFwiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3RzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZmxvYXRcIjtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCBmb250LXJlc2l6aW5nXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmc1xuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgZm9udCBzaXplXG4kcmZzLWJhc2UtZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy1mb250LXNpemUtdW5pdDogcmVtICFkZWZhdWx0O1xuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIGZvbnQtc2l6ZSBzdGFydHMgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbi8vIFJlc2l6ZSBmb250LXNpemUgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBcIm51bWJlclwiIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB0byBmYWxzZVxuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS1mb250LXNpemUgdW5pdFxuJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0OiB1bml0KCRyZnMtYmFzZS1mb250LXNpemUpO1xuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS1mb250LXNpemUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInB4XCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJyZW1cIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBmb250LXNpemUgbWl4aW5cbkBtaXhpbiByZnMoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAvLyBDYWNoZSAkZnMgdW5pdFxuICAkZnMtdW5pdDogaWYodHlwZS1vZigkZnMpID09IFwibnVtYmVyXCIsIHVuaXQoJGZzKSwgZmFsc2UpO1xuXG4gIC8vIEFkZCAhaW1wb3J0YW50IHN1ZmZpeCBpZiBuZWVkZWRcbiAgJHJmcy1zdWZmaXg6IGlmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIik7XG5cbiAgLy8gSWYgJGZzIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICRmcyBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gIEBpZiBub3QgJGZzLXVuaXQgb3IgJGZzLXVuaXQgIT0gXCJcIiBhbmQgJGZzLXVuaXQgIT0gXCJweFwiIGFuZCAkZnMtdW5pdCAhPSBcInJlbVwiIG9yICRmcyA9PSAwIHtcbiAgICBmb250LXNpemU6ICN7JGZzfSN7JHJmcy1zdWZmaXh9O1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBWYXJpYWJsZXMgZm9yIHN0b3Jpbmcgc3RhdGljIGFuZCBmbHVpZCByZXNjYWxpbmdcbiAgICAkcmZzLXN0YXRpYzogbnVsbDtcbiAgICAkcmZzLWZsdWlkOiBudWxsO1xuXG4gICAgLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xuICAgIEBpZiAkZnMtdW5pdCA9PSBcInB4XCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIEBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnMgLyAkcmZzLXJlbS12YWx1ZX1yZW0jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSBweCB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnN9cHgjeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGVycm9yIFwiYCN7JHJmcy1mb250LXNpemUtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtZm9udC1zaXplLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xuICAgIH1cblxuICAgIC8vIE9ubHkgYWRkIG1lZGlhIHF1ZXJ5IGlmIGZvbnQtc2l6ZSBpcyBiaWdnZXIgYXMgdGhlIG1pbmltdW0gZm9udC1zaXplXG4gICAgLy8gSWYgJHJmcy1mYWN0b3IgPT0gMSwgbm8gcmVzY2FsaW5nIHdpbGwgdGFrZSBwbGFjZVxuICAgIEBpZiAkZnMgPiAkcmZzLWJhc2UtZm9udC1zaXplIGFuZCAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB7XG4gICAgICAkbWluLXdpZHRoOiBudWxsO1xuICAgICAgJHZhcmlhYmxlLXVuaXQ6IG51bGw7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUpIC8gJHJmcy1mYWN0b3I7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gZ2l2ZW4gZm9udC1zaXplIGFuZCBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcblxuICAgICAgLy8gQmFzZSBmb250LXNpemUgZm9ybWF0dGluZ1xuICAgICAgLy8gTm8gbmVlZCB0byBjaGVjayBpZiB0aGUgdW5pdCBpcyB2YWxpZCwgYmVjYXVzZSB3ZSBkaWQgdGhhdCBiZWZvcmVcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAjeyRmcy1taW4gLyAkcmZzLXJlbS12YWx1ZX1yZW0sICN7JGZzLW1pbn1weCk7XG5cbiAgICAgIC8vIElmIHR3by1kaW1lbnNpb25hbCwgdXNlIHNtYWxsZXN0IG9mIHNjcmVlbiB3aWR0aCBhbmQgaGVpZ2h0XG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAjeyRmcy1kaWZmICogMTAwIC8gJHJmcy1icmVha3BvaW50fSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplLlxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcbiAgICB9XG5cbiAgICAvLyBSZW5kZXJpbmdcbiAgICBAaWYgJHJmcy1mbHVpZCA9PSBudWxsIHtcbiAgICAgIC8vIE9ubHkgcmVuZGVyIHN0YXRpYyBmb250LXNpemUgaWYgbm8gZmx1aWQgZm9udC1zaXplIGlzIGF2YWlsYWJsZVxuICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJG1xLXZhbHVlOiBudWxsO1xuXG4gICAgICAvLyBSRlMgYnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICBAaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcmVtIHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludCAvICRyZnMtcmVtLXZhbHVlfSN7JHJmcy1icmVha3BvaW50LXVuaXR9O1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50fXB4O1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgICAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LFxuICAgICAgICAvLyB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICAgICAmLFxuICAgICAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbiB1c2VzIFJGUyB0byByZXNjYWxlIGZvbnQgc2l6ZXNcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBEZXByZWNhdGUgbWl4aW5cbi8vXG4vLyBUaGlzIG1peGluIGNhbiBiZSB1c2VkIHRvIGRlcHJlY2F0ZSBtaXhpbnMgb3IgZnVuY3Rpb25zLlxuLy8gYCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXNgIGlzIGEgZ2xvYmFsIHZhcmlhYmxlLCBgJGlnbm9yZS13YXJuaW5nYCBpcyBhIHZhcmlhYmxlIHRoYXQgY2FuIGJlIHBhc3NlZCB0b1xuLy8gc29tZSBkZXByZWNhdGVkIG1peGlucyB0byBzdXBwcmVzcyB0aGUgd2FybmluZyAoZm9yIGV4YW1wbGUgaWYgdGhlIG1peGluIGlzIHN0aWxsIGJlIHVzZWQgaW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBCb290c3RyYXApXG5AbWl4aW4gZGVwcmVjYXRlKCRuYW1lLCAkZGVwcmVjYXRlLXZlcnNpb24sICRyZW1vdmUtdmVyc2lvbiwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBAaWYgKCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXMgIT0gZmFsc2UgYW5kICRpZ25vcmUtd2FybmluZyAhPSB0cnVlKSB7XG4gICAgQHdhcm4gXCIjeyRuYW1lfSBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mICN7JGRlcHJlY2F0ZS12ZXJzaW9ufS4gSXQgd2lsbCBiZSByZW1vdmVkIGVudGlyZWx5IGluICN7JHJlbW92ZS12ZXJzaW9ufS5cIjtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkKCkge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgc2l6ZSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlICE9IDAge1xuICAgIGEjeyRwYXJlbnR9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtZW1waGFzaXMtdmFyaWFudCgpYFwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWhpZGUoKWBcIiwgXCJ2NC4xLjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVmlzaWJpbGl0eVxuXG5AbWl4aW4gaW52aXNpYmxlKCR2aXNpYmlsaXR5KSB7XG4gIHZpc2liaWxpdHk6ICR2aXNpYmlsaXR5ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbnZpc2libGUoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24oKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQoKSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICRuYXYtZGl2aWRlci1jb2xvciwgJG1hcmdpbi15OiAkbmF2LWRpdmlkZXItbWFyZ2luLXksICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICRtYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG5hdi1kaXZpZGVyKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZm9ybS1jb250cm9sLWZvY3VzKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDtcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgZXNjYXBlLXN2ZygkaWNvbikgJGN1c3RvbS1zZWxlY3QtYmcgbm8tcmVwZWF0ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb24gLyAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDEwJSk7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRib3JkZXI6IG51bGwpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgQGlmICRib3JkZXIgIT0gbnVsbCB7XG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciB7XG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuIiwiQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAkcmVzdWx0OiAoKTtcblxuICAgIEBpZiAobGVuZ3RoKCRzaGFkb3cpID09IDEpIHtcbiAgICAgIC8vIFdlIGNhbiBwYXNzIGBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO2BcbiAgICAgICRyZXN1bHQ6ICRzaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBGaWx0ZXIgdG8gYXZvaWQgaW52YWxpZCBwcm9wZXJ0aWVzIGZvciBleGFtcGxlIGBib3gtc2hhZG93OiBub25lLCAxcHggMXB4IGJsYWNrO2BcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRzaGFkb3cpIHtcbiAgICAgICAgQGlmIG50aCgkc2hhZG93LCAkaSkgIT0gXCJub25lXCIge1xuICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJHNoYWRvdywgJGkpLCBcImNvbW1hXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAobGVuZ3RoKCRyZXN1bHQpID4gMCkge1xuICAgICAgYm94LXNoYWRvdzogJHJlc3VsdDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICB9XG4gICAgfVxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgLyAyO1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06ICRzaXplIC8gJGNvbHVtbnM7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICAmID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCUgLyAkY291bnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlIC8gJGNvdW50O1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQG1peGluIGZsb2F0LWxlZnQoKSB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtbGVmdGAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbkBtaXhpbiBmbG9hdC1yaWdodCgpIHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtcmlnaHRgIG1peGluXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG5AbWl4aW4gZmxvYXQtbm9uZSgpIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1ub25lYCBtaXhpblwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gRG8gbm90IGZvcmdldCB0byB1cGRhdGUgZ2V0dGluZy1zdGFydGVkL3RoZW1pbmcubWQhXG46cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLW5vLXZlbmRvci1wcmVmaXgsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA1XG59XG5cbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG4vLyBUT0RPOiByZW1vdmUgaW4gdjVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2Vcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbn1cblxuLy8gRnV0dXJlLXByb29mIHJ1bGU6IGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCA6Zm9jdXMtdmlzaWJsZSwgc3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmVcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxuLy8gZm9jdXMgb3V0bGluZS4gSW4gZ2VuZXJhbCwgdGhpcyB3b3VsZCBtZWFuIHRoYXQgdGhlIG91dGxpbmUgaXMgb25seSBhcHBsaWVkIGlmIHRoZVxuLy8gaW50ZXJhY3Rpb24gdGhhdCBsZWQgdG8gdGhlIGVsZW1lbnQgcmVjZWl2aW5nIHByb2dyYW1tYXRpYyBmb2N1cyB3YXMgYSBrZXlib2FyZCBpbnRlcmFjdGlvbixcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxuLy8gd2FudHMgZm9jdXMgb3V0bGluZXMgdG8gYWx3YXlzIGJlIHByZXNlbnRlZC5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXG4vLyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXIucGFjaWVsbG9ncm91cC5jb20vYmxvZy8yMDE4LzAzL2ZvY3VzLXZpc2libGUtYW5kLWJhY2t3YXJkcy1jb21wYXRpYmlsaXR5L1xuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDVcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy9cbi8vIENvZGVcbi8vXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbnByZSB7XG4gIC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuICBtYXJnaW4tdG9wOiAwO1xuICAvLyBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG4vL1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxufVxuXG5zdmcge1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgU1ZHIG92ZXJmbG93IGJ1ZyBpbiBJRTEwLzExIGlzIHN0aWxsIHJlcXVpcmVkLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNjg3OFxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG50aCB7XG4gIC8vIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgZnJvbSB0aGUgYDxib2R5PmAsIG9yIHRoZVxuICAvLyBjbG9zZXN0IHBhcmVudCB3aXRoIGEgc2V0IGB0ZXh0LWFsaWduYC5cbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbmxhYmVsIHtcbiAgLy8gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAkbGFiZWwtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBXb3JrIGFyb3VuZCBhIEZpcmVmb3gvSUUgYnVnIHdoZXJlIHRoZSB0cmFuc3BhcmVudCBgYnV0dG9uYCBiYWNrZ3JvdW5kXG4vLyByZXN1bHRzIGluIGEgbG9zcyBvZiB0aGUgZGVmYXVsdCBgYnV0dG9uYCBmb2N1cyBzdHlsZXMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlL1xuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgYXBwZWFyYW5jZSBvZiB0ZW1wb3JhbCBpbnB1dHMgdG8gYXZvaWQgYSBNb2JpbGUgU2FmYXJpXG4gIC8vIGJ1ZyB3aGVyZSBzZXR0aW5nIGEgY3VzdG9tIGxpbmUtaGVpZ2h0IHByZXZlbnRzIHRleHQgZnJvbSBiZWluZyB2ZXJ0aWNhbGx5XG4gIC8vIGNlbnRlcmVkIHdpdGhpbiB0aGUgaW5wdXQuXG4gIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4gIC8vIGFuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExMjY2XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveDtcbn1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgLy8gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIC8vIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuICAvLyBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4gIC8vIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbiAgbWluLXdpZHRoOiAwO1xuICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDEuNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxufVxuXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4vL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxufVxuXG4vL1xuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG4vL1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUVcbn1cblxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZSAoZnJvbSBQdXJlQ1NTKS5cbi8vIE5lZWRlZCBmb3IgcHJvcGVyIGRpc3BsYXkgaW4gSUUgMTAtLlxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyIC8gMjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGtiZC1ib3gtc2hhZG93KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDEwMCUpO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXItbWF4LXdpZHRocygpO1xuICB9XG5cbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkY29udGFpbmVyLW1heC13aWR0aCA+ICR3aWR0aCBvciAkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgbmVnYXRpdmUgbWFyZ2luIGZyb20gZGVmYXVsdCAucm93LCB0aGVuIHRoZSBob3Jpem9udGFsIHBhZGRpbmdcbiAgLy8gZnJvbSBhbGwgaW1tZWRpYXRlIGNoaWxkcmVuIGNvbHVtbnMgKHRvIHByZXZlbnQgcnVuYXdheSBzdHlsZSBpbmhlcml0YW5jZSkuXG4gIC5uby1ndXR0ZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICA+IC5jb2wsXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xufVxuXG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgZm9yIHdvcmthcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgYmFzZSAuZm9ybS1jaGVja1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcblxuICAvLyBVbmRvIC5mb3JtLWNoZWNrLWlucHV0IGRlZmF1bHRzIGFuZCBhZGQgc29tZSBgbWFyZ2luLXJpZ2h0YC5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IGlmKCRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMsIHBvaW50ZXIsIG51bGwpO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWxpbmUtaGVpZ2h0LWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1saW5lLWhlaWdodC1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbiAgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbiAgfVxufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wcmlnaHQsXG4uZHJvcGRvd24sXG4uZHJvcGxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gZW5hYmxlZCBQb3BwZXIuanMsIHJlc2V0IGJhc2ljIGRyb3Bkb3duIHBvc2l0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmRyb3Bkb3duLW1lbnUge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sXG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnLCAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSwgdHJ1ZSk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcHJpZ2h0ICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wbGVmdCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi5idG4tZ3JvdXAtdG9nZ2xlIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIDAlO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWN1cnNvcjtcblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgYm9yZGVyOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvciBzb2xpZCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogbm8tcmVwZWF0IDUwJSAvICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplfTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXNcbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgY2hlY2tib3hlcy5cblxuLmN1c3RvbS1jaGVja2JveCB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgICAmOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhZGlvc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciByYWRpb3MuXG5cbi5jdXN0b20tcmFkaW8ge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIHN3aXRjaGVzXG4vL1xuLy8gVHdlYWsgYSBmZXcgdGhpbmdzIGZvciBzd2l0Y2hlc1xuXG4uY3VzdG9tLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC13aWR0aDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IGFkZCgoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMiwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIGxlZnQ6IGFkZCgtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlciksICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBoZWlnaHQ6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIC4xNXMgZWFzZS1pbi1vdXQsICRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyO1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAvIDI7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwOyAvLyBFZGdlIHNwZWNpZmljXG4gICAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7IC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIG1hcmdpbi1sZWZ0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7ICAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCAvIDI7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0XG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cbiAgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIGltYWdlIHNpemUgYnVnIGluIElFXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjg4NTVcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNvbG9yO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0kY2FyZC1zcGFjZXIteSAvIDI7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cblxuICArIC5saXN0LWdyb3VwIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBmbGV4LXNocmluazogMDsgLy8gRm9yIElFOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5Mzk2XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIENhcmQgZGVja1xuXG4uY2FyZC1kZWNrIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWRlY2stbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogLSRjYXJkLWRlY2stbWFyZ2luO1xuXG4gICAgLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHRcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gU3VwcHJlc3MgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvciBpbiBtb2Rlcm4gYnJvd3NlcnNcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgICAgY29udGVudDogZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtYXJnaW4tbGVmdDogLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBib3JkZXI6ICRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBvdXRsaW5lOiAkcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lO1xuICAgIGJveC1zaGFkb3c6ICRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cbn1cblxuLnBhZ2UtaXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAvLyBPcGluaW9uYXRlZDogcmVtb3ZlIHRoZSBcImhhbmRcIiBjdXJzb3Igc2V0IHByZXZpb3VzbHkgZm9yIC5wYWdlLWxpbmtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJGxpbmUtaGVpZ2h0LWxnLCAkYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkbGluZS1oZWlnaHQtc20sICRib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmFsZXJ0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJvcmRlci1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWNvbG9yLWxldmVsKSk7XG4gIH1cbn1cbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gICAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbiAgfVxufVxuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZztcblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBpbmhlcml0KVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkbGlzdC1ncm91cC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmICsgJiB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5hLmNsb3NlLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIudG9hc3Qge1xuICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGNoZWFwIHJvdW5kZWQgY29ybmVycyBvbiBuZXN0ZWQgaXRlbXNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b2FzdC1mb250LXNpemUpO1xuICBjb2xvcjogJHRvYXN0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1ib3JkZXItY29sb3I7XG4gIGJveC1zaGFkb3c6ICR0b2FzdC1ib3gtc2hhZG93O1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvYXN0LWJvcmRlci1yYWRpdXMpO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHRvYXN0LXBhZGRpbmcteDtcbiAgfVxuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteSAkdG9hc3QtcGFkZGluZy14O1xuICBjb2xvcjogJHRvYXN0LWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yO1xufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXg7IC8vIGFwcGx5IHRvIGJvdGggdmVydGljYWwgYW5kIGhvcml6b250YWxcbn1cbiIsIi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi5tb2RhbC1vcGVuIHtcbiAgLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1vZGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDsgLy8gSUUxMC8xMVxuICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTsgLy8gSUUxMC8xMVxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC8vIEVuc3VyZSBgbW9kYWwtZGlhbG9nLWNlbnRlcmVkYCBleHRlbmRzIHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgdmlldyAoSUUxMC8xMSlcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gSUUxMFxuICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC8vIEVuc3VyZSBgLm1vZGFsLWJvZHlgIHNob3dzIHNjcm9sbGJhciAoSUUxMC8xMSlcbiAgJi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmcgLSAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuIC8gMjtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogJG1vZGFsLWxnO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgLm1vZGFsLXhsIHsgbWF4LXdpZHRoOiAkbW9kYWwteGw7IH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXRvcCB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgdG9wOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1sZWZ0O1xuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbn1cbiIsIi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcG9wb3Zlci1ib3gtc2hhZG93KTtcblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgbWFyZ2luOiAwICRwb3BvdmVyLWJvcmRlci1yYWRpdXM7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgYm90dG9tOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICB0b3A6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAvIDI7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgcmlnaHQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1sZWZ0O1xuICB9XG59XG5cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogJHBvcG92ZXItaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItaGVhZGVyLWJnLCA1JSk7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWJvZHktcGFkZGluZy15ICRwb3BvdmVyLWJvZHktcGFkZGluZy14O1xuICBjb2xvcjogJHBvcG92ZXItYm9keS1jb2xvcjtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IDUwJSAvIDEwMCUgMTAwJTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gb3ZlcnJpZGUgPG9sPiBkZWZhdWx0XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiBzcGlubmVyLWJvcmRlciAuNzVzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IHNwaW5uZXItZ3JvdyAuNzVzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG59XG4iLCJAaW1wb3J0IFwidXRpbGl0aWVzL2FsaWduXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2JhY2tncm91bmRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYm9yZGVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9kaXNwbGF5XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2VtYmVkXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2ZsZXhcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZmxvYXRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvb3ZlcmZsb3dcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2NyZWVucmVhZGVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zaGFkb3dzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NpemluZ1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zdHJldGNoZWQtbGlua1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zcGFjaW5nXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3RleHRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdmlzaWJpbGl0eVwiO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5hbGlnbi1iYXNlbGluZSAgICB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9IC8vIEJyb3dzZXIgZGVmYXVsdFxuLmFsaWduLXRvcCAgICAgICAgIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4uYWxpZ24tbWlkZGxlICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1ib3R0b20gICAgICB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtYm90dG9tIHsgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LXRvcCAgICB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbkBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSk7XG4gIH1cbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogJHJvdW5kZWQtcGlsbCAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgICAuZCN7JGluZml4fS0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxuLy9cblxuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgLmQtcHJpbnQtI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbkBlYWNoICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbyBpbiAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zIHtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXg6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDEpO1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teTogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMik7XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtI3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teH1ieSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXl9IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXkgLyAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLnNoYWRvdy1zbSB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LXNtICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3cgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LWxnIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctbGcgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1ub25lIHsgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gV2lkdGggYW5kIGhlaWdodFxuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAod2lkdGg6IHcsIGhlaWdodDogaCkge1xuICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc2l6ZXMge1xuICAgIC4jeyRhYmJyZXZ9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi5tdy0xMDAgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuLm1oLTEwMCB7IG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4vLyBWaWV3cG9ydCBhZGRpdGlvbmFsIGhlbHBlcnNcblxuLm1pbi12dy0xMDAgeyBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi5taW4tdmgtMTAwIHsgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuXG4udnctMTAwIHsgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi52aC0xMDAgeyBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmICRzaXplICE9IDAge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFRleHRcbi8vXG5cbi50ZXh0LW1vbm9zcGFjZSB7IGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFpbXBvcnRhbnQ7IH1cblxuLy8gQWxpZ25tZW50XG5cbi50ZXh0LWp1c3RpZnkgIHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4udGV4dC13cmFwICAgICB7IHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDsgfVxuLnRleHQtbm93cmFwICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXRydW5jYXRlIHsgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpOyB9XG5cbi8vIFJlc3BvbnNpdmUgYWxpZ25tZW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC50ZXh0I3skaW5maXh9LWxlZnQgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LXJpZ2h0ICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG5cbi50ZXh0LWxvd2VyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXVwcGVyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LWNhcGl0YWxpemUgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG5cbi8vIFdlaWdodCBhbmQgaXRhbGljc1xuXG4uZm9udC13ZWlnaHQtbGlnaHQgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LW5vcm1hbCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZGVyICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgIHsgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcblxuLnRleHQtd2hpdGUgeyBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG4udGV4dC1ib2R5IHsgY29sb3I6ICRib2R5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW11dGVkIHsgY29sb3I6ICR0ZXh0LW11dGVkICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgkYmxhY2ssIC41KSAhaW1wb3J0YW50OyB9XG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBJRSAmIDwgRWRnZSAxOFxuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvbWFpbi5jc3MvYmxvYi9tYXN0ZXIvc3JjL19wcmludC5jc3NcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxuLy8gaHR0cHM6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmICRlbmFibGUtcHJpbnQtc3R5bGVzIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgb3V0IGBjb2xvcmAgYW5kIGBiYWNrZ3JvdW5kYFxuICAgICAgLy9jb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXJcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOm5vdCguYnRuKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xuICAgIC8vICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAvL31cblxuICAgIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICAvL1xuXG4gICAgLy9hW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcbiAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgIC8vfVxuXG4gICAgcHJlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGdyYXktNTAwOyAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gUHJpbnRpbmcgVGFibGVzOlxuICAgIC8vIGh0dHBzOi8vd2ViLmFyY2hpdmUub3JnL3dlYi8yMDE4MDgxNTE1MDkzNC9odHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAvL1xuXG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBTcGVjaWZ5IGEgc2l6ZSBhbmQgbWluLXdpZHRoIHRvIG1ha2UgcHJpbnRpbmcgY2xvc2VyIGFjcm9zcyBicm93c2Vycy5cbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xuICAgIC8vIGRvbid0IHVzZSBgIWltcG9ydGFudGAgb24gYHNpemVgIGFzIGl0IGJyZWFrcyBpbiBDaHJvbWUuXG4gICAgQHBhZ2Uge1xuICAgICAgc2l6ZTogJHByaW50LXBhZ2Utc2l6ZTtcbiAgICB9XG4gICAgYm9keSB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJsYWNrO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1kYXJrIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FvQ0pI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QUFDLENBQUM7SUFDSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFhO0lBQ3ZCLFNBQVMsRUFBRSxTQUFhO0dBQ3pCO0VEekJHLEFBQUEsWUFBWSxDQUFPO0lDTXZCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxTQUFTLEVBQUUsSUFBSTtHRE5WO0VBR0MsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBNEI7SUFJdEMsU0FBUyxFQUFFLFFBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENB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QUMsQ0FBQyxDQUFDLEdBQTRCO0lBSXRDLFNBQVMsRUFBRSxHQUE0QjtHREtoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDUDFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QjtHREtoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDUDFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QjtHREtoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDUDFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQTRCO0lBSXRDLFNBQVMsRUFBRSxHQUE0QjtHREtoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDUDFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QjtHREtoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDUDFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QjtHREtoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDUDFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQTRCO0lBSXRDLFNBQVMsRUFBRSxHQUE0QjtHREtoQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDUDFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QjtHREtoQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDUDFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QjtHREtoQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDUDFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQTRCO0lBSXRDLFNBQVMsRUFBRSxJQUE0QjtHREtoQztFQUdILEFBQUEsZUFBZSxDQUFPO0lBQUUsS0FBSyxFQUFFLEVBQUU7R0FBSTtFQUVyQyxBQUFBLGNBQWMsQ0FBTztJQUFFLEtBQUssRS9CNktKLEVBQUU7RytCN0tvQjtFQUc1QyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFdBQVcsQ0FBVztJQUFFLEtBQUssRUFEbEIsQ0FBQztHQUN5QjtFQUFyQyxBQUFBLFlBQVksQ0FBVTtJQUFFLEtBQUssRUFEbEIsRUFBQztHQUN5QjtFQUFyQyxBQUFBLFlBQVksQ0FBVTtJQUFFLEtBQUssRUFEbEIsRUFBQztHQUN5QjtFQUFyQyxBQUFBLFlBQVksQ0FBVTtJQUFFLEtBQUssRUFEbEIsRUFBQztHQUN5QjtFQU1uQyxBQUFBLFlBQVksQ0FBVztJQ1IvQixXQUFXLEVBQWdCLENBQUM7R0RVbkI7RUFGRCxBQUFBLFlBQVksQ0FBVztJQ1IvQixXQUFXLEVBQW1CLFFBQWdCO0dEVXJDO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNSL0IsV0FBVyxFQUFtQixTQUFnQjtHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFXO0lDUi9CLFdBQVcsRUFBbUIsR0FBZ0I7R0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBVztJQ1IvQixXQUFXLEVBQW1CLFNBQWdCO0dEVXJDO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNSL0IsV0FBVyxFQUFtQixTQUFnQjtHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFXO0lDUi9CLFdBQVcsRUFBbUIsR0FBZ0I7R0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBVztJQ1IvQixXQUFXLEVBQW1CLFNBQWdCO0dEVXJDO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNSL0IsV0FBVyxFQUFtQixTQUFnQjtHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFXO0lDUi9CLFdBQVcsRUFBbUIsR0FBZ0I7R0RVckM7RUFGRCxBQUFBLGFBQWEsQ0FBVTtJQ1IvQixXQUFXLEVBQW1CLFNBQWdCO0dEVXJDO0VBRkQsQUFBQSxhQUFhLENBQVU7SUNSL0IsV0FBVyxFQUFtQixTQUFnQjtHRFVyQzs7O0EzQkxQLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFMkI5QnRCLEFBQUEsT0FBTyxDQUFPO0lBQ1osVUFBVSxFQUFFLENBQUM7SUFDYixTQUFTLEVBQUUsQ0FBQztJQUNaLFNBQVMsRUFBRSxJQUFJO0dBQ2hCO0VBR0MsQUMyQk4sY0QzQm9CLEdDMkJoQixDQUFDLENBQUM7SUFDSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFhO0lBQ3ZCLFNBQVMsRUFBRSxJQUFhO0dBQ3pCO0VEOUJLLEFDMkJOLGNEM0JvQixHQzJCaEIsQ0FBQyxDQUFDO0lBQ0osSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBYTtJQUN2QixTQUFTLEVBQUUsR0FBYTtHQUN6QjtFRDlCSyxBQzJCTixjRDNCb0IsR0MyQmhCLENBQUMsQ0FBQztJQUNKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQWE7SUFDdkIsU0FBUyxFQUFFLFNBQWE7R0FDekI7RUQ5QkssQUMyQk4sY0QzQm9CLEdDMkJoQixDQUFDLENBQUM7SUFDSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFhO0lBQ3ZCLFNBQVMsRUFBRSxHQUFhO0dBQ3pCO0VEOUJLLEFDMkJOLGNEM0JvQixHQzJCaEIsQ0FBQyxDQUFDO0lBQ0osSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBYTtJQUN2QixTQUFTLEVBQUUsR0FBYTtHQUN6QjtFRDlCSyxBQzJCTixjRDNCb0IsR0MyQmhCLENBQUMsQ0FBQztJQUNKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQWE7SUFDdkIsU0FBUyxFQUFFLFNBQWE7R0FDekI7RUR6QkcsQUFBQSxZQUFZLENBQU87SUNNdkIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVBQUUsSUFBSTtJQUNYLFNBQVMsRUFBRSxJQUFJO0dETlY7RUFHQyxBQUFBLFNBQVMsQ0FBVztJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUE0QjtJQUl0QyxTQUFTLEVBQUUsUUFBNEI7R0RLaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEI7R0RLaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEI7R0RLaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEI7R0RLaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEI7R0RLaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEI7R0RLaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEI7R0RLaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEI7R0RLaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEI7R0RLaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEI7R0RLaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEI7R0RLaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ1AxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUE0QjtJQUl0QyxTQUFTLEVBQUUsSUFBNEI7R0RLaEM7RUFHSCxBQUFBLGVBQWUsQ0FBTztJQUFFLEtBQUssRUFBRSxFQUFFO0dBQUk7RUFFckMsQUFBQSxjQUFjLENBQU87SUFBRSxLQUFLLEUvQjZLSixFQUFFO0crQjdLb0I7RUFHNUMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUM7R0FDeUI7RUFBckMsQUFBQSxZQUFZLENBQVU7SUFBRSxLQUFLLEVBRGxCLEVBQUM7R0FDeUI7RUFBckMsQUFBQSxZQUFZLENBQVU7SUFBRSxLQUFLLEVBRGxCLEVBQUM7R0FDeUI7RUFBckMsQUFBQSxZQUFZLENBQVU7SUFBRSxLQUFLLEVBRGxCLEVBQUM7R0FDeUI7RUFNbkMsQUFBQSxZQUFZLENBQVc7SUNSL0IsV0FBVyxFQUFnQixDQUFDO0dEVW5CO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNSL0IsV0FBVyxFQUFtQixRQUFnQjtHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFXO0lDUi9CLFdBQVcsRUFBbUIsU0FBZ0I7R0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBVztJQ1IvQixXQUFXLEVBQW1CLEdBQWdCO0dEVXJDO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNSL0IsV0FBVyxFQUFtQixTQUFnQjtHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFXO0lDUi9CLFdBQVcsRUFBbUIsU0FBZ0I7R0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBVztJQ1IvQixXQUFXLEVBQW1CLEdBQWdCO0dEVXJDO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNSL0IsV0FBVyxFQUFtQixTQUFnQjtHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFXO0lDUi9CLFdBQVcsRUFBbUIsU0FBZ0I7R0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBVztJQ1IvQixXQUFXLEVBQW1CLEdBQWdCO0dEVXJDO0VBRkQsQUFBQSxhQUFhLENBQVU7SUNSL0IsV0FBVyxFQUFtQixTQUFnQjtHRFVyQztFQUZELEFBQUEsYUFBYSxDQUFVO0lDUi9CLFdBQVcsRUFBbUIsU0FBZ0I7R0RVckM7OztBM0JMUCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07RTJCOUJ2QixBQUFBLE9BQU8sQ0FBTztJQUNaLFVBQVUsRUFBRSxDQUFDO0lBQ2IsU0FBUyxFQUFFLENBQUM7SUFDWixTQUFTLEVBQUUsSUFBSTtHQUNoQjtFQUdDLEFDMkJOLGNEM0JvQixHQzJCaEIsQ0FBQyxDQUFDO0lBQ0osSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBYTtJQUN2QixTQUFTLEVBQUUsSUFBYTtHQUN6QjtFRDlCSyxBQzJCTixjRDNCb0IsR0MyQmhCLENBQUMsQ0FBQztJQUNKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQWE7SUFDdkIsU0FBUyxFQUFFLEdBQWE7R0FDekI7RUQ5QkssQUMyQk4sY0QzQm9CLEdDMkJoQixDQUFDLENBQUM7SUFDSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFhO0lBQ3ZCLFNBQVMsRUFBRSxTQUFhO0dBQ3pCO0VEOUJLLEFDMkJOLGNEM0JvQixHQzJCaEIsQ0FBQyxDQUFDO0lBQ0osSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBYTtJQUN2QixTQUFTLEVBQUUsR0FBYTtHQUN6QjtFRDlCSyxBQzJCTixjRDNCb0IsR0MyQmhCLENBQUMsQ0FBQztJQUNKLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQWE7SUFDdkIsU0FBUyxFQUFFLEdBQWE7R0FDekI7RUQ5QkssQUMyQk4sY0QzQm9CLEdDMkJoQixDQUFDLENBQUM7SUFDSixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFhO0lBQ3ZCLFNBQVMsRUFBRSxTQUFhO0dBQ3pCO0VEekJHLEFBQUEsWUFBWSxDQUFPO0lDTXZCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxTQUFTLEVBQUUsSUFBSTtHRE5WO0VBR0MsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBNEI7SUFJdEMsU0FBUyxFQUFFLFFBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCO0dES2hDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNQMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCO0dES2hDO0VBRkQs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 */
</pre></body></html>