@charset "UTF-8";

/* Overrides for Bootstrap 4: https://github.com/twbs/bootstrap-sass/blob/master/assets/stylesheets/bootstrap/_variables.scss */

/*!
 * Bootstrap v4.3.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: #0b3279;
  --indigo: #6610f2;
  --purple: #7F2BBE;
  --pink: #e83e8c;
  --red: #c8102e;
  --orange: #ff9015;
  --yellow: #BCCE4E;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #00367A;
  --secondary: #C8102E;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #BCCE4E;
  --danger: #c8102e;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xxs: 0;
  --breakpoint-xs: 320px;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: "Red Hat Display", sans-serif;
  --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(61, 61, 61, 0);
}

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

body {
  margin: 0;
  font-family: "Red Hat Display", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  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: #00367A;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #00142e;
  text-decoration: none;
}

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

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

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

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: #777777;
  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(61, 61, 61, 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\A0";
}

.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-break: break-word;
}

a > code {
  color: inherit;
}

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

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

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

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

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

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

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

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

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

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col,
.col-auto,
.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs,
.col-xs-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%;
}

.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: 320px) {
  .col-xs {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

  .order-xs-first {
    order: -1;
  }

  .order-xs-last {
    order: 13;
  }

  .order-xs-0 {
    order: 0;
  }

  .order-xs-1 {
    order: 1;
  }

  .order-xs-2 {
    order: 2;
  }

  .order-xs-3 {
    order: 3;
  }

  .order-xs-4 {
    order: 4;
  }

  .order-xs-5 {
    order: 5;
  }

  .order-xs-6 {
    order: 6;
  }

  .order-xs-7 {
    order: 7;
  }

  .order-xs-8 {
    order: 8;
  }

  .order-xs-9 {
    order: 9;
  }

  .order-xs-10 {
    order: 10;
  }

  .order-xs-11 {
    order: 11;
  }

  .order-xs-12 {
    order: 12;
  }

  .offset-xs-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

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

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

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

  .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(61, 61, 61, 0.05);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(48, 48, 48, 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: 319.98px) {
  .table-responsive-xs {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #006efa;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 54, 122, 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-top: 0.375rem;
  padding-bottom: 0.375rem;
  margin-bottom: 0;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}

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

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

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

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

textarea.form-control {
  height: auto;
}

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

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

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

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

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

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

.form-check-input:disabled ~ .form-check-label {
  color: #777777;
}

.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 .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' 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: center right calc(0.375em + 0.1875rem);
  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 .form-control:valid ~ .valid-feedback,
.was-validated .form-control:valid ~ .valid-tooltip,
.form-control.is-valid ~ .valid-feedback,
.form-control.is-valid ~ .valid-tooltip {
  display: block;
}

.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((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' 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' 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 .custom-select:valid ~ .valid-feedback,
.was-validated .custom-select:valid ~ .valid-tooltip,
.custom-select.is-valid ~ .valid-feedback,
.custom-select.is-valid ~ .valid-tooltip {
  display: block;
}

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

.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 ~ .valid-feedback,
.was-validated .custom-control-input:valid ~ .valid-tooltip,
.custom-control-input.is-valid ~ .valid-feedback,
.custom-control-input.is-valid ~ .valid-tooltip {
  display: block;
}

.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 ~ .valid-feedback,
.was-validated .custom-file-input:valid ~ .valid-tooltip,
.custom-file-input.is-valid ~ .valid-feedback,
.custom-file-input.is-valid ~ .valid-tooltip {
  display: block;
}

.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: #c8102e;
}

.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(200, 16, 46, 0.9);
  border-radius: 0.25rem;
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
  border-color: #c8102e;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23c8102e' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23c8102e' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  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: #c8102e;
  box-shadow: 0 0 0 0.2rem rgba(200, 16, 46, 0.25);
}

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

.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: #c8102e;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' 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' fill='%23c8102e' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23c8102e' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%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: #c8102e;
  box-shadow: 0 0 0 0.2rem rgba(200, 16, 46, 0.25);
}

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

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

.was-validated .form-check-input:invalid ~ .form-check-label,
.form-check-input.is-invalid ~ .form-check-label {
  color: #c8102e;
}

.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: #c8102e;
}

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

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

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

.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(200, 16, 46, 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: #c8102e;
}

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

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

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label,
.custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #c8102e;
  box-shadow: 0 0 0 0.2rem rgba(200, 16, 46, 0.25);
}

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

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

@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }

  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }

  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }

  .form-inline .form-control-plaintext {
    display: inline-block;
  }

  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto;
  }

  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }

  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }

  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }

  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

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

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

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

.btn:focus,
.btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 54, 122, 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: #00367A;
  border-color: #00367A;
}

.btn-primary:hover {
  color: #fff;
  background-color: #002554;
  border-color: #001f47;
}

.btn-primary:focus,
.btn-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 84, 142, 0.5);
}

.btn-primary.disabled,
.btn-primary:disabled {
  color: #fff;
  background-color: #00367A;
  border-color: #00367A;
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #001f47;
  border-color: #001a3a;
}

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

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

.btn-secondary:hover {
  color: #fff;
  background-color: #a50d26;
  border-color: #990c23;
}

.btn-secondary:focus,
.btn-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(208, 52, 77, 0.5);
}

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

.btn-secondary:not(:disabled):not(.disabled):active,
.btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #990c23;
  border-color: #8d0b20;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus,
.btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(208, 52, 77, 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 {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

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

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

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

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

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

.btn-info:focus,
.btn-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

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

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

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

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

.btn-warning:hover {
  color: #212529;
  background-color: #adc035;
  border-color: #a4b633;
}

.btn-warning:focus,
.btn-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(165, 181, 72, 0.5);
}

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

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

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

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

.btn-danger:hover {
  color: #fff;
  background-color: #a50d26;
  border-color: #990c23;
}

.btn-danger:focus,
.btn-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(208, 52, 77, 0.5);
}

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

.btn-danger:not(:disabled):not(.disabled):active,
.btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #990c23;
  border-color: #8d0b20;
}

.btn-danger:not(:disabled):not(.disabled):active:focus,
.btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(208, 52, 77, 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 {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

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

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

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

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

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

.btn-dark:focus,
.btn-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

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

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

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

.btn-outline-primary {
  color: #00367A;
  border-color: #00367A;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #00367A;
  border-color: #00367A;
}

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

.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
  color: #00367A;
  background-color: transparent;
}

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

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

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

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

.btn-outline-secondary:focus,
.btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 16, 46, 0.5);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.btn-outline-warning:focus,
.btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(188, 206, 78, 0.5);
}

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

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

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

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

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

.btn-outline-danger:focus,
.btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 16, 46, 0.5);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.btn-link:hover {
  color: #00142e;
  text-decoration: none;
}

.btn-link:focus,
.btn-link.focus {
  text-decoration: none;
  box-shadow: none;
}

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

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

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

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

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

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

.fade {
  transition: opacity 0.15s linear;
}

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

.fade:not(.show) {
  opacity: 0;
}

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

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

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

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

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

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

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

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

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

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

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

  .dropdown-menu-xs-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: #00367A;
}

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

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

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

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

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}

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

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

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

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

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

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

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

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

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

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

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

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

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

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

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

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

.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' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

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

.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' 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, 54, 122, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 54, 122, 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' 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, 54, 122, 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, 54, 122, 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: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' 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;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none;
}

.custom-select:focus {
  border-color: #006efa;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 54, 122, 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-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: #006efa;
  box-shadow: 0 0 0 0.2rem rgba(0, 54, 122, 0.25);
}

.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: calc(1rem + 0.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, 54, 122, 0.25);
}

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

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

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

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #00367A;
  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: #2e8aff;
}

.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: #00367A;
  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: #2e8aff;
}

.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: #00367A;
  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: #2e8aff;
}

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

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

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

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

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

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

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

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

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    transition: none;
  }
}

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

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

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

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

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

.nav-tabs .nav-item {
  margin-bottom: -1px;
}

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

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

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

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

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

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

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

.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 > .tab-pane {
  display: none;
}

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

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

.navbar > .container,
.navbar > .container-fluid {
  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: 319.98px) {
  .navbar-expand-xs > .container,
  .navbar-expand-xs > .container-fluid {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 320px) {
  .navbar-expand-xs {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }

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

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

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

  .navbar-expand-xs > .container,
  .navbar-expand-xs > .container-fluid {
    flex-wrap: nowrap;
  }

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

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

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

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }

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

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

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

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

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

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

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

@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }

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

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

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

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

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

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

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

@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }

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

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

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

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

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

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

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

@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }

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

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

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

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

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

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

.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid {
  padding-right: 0;
  padding-left: 0;
}

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

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

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

.navbar-expand > .container,
.navbar-expand > .container-fluid {
  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(61, 61, 61, 0.9);
}

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

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

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

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

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

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

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(61, 61, 61, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.card > .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;
  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(61, 61, 61, 0.03);
  border-bottom: 1px solid rgba(61, 61, 61, 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(61, 61, 61, 0.03);
  border-top: 1px solid rgba(61, 61, 61, 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 {
  width: 100%;
  border-radius: calc(0.25rem - 1px);
}

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

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

.card-deck {
  display: flex;
  flex-direction: column;
}

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

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

  .card-deck .card {
    display: flex;
    flex: 1 0 0%;
    flex-direction: column;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group {
  display: flex;
  flex-direction: column;
}

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

@media (min-width: 576px) {
  .card-group {
    flex-flow: row wrap;
  }

  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }

  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }

  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }

  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }

  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }

  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

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

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

  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion > .card {
  overflow: hidden;
}

.accordion > .card:not(:first-of-type) .card-header:first-child {
  border-radius: 0;
}

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

.accordion > .card:first-of-type {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.accordion > .card:last-of-type {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.accordion > .card .card-header {
  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: #00367A;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

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

.page-link:focus {
  z-index: 2;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 54, 122, 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: 1;
  color: #fff;
  background-color: #00367A;
  border-color: #00367A;
}

.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: #00367A;
}

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

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

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

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

a.badge-secondary:focus,
a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(200, 16, 46, 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: #BCCE4E;
}

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

a.badge-warning:focus,
a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(188, 206, 78, 0.5);
}

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

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

a.badge-danger:focus,
a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(200, 16, 46, 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: #1d395d;
  background-color: #ccd7e4;
  border-color: #b8c7da;
}

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

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

.alert-secondary {
  color: #852635;
  background-color: #f4cfd5;
  border-color: #f0bcc4;
}

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

.alert-secondary .alert-link {
  color: #5d1b25;
}

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

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

.alert-success .alert-link {
  color: #23502d;
}

.alert-info {
  color: #29727d;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}

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

.alert-info .alert-link {
  color: #1c4f57;
}

.alert-warning {
  color: #7f8846;
  background-color: #f2f5dc;
  border-color: #ecf1cd;
}

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

.alert-warning .alert-link {
  color: #606635;
}

.alert-danger {
  color: #852635;
  background-color: #f4cfd5;
  border-color: #f0bcc4;
}

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

.alert-danger .alert-link {
  color: #5d1b25;
}

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

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

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

.alert-dark {
  color: #383b3f;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}

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

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

@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;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #00367A;
  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;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid rgba(61, 61, 61, 0.125);
}

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

.list-group-item:last-child {
  margin-bottom: 0;
  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: #00367A;
  border-color: #00367A;
}

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

.list-group-horizontal .list-group-item {
  margin-right: -1px;
  margin-bottom: 0;
}

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

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

@media (min-width: 320px) {
  .list-group-horizontal-xs {
    flex-direction: row;
  }

  .list-group-horizontal-xs .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

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

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

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }

  .list-group-horizontal-sm .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

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

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

@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }

  .list-group-horizontal-md .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

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

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

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }

  .list-group-horizontal-lg .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

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

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

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }

  .list-group-horizontal-xl .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

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

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

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

.list-group-flush .list-group-item:last-child {
  margin-bottom: -1px;
}

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

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

.list-group-item-primary {
  color: #1d395d;
  background-color: #b8c7da;
}

.list-group-item-primary.list-group-item-action:hover,
.list-group-item-primary.list-group-item-action:focus {
  color: #1d395d;
  background-color: #a7bad1;
}

.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #1d395d;
  border-color: #1d395d;
}

.list-group-item-secondary {
  color: #852635;
  background-color: #f0bcc4;
}

.list-group-item-secondary.list-group-item-action:hover,
.list-group-item-secondary.list-group-item-action:focus {
  color: #852635;
  background-color: #eba7b2;
}

.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #852635;
  border-color: #852635;
}

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

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

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

.list-group-item-info {
  color: #29727d;
  background-color: #bee5eb;
}

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

.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #29727d;
  border-color: #29727d;
}

.list-group-item-warning {
  color: #7f8846;
  background-color: #ecf1cd;
}

.list-group-item-warning.list-group-item-action:hover,
.list-group-item-warning.list-group-item-action:focus {
  color: #7f8846;
  background-color: #e4ebb9;
}

.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #7f8846;
  border-color: #7f8846;
}

.list-group-item-danger {
  color: #852635;
  background-color: #f0bcc4;
}

.list-group-item-danger.list-group-item-action:hover,
.list-group-item-danger.list-group-item-action:focus {
  color: #852635;
  background-color: #eba7b2;
}

.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #852635;
  border-color: #852635;
}

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

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

.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #9e9f9f;
  border-color: #9e9f9f;
}

.list-group-item-dark {
  color: #383b3f;
  background-color: #c6c8ca;
}

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

.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #383b3f;
  border-color: #383b3f;
}

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

.close:hover {
  color: #3d3d3d;
  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(61, 61, 61, 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-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(61, 61, 61, 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: #3d3d3d;
}

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

.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;
  align-items: center;
  justify-content: flex-end;
  padding: 1rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.modal-footer > :not(:first-child) {
  margin-left: .25rem;
}

.modal-footer > :not(:last-child) {
  margin-right: .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: "Red Hat Display", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  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: #3d3d3d;
}

.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: #3d3d3d;
}

.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: #3d3d3d;
}

.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: #3d3d3d;
}

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

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: "Red Hat Display", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  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(61, 61, 61, 0.2);
  border-radius: 0.3rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.carousel {
  position: relative;
}

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

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

.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}

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

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

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

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

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: 0s 0.6s opacity;
}

@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' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%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' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-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: #00367A !important;
}

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

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

a.bg-secondary:hover,
a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #990c23 !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: #BCCE4E !important;
}

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

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

a.bg-danger:hover,
a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #990c23 !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: #00367A !important;
}

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

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

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

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

.border-danger {
  border-color: #c8102e !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: 320px) {
  .d-xs-none {
    display: none !important;
  }

  .d-xs-inline {
    display: inline !important;
  }

  .d-xs-inline-block {
    display: inline-block !important;
  }

  .d-xs-block {
    display: block !important;
  }

  .d-xs-table {
    display: table !important;
  }

  .d-xs-table-row {
    display: table-row !important;
  }

  .d-xs-table-cell {
    display: table-cell !important;
  }

  .d-xs-flex {
    display: flex !important;
  }

  .d-xs-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: 320px) {
  .flex-xs-row {
    flex-direction: row !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .align-self-xs-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: 320px) {
  .float-xs-left {
    float: left !important;
  }

  .float-xs-right {
    float: right !important;
  }

  .float-xs-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;
  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(61, 61, 61, 0.075) !important;
}

.shadow {
  box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(61, 61, 61, 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: 320px) {
  .m-xs-0 {
    margin: 0 !important;
  }

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

  .mr-xs-0,
  .mx-xs-0 {
    margin-right: 0 !important;
  }

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

  .ml-xs-0,
  .mx-xs-0 {
    margin-left: 0 !important;
  }

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

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

  .mr-xs-1,
  .mx-xs-1 {
    margin-right: 0.25rem !important;
  }

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

  .ml-xs-1,
  .mx-xs-1 {
    margin-left: 0.25rem !important;
  }

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

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

  .mr-xs-2,
  .mx-xs-2 {
    margin-right: 0.5rem !important;
  }

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

  .ml-xs-2,
  .mx-xs-2 {
    margin-left: 0.5rem !important;
  }

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

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

  .mr-xs-3,
  .mx-xs-3 {
    margin-right: 1rem !important;
  }

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

  .ml-xs-3,
  .mx-xs-3 {
    margin-left: 1rem !important;
  }

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

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

  .mr-xs-4,
  .mx-xs-4 {
    margin-right: 1.5rem !important;
  }

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

  .ml-xs-4,
  .mx-xs-4 {
    margin-left: 1.5rem !important;
  }

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

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

  .mr-xs-5,
  .mx-xs-5 {
    margin-right: 3rem !important;
  }

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

  .ml-xs-5,
  .mx-xs-5 {
    margin-left: 3rem !important;
  }

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

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

  .pr-xs-0,
  .px-xs-0 {
    padding-right: 0 !important;
  }

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

  .pl-xs-0,
  .px-xs-0 {
    padding-left: 0 !important;
  }

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

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

  .pr-xs-1,
  .px-xs-1 {
    padding-right: 0.25rem !important;
  }

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

  .pl-xs-1,
  .px-xs-1 {
    padding-left: 0.25rem !important;
  }

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

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

  .pr-xs-2,
  .px-xs-2 {
    padding-right: 0.5rem !important;
  }

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

  .pl-xs-2,
  .px-xs-2 {
    padding-left: 0.5rem !important;
  }

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

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

  .pr-xs-3,
  .px-xs-3 {
    padding-right: 1rem !important;
  }

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

  .pl-xs-3,
  .px-xs-3 {
    padding-left: 1rem !important;
  }

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

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

  .pr-xs-4,
  .px-xs-4 {
    padding-right: 1.5rem !important;
  }

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

  .pl-xs-4,
  .px-xs-4 {
    padding-left: 1.5rem !important;
  }

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

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

  .pr-xs-5,
  .px-xs-5 {
    padding-right: 3rem !important;
  }

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

  .pl-xs-5,
  .px-xs-5 {
    padding-left: 3rem !important;
  }

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

  .mt-xs-n1,
  .my-xs-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-xs-n1,
  .mx-xs-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-xs-n1,
  .my-xs-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-xs-n1,
  .mx-xs-n1 {
    margin-left: -0.25rem !important;
  }

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

  .mt-xs-n2,
  .my-xs-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-xs-n2,
  .mx-xs-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-xs-n2,
  .my-xs-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-xs-n2,
  .mx-xs-n2 {
    margin-left: -0.5rem !important;
  }

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

  .mt-xs-n3,
  .my-xs-n3 {
    margin-top: -1rem !important;
  }

  .mr-xs-n3,
  .mx-xs-n3 {
    margin-right: -1rem !important;
  }

  .mb-xs-n3,
  .my-xs-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-xs-n3,
  .mx-xs-n3 {
    margin-left: -1rem !important;
  }

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

  .mt-xs-n4,
  .my-xs-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-xs-n4,
  .mx-xs-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-xs-n4,
  .my-xs-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-xs-n4,
  .mx-xs-n4 {
    margin-left: -1.5rem !important;
  }

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

  .mt-xs-n5,
  .my-xs-n5 {
    margin-top: -3rem !important;
  }

  .mr-xs-n5,
  .mx-xs-n5 {
    margin-right: -3rem !important;
  }

  .mb-xs-n5,
  .my-xs-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-xs-n5,
  .mx-xs-n5 {
    margin-left: -3rem !important;
  }

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

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

  .mr-xs-auto,
  .mx-xs-auto {
    margin-right: auto !important;
  }

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

  .ml-xs-auto,
  .mx-xs-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: 320px) {
  .text-xs-left {
    text-align: left !important;
  }

  .text-xs-right {
    text-align: right !important;
  }

  .text-xs-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: #00367A !important;
}

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

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

a.text-secondary:hover,
a.text-secondary:focus {
  color: #810a1e !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: #BCCE4E !important;
}

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

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

a.text-danger:hover,
a.text-danger:focus {
  color: #810a1e !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: #777777 !important;
}

.text-black-50 {
  color: rgba(61, 61, 61, 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 #3d3d3d;
  }

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

/**
 * The complete material palette
 * ---
 * @access public
 * @type map
 * @group themes
 */

/**
 * Theme any css property based on the current palette, accepting a themable
 * value that will give an contrasted
 * ---
 * Usage example:
 *
 * $foo-palette: (
 *   primary: md-get-palette-color(indigo, 500),
 *   accent: md-get-palette-color(pink, 500),
 *   theme: "light"
 * );
 *
 * ---
 * @access public
 * ---
 * @param {color} $type —  The desired color based on material palette
 * @param {string} $type —  A valid hue
 */

/**
 * Get the current theme mode from the current theme
 * ---
 * Usage example:
 *
 * $theme-mode: md-get-theme-mode()
 *
 * ---
 * @access private
 */

/**
 * Theme any css property based on the current palette, accepting a themable
 * value that will give an contrasted
 * ---
 * Usage example:
 *
 * .md-foo {
 *   min-width: 88px;
 *   height: 40px;
 *   background: md-theme(primary);
 * }
 *
 * ---
 * @access public
 * ---
 * @param {string} $type —  The themable value
 */

/**
 * Get a color based on type by theme
 * ---
 * Usage example:
 *
 * $color: md-get-color-by-theme(dark, primary)
 *
 * ---
 * @access public
 * ---
 * @param {string} $color-theme —  The theme color | Accepts dark or light
 * @param {string} $type —  The color type
 */

/**
 * Get a color based on type only
 * ---
 * Usage example:
 *
 * $color1: md-get-color-by-type(background, dark)
 * $color1: md-get-color-by-type(accent)
 *
 * ---
 * @access public
 * ---
 * @param {string} $type —  The color type
 * @param {string} $theme —  The fallback theme
 */

/**
 * The default theme palette
 * primary: indigo 500 #3f51b5
 * accent: pink 500 #e91e63
 * theme: light
 *
 * It can be used just before importing the Vue Material stylesheet
 *
 * ---
 * @access public
 * @type colormap
 * @group themes
 */

/**
 * Temporary variable to store all themable values
 * ---
 * @access private
 * @type map
 * @group themes
 */

/**
 * Map variable to store all themes to be processed by each component
 * ---
 * @access private
 * @type map
 * @group themes
 */

/**
 * Store the current theme name
 * ---
 * @access private
 * @type string
 * @group themes
 */

/**
 * The color contrast values
 * ---
 * @access private
 * @type map
 * @group themes
 */

/**
 * Hightly based on: "Using Sass to automatically pick text colors"
 * https://medium.com/dev-channel/using-sass-to-automatically-pick-text-colors-4ba7645d2796
 */

/**
 * Precomputed linear color channel values, for use in contrast calculations.
 * See https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests
 * ---
 *
 *  Algorithm, for c in 0 to 255:
 *  f(c) {
 *    c = c / 255;
 *    return c < 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);
 *  }
 *
 *  This lookup table is needed since there is no `pow` in SASS.
 *
 * ---
 * @access private
 * @type Map
 * @group themes
 */

/**
 * Calculate the luminance for a color.
 * ---
 * @access private
 * ---
 * @param {string} $color —  The color to be analysed
 */

/**
 * Calculate the contrast ratio between two colors.
 * ---
 * @access private
 * ---
 * @param {string} $bg —  The bg color
 * @param {string} $fg —  The fg color to be compared
 */

/**
 * Determine whether to use dark or light text on top of given color.
 * Returns dark or light depending on the contrast ratio.
 * ---
 * @access private
 * ---
 * @param {string} $color —  The desired color to be compared
 */

/**
 * Override extending the default palette giving new values. It will extend
 * the default values of the palette if has a property missing.
 * ---
 * Usage example:
 *
 * @include md-override-palette ((
 *   accent: blue,
 *   theme: "dark"
 * ))
 *
 * ---
 * @access public
 * @param {map} $palette —  The new palette
 */

/**
 * Create a new theme based on a given palette. It will extend the default
 * values of the palette if has a property missing.
 * ---
 * Usage example:
 *
 * @include md-register-theme("alternative", (
 *   primary: #212121,
 *   accent: #CDDC39,
 *   theme: dark
 * ));
 *
 * ---
 * @access public
 * @param {string} $name —  The theme name to be used with the Vue Material
 * @param {map} $palette [$md-default-palette] —  The theme palette
 */

/**
 * Theme pieces of a given scss code for all pre registered themes.
 * ---
 * Usage example:
 *
 * .md-button {
 *   min-width: 88px;
 *   height: 40px;
 *   display: inline-block;
 *   border-radius: 2px;
 *   transition: .3s ease;
 *
 *   @include md-theme-component() {
 *     background: md-theme(primary);
 *     color: md-theme(text-primary);
 *   }
 *
 *   &.md-accent {
 *     @include md-theme-component() {
 *       background: md-theme(accent);
 *       color: md-theme(text-accent);
 *     };
 *   }
 * }
 */

/**
 * Theme pieces of a given scss code for all pre registered themes based on parent.
 * ---
 * Usage example:
 *
 * .md-foo {
 *   @include md-theme-component-relative() {
 *     @include md-theme-property(background, primary);
 *   }
 * }
 */

/**
 * Theme a single css property
 * ---
 * Usage example:
 *
 * .md-button {
 *   min-width: 88px;
 *   height: 40px;
 *   display: inline-block;
 *   border-radius: 2px;
 *   transition: .3s ease;
 *
 *   @include md-theme-component() {
 *     @include md-theme-property(background, primary);
 *     @include md-theme-property(color, text-primary, primary);
 *   }
 *
 *   &.md-accent {
 *     @include md-theme-component() {
 *       @include md-theme-property(background, accent);
 *       @include md-theme-property(color, text-primary, accent);
 *     }
 *   }
 * }
 *
 * ---
 * @access public
 * @param {string} $property —  The css property
 * @param {string} $type —  A palette type
 * @param {string} $background —  The background color to analyse contrast
 * @param {number} $opacity —  The opacity amount
 */

/**
 * Theme a single css property darkening the color by a certain amount
 * ---
 * Usage example:
 *
 * .md-button {
 *   min-width: 88px;
 *   height: 40px;
 *   display: inline-block;
 *   border-radius: 2px;
 *   transition: .3s ease;
 *
 *   @include md-theme-component() {
 *     @include md-theme-property-darken(background, primary, background, 10%);
 *     @include md-theme-property(color, text-primary, primary);
 *   }
 * }
 *
 * ---
 * @access public
 * @param {string} $property —  The css property
 * @param {string} $type —  A palette type
 * @param {string} $background —  The background color to analyse contrast
 * @param {string} $darken —  The darken amount to apply to the color
 */

/**
 * Theme a single css property by
 * ---
 * Usage example:
 *
 * .md-button {
 *   min-width: 88px;
 *   height: 40px;
 *   display: inline-block;
 *   border-radius: 2px;
 *   transition: .3s ease;
 *
 *   @include md-theme-component() {
 *     @include md-theme-property-by-hue(background, grey, 100, toolbar, background);
 *     @include md-theme-property(color, text-primary, background);
 *   }
 * }
 *
 * ---
 * @access public
 * @param {string} $property —  The css property
 * @param {string} $color —  A valid material palette color name
 * @param {string} $hue —  The hue amount to get the hex color
 * @param {string} $type —  The type of variable
 * @param {string} $variant —  The type of constrasted variable
 */

:root {
  --md-theme-default-primary: #00367A;
  --md-theme-default-accent: #C8102E;
  --md-theme-default-theme: light;
}

.md-theme-default :not(input):not(textarea)::selection {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent-on-background, #C8102E);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-theme-default a:not(.md-button) {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-theme-default a:not(.md-button):hover {
  color: rgba(0, 54, 122, 0.8);
  color: var(--md-theme-default-primary-on-background, rgba(0, 54, 122, 0.8));
}

.md-theme-default a:not(.md-button).md-accent {
  color: #C8102E;
  color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-theme-default a:not(.md-button).md-accent:hover {
  color: rgba(200, 16, 46, 0.8);
  color: var(--md-theme-default-accent-on-background, rgba(200, 16, 46, 0.8));
}

html.md-theme-default {
  background-color: #fafafa;
  background-color: var(--md-theme-default-background-variant, #fafafa);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));
}

.md-theme-default .md-caption,
.md-theme-default
.md-display-1,
.md-theme-default
.md-display-2,
.md-theme-default
.md-display-3,
.md-theme-default
.md-display-4 {
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-text-accent-on-background-variant, rgba(0, 0, 0, 0.54));
}

.md-scrollbar.md-theme-default::-webkit-scrollbar-corner,
.md-scrollbar.md-theme-default::-webkit-scrollbar-track {
  background: #e1e1e1;
  background: var(--md-theme-default-scrollbar-background-on-background-variant, #e1e1e1);
}

.md-scrollbar.md-theme-default::-webkit-scrollbar-thumb {
  background: #757575;
  background: var(--md-theme-default-scrollbar-on-background-variant, #757575);
}

.md-app:not(.md-overlap).md-theme-default {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
}

.md-list.md-theme-default .md-autocomplete-items .md-highlight-text-match {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-list.md-theme-default .md-autocomplete-loading {
  background-color: rgba(255, 255, 255, 0.54);
  background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.54));
}

.md-autocomplete.md-theme-default.md-autocomplete-box {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
}

.md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label {
  color: rgba(0, 0, 0, 0.38);
  color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));
}

.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box {
  background-color: rgba(255, 255, 255, 0.12);
  background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.12));
}

.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box label,
.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box input {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
  -webkit-text-fill-color: #fff;
  -webkit-text-fill-color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box svg {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
}

.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label,
.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused input {
  color: rgba(0, 0, 0, 0.38);
  color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));
  -webkit-text-fill-color: rgba(0, 0, 0, 0.38);
  -webkit-text-fill-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));
}

.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused svg {
  fill: rgba(0, 0, 0, 0.38);
  fill: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));
}

.md-autocomplete-box-content.md-theme-default:after {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  border-bottom-color: rgba(0, 0, 0, 0.12);
  border-bottom-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12));
}

.md-avatar.md-theme-default.md-avatar-icon {
  background-color: rgba(0, 0, 0, 0.38);
  background-color: var(--md-theme-default-icon-disabled, rgba(0, 0, 0, 0.38));
  color: #fff;
  color: var(--md-theme-default-text-primary-on-icon-disabled, #fff);
}

.md-avatar.md-theme-default.md-avatar-icon .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-icon-disabled, #fff);
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-icon-disabled, #fff);
}

.md-avatar.md-theme-default.md-primary {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-avatar.md-theme-default.md-primary.md-avatar-icon {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-avatar.md-theme-default.md-primary.md-avatar-icon .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-avatar.md-theme-default.md-accent {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-avatar.md-theme-default.md-accent.md-avatar-icon {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-avatar.md-theme-default.md-accent.md-avatar-icon .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-bottom-bar.md-theme-default.md-type-fixed {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
}

.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {
  fill: #00367A;
  fill: var(--md-theme-default-primary-on-background, #00367A);
}

.md-bottom-bar.md-theme-default.md-type-shift {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.7));
}

.md-bottom-bar.md-theme-default.md-type-shift > .md-ripple .md-ripple-wave {
  background-color: #001f47;
  background-color: var(--md-theme-default-primary-on-primary, #001f47);
}

.md-bottom-bar.md-theme-default.md-type-shift .md-icon {
  color: #fff;
  color: var(--md-theme-default-icon-on-primary, #fff);
}

.md-bottom-bar.md-theme-default.md-type-shift .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-icon-on-primary, #fff);
}

.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-fixed {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active {
  color: #C8102E;
  color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon {
  color: #C8102E;
  color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {
  fill: #C8102E;
  fill: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-shift {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.7));
}

.md-bottom-bar.md-theme-default.md-accent.md-type-shift > .md-ripple .md-ripple-wave {
  background-color: #990c23;
  background-color: var(--md-theme-default-accent-on-accent, #990c23);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon {
  color: #fff;
  color: var(--md-theme-default-icon-on-accent, #fff);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-icon-on-accent, #fff);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-button.md-theme-default {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-button.md-theme-default.md-primary {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-button.md-theme-default.md-primary .md-icon-font {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-button.md-theme-default.md-primary .md-icon-image {
  fill: #00367A;
  fill: var(--md-theme-default-primary-on-background, #00367A);
}

.md-button.md-theme-default.md-accent {
  color: #C8102E;
  color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-button.md-theme-default.md-accent .md-icon-font {
  color: #C8102E;
  color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-button.md-theme-default.md-accent .md-icon-image {
  fill: #C8102E;
  fill: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-button.md-theme-default.md-raised[disabled] {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12));
  color: rgba(0, 0, 0, 0.26);
  color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26));
}

.md-button.md-theme-default.md-raised:not([disabled]) {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-button.md-theme-default.md-raised:not([disabled]).md-primary {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-font {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-image {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-button.md-theme-default.md-raised:not([disabled]).md-accent {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-font {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-image {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-button.md-theme-default.md-fab[disabled] {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12));
}

.md-button.md-theme-default.md-fab:not([disabled]) {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-font {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-image {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-button.md-theme-default.md-fab:not([disabled]).md-primary {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-font {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-image {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-button.md-theme-default[disabled] {
  color: rgba(0, 0, 0, 0.26);
  color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));
}

.md-button.md-theme-default[disabled] .md-icon-font {
  color: rgba(0, 0, 0, 0.38);
  color: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38));
}

.md-button.md-theme-default[disabled] .md-icon-image {
  fill: rgba(0, 0, 0, 0.38);
  fill: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38));
}

.md-card.md-theme-default {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-card.md-theme-default .md-card-expand .md-card-actions {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
}

.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent),
.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent) {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,
.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54));
  fill: rgba(0, 0, 0, 0.54);
  fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54));
}

.md-card.md-theme-default > .md-card-area:after {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-card.md-theme-default.md-primary {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-card.md-theme-default.md-primary .md-card-expand .md-card-actions {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent),
.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent) {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,
.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {
  color: rgba(255, 255, 255, 0.54);
  color: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.54));
  fill: rgba(255, 255, 255, 0.54);
  fill: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.54));
}

.md-card.md-theme-default.md-primary > .md-card-area:after {
  background-color: rgba(255, 255, 255, 0.12);
  background-color: var(--md-theme-default-divider-on-primary, rgba(255, 255, 255, 0.12));
}

.md-card.md-theme-default.md-accent {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-card.md-theme-default.md-accent .md-card-expand .md-card-actions {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent),
.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent) {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,
.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {
  color: rgba(255, 255, 255, 0.54);
  color: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.54));
  fill: rgba(255, 255, 255, 0.54);
  fill: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.54));
}

.md-card.md-theme-default.md-accent > .md-card-area:after {
  background-color: rgba(255, 255, 255, 0.12);
  background-color: var(--md-theme-default-divider-on-accent, rgba(255, 255, 255, 0.12));
}

.md-checkbox.md-theme-default.md-checked .md-checkbox-container {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
  border-color: #C8102E;
  border-color: var(--md-theme-default-accent, #C8102E);
}

.md-checkbox.md-theme-default.md-checked .md-checkbox-container:after {
  border-color: #fff;
  border-color: var(--md-theme-default-background, #fff);
}

.md-checkbox.md-theme-default.md-checked .md-ripple {
  color: #C8102E;
  color: var(--md-theme-default-accent, #C8102E);
}

.md-checkbox.md-theme-default.md-indeterminate .md-checkbox-container {
  border-color: rgba(0, 0, 0, 0.54);
  background-color: rgba(255, 255, 255, 0.3);
}

.md-checkbox.md-theme-default.md-indeterminate .md-checkbox-container:after {
  border-color: rgba(0, 0, 0, 0.54);
}

.md-checkbox.md-theme-default.md-indeterminate .md-ripple {
  color: rgba(0, 0, 0, 0.54);
}

.md-checkbox.md-theme-default.md-checked.md-primary .md-checkbox-container {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
  border-color: #00367A;
  border-color: var(--md-theme-default-primary, #00367A);
}

.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple {
  color: #00367A;
  color: var(--md-theme-default-primary, #00367A);
}

.md-checkbox.md-theme-default.md-indeterminate .md-checkbox-container {
  border-color: rgba(0, 0, 0, 0.54);
  background-color: transparent;
}

.md-checkbox.md-theme-default.md-indeterminate .md-checkbox-container:after {
  border-color: rgba(0, 0, 0, 0.54);
}

.md-checkbox.md-theme-default.md-indeterminate .md-ripple {
  color: rgba(0, 0, 0, 0.54);
}

.md-checkbox.md-theme-default .md-checkbox-container {
  border-color: rgba(0, 0, 0, 0.54);
}

.md-checkbox.md-theme-default.md-disabled .md-checkbox-container {
  border-color: rgba(0, 0, 0, 0.26);
}

.md-checkbox.md-theme-default.md-disabled.md-checked .md-checkbox-container {
  border-color: rgba(0, 0, 0, 0.26);
  background-color: rgba(0, 0, 0, 0.26);
}

.md-chip.md-theme-default {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.12));
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary, rgba(0, 0, 0, 0.87));
}

.md-chip.md-theme-default .md-icon.md-icon-image svg {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-text-primary, #fff);
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-text-primary, #fff);
}

.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover,
.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover {
  background-color: rgba(0, 0, 0, 0.54);
  background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));
  color: #fff;
  color: var(--md-theme-default-text-primary-on-icon, #fff);
}

.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-icon,
.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-icon {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-icon, #fff);
}

.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action,
.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action {
  background-color: rgba(255, 255, 255, 0.87);
  background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));
}

.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action .md-icon svg,
.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action .md-icon svg {
  fill: rgba(0, 0, 0, 0.54);
  fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));
}

.md-chip.md-theme-default.md-primary {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-chip.md-theme-default.md-primary .md-input-action {
  color: #fff;
  color: var(--md-theme-default-icon-on-disabled, #fff);
  background-color: rgba(0, 0, 0, 0.26);
  background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26));
}

.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover,
.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-icon, #fff);
  background-color: rgba(0, 0, 0, 0.54);
  background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));
}

.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover .md-input-action,
.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover .md-input-action {
  background-color: rgba(255, 255, 255, 0.87);
  background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));
}

.md-chip.md-theme-default.md-accent,
.md-chip.md-theme-default.md-duplicated {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-chip.md-theme-default.md-accent .md-input-action,
.md-chip.md-theme-default.md-duplicated .md-input-action {
  color: #fff;
  color: var(--md-theme-default-icon-on-disabled, #fff);
  background-color: rgba(0, 0, 0, 0.26);
  background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26));
}

.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover,
.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover,
.md-chip.md-theme-default.md-duplicated.md-deletable:not(.md-disabled):hover,
.md-chip.md-theme-default.md-duplicated.md-clickable:not(.md-disabled):hover {
  background-color: rgba(0, 0, 0, 0.54);
  background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));
  color: #fff;
  color: var(--md-theme-default-text-primary-on-icon, #fff);
}

.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover .md-input-action,
.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover .md-input-action,
.md-chip.md-theme-default.md-duplicated.md-deletable:not(.md-disabled):hover .md-input-action,
.md-chip.md-theme-default.md-duplicated.md-clickable:not(.md-disabled):hover .md-input-action {
  background-color: rgba(255, 255, 255, 0.87);
  background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));
}

.md-chip.md-theme-default.md-disabled {
  background-color: rgba(0, 0, 0, 0.1);
  background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.1));
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-text-accent, rgba(0, 0, 0, 0.54));
}

.md-chips.md-theme-default .md-clear {
  background-color: rgba(0, 0, 0, 0.2);
}

.md-content.md-theme-default {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-content.md-theme-default.md-primary {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-content.md-theme-default.md-accent {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-app .md-content.md-theme-default {
  border-left-color: rgba(0, 0, 0, 0.12);
  border-left-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
  border-right-color: rgba(0, 0, 0, 0.12);
  border-right-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-datepicker-dialog.md-theme-default {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-datepicker-dialog.md-theme-default .md-datepicker-header {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:after,
.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:before {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
}

.md-datepicker-dialog.md-theme-default .md-datepicker-body-footer {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-datepicker-dialog.md-theme-default .md-datepicker-week {
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));
}

.md-datepicker-dialog.md-theme-default .md-datepicker-disabled {
  color: rgba(0, 0, 0, 0.26);
  color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));
}

.md-datepicker-dialog.md-theme-default .md-datepicker-today {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-datepicker-dialog.md-theme-default .md-datepicker-day-button:hover,
.md-datepicker-dialog.md-theme-default .md-datepicker-month-button:hover,
.md-datepicker-dialog.md-theme-default .md-datepicker-year-button:hover {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12));
}

.md-datepicker-dialog.md-theme-default .md-datepicker-day-button.md-datepicker-selected {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-datepicker-dialog.md-theme-default .md-datepicker-month-button.md-datepicker-selected,
.md-datepicker-dialog.md-theme-default .md-datepicker-year-button.md-datepicker-selected {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-datepicker-dialog.md-theme-default .md-datepicker-year-selector {
  border-bottom-color: rgba(0, 0, 0, 0.12);
  border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-dialog.md-theme-default {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-divider.md-theme-default {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12));
}

.md-drawer.md-theme-default {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-drawer.md-theme-default.md-persistent-mini.md-left {
  border-right-color: rgba(0, 0, 0, 0.12);
  border-right-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-drawer.md-theme-default.md-persistent-mini.md-right {
  border-left-color: rgba(0, 0, 0, 0.12);
  border-left-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-image svg {
  fill: rgba(0, 0, 0, 0.26);
  fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));
}

.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-font {
  color: rgba(0, 0, 0, 0.26);
  color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));
}

.md-empty-state.md-theme-default.md-rounded {
  background-color: rgba(0, 0, 0, 0.06);
  background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.06));
}

.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-image svg {
  fill: #00367A;
  fill: var(--md-theme-default-primary-on-background, #00367A);
}

.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg {
  fill: #C8102E;
  fill: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font {
  color: #C8102E;
  color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-field.md-theme-default:after {
  background-color: rgba(0, 0, 0, 0.42);
}

.md-field.md-theme-default:before {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-field.md-theme-default .md-helper-text,
.md-field.md-theme-default .md-count,
.md-field.md-theme-default label {
  color: rgba(0, 0, 0, 0.54);
}

.md-field.md-theme-default .md-suffix,
.md-field.md-theme-default .md-prefix {
  color: rgba(0, 0, 0, 0.54);
}

.md-field.md-theme-default .md-input::-webkit-input-placeholder,
.md-field.md-theme-default .md-textarea::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.54);
}

.md-field.md-theme-default.md-focused .md-input,
.md-field.md-theme-default.md-focused .md-textarea,
.md-field.md-theme-default.md-has-value .md-input,
.md-field.md-theme-default.md-has-value .md-textarea {
  -webkit-text-fill-color: rgba(0, 0, 0, 0.87);
}

.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):after {
  border-color: rgba(0, 0, 0, 0.42);
}

.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):before {
  border-color: #00367A;
  border-color: var(--md-theme-default-primary, #00367A);
}

.md-field.md-theme-default.md-disabled:after {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.38) 0%, rgba(0, 0, 0, 0.38) 33%, transparent 0%);
}

.md-field.md-theme-default.md-disabled label,
.md-field.md-theme-default.md-disabled .md-input,
.md-field.md-theme-default.md-disabled .md-textarea {
  color: rgba(0, 0, 0, 0.42);
}

.md-field.md-theme-default > .md-icon:after {
  background-color: #fafafa;
  background-color: var(--md-theme-default-background-variant, #fafafa);
}

.md-field.md-theme-default.md-invalid:after {
  background-color: #ff1744;
  background-color: var(--md-theme-default-fieldvariant, #ff1744);
}

.md-field.md-theme-default.md-invalid.md-has-textarea:not(.md-autogrow):before {
  border-color: #ff1744;
  border-color: var(--md-theme-default-fieldvariant, #ff1744);
}

.md-field.md-theme-default.md-invalid label {
  color: #ff1744;
  color: var(--md-theme-default-fieldvariant, #ff1744);
}

.md-field.md-theme-default.md-invalid .md-error {
  color: #ff1744;
  color: var(--md-theme-default-fieldvariant, #ff1744);
}

.md-field.md-theme-default.md-invalid .md-date-icon,
.md-field.md-theme-default.md-invalid .md-date-icon svg {
  color: #ff1744;
  color: var(--md-theme-default-fieldvariant, #ff1744);
  fill: #ff1744;
  fill: var(--md-theme-default-fieldvariant, #ff1744);
}

.md-field.md-theme-default.md-focused .md-input,
.md-field.md-theme-default.md-focused .md-textarea,
.md-field.md-theme-default.md-highlight .md-input,
.md-field.md-theme-default.md-highlight .md-textarea {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-field.md-theme-default.md-focused > .md-icon,
.md-field.md-theme-default.md-highlight > .md-icon {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
  fill: #00367A;
  fill: var(--md-theme-default-primary-on-background, #00367A);
}

.md-field.md-theme-default.md-focused label {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-field.md-theme-default.md-disabled .md-icon svg {
  fill: rgba(0, 0, 0, 0.26);
  fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));
}

.md-icon.md-theme-default.md-icon-image svg {
  fill: rgba(0, 0, 0, 0.54);
  fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));
}

.md-icon.md-theme-default.md-icon-image svg.md-primary {
  fill: #00367A;
  fill: var(--md-theme-default-primary-on-background, #00367A);
}

.md-icon.md-theme-default.md-icon-image svg.md-accent {
  fill: #C8102E;
  fill: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-icon.md-theme-default.md-icon-font {
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));
}

.md-icon.md-theme-default.md-icon-font.md-primary {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-icon.md-theme-default.md-icon-font.md-accent {
  color: #C8102E;
  color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-list.md-theme-default {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-list.md-theme-default.md-double-line .md-list-item-text :nth-child(2) {
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));
}

.md-list.md-theme-default.md-triple-line .md-list-item-text :nth-child(3) {
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));
}

.md-list.md-theme-default .md-highlight .md-list-item-container {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-list.md-theme-default .md-list-item-container {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-list.md-theme-default .md-list-item-container:not(.md-list-item-default):not([disabled]):hover {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-list.md-theme-default [disabled] {
  color: rgba(0, 0, 0, 0.26);
  color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));
}

.md-list.md-theme-default .md-selected .md-list-item-content,
.md-list.md-theme-default .router-link-exact-active .md-list-item-content {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-list.md-theme-default .md-list-item-expand.md-active {
  border-color: rgba(0, 0, 0, 0.12);
  border-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-menu-item.md-theme-default.md-primary .md-list-item-link,
.md-menu-item.md-theme-default.md-primary .md-list-item-router,
.md-menu-item.md-theme-default.md-primary .md-list-item-button {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-menu-item.md-theme-default.md-accent .md-list-item-link,
.md-menu-item.md-theme-default.md-accent .md-list-item-router,
.md-menu-item.md-theme-default.md-accent .md-list-item-button {
  color: #C8102E;
  color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-progress-bar.md-theme-default.md-indeterminate,
.md-progress-bar.md-theme-default.md-query {
  background-color: rgba(0, 54, 122, 0.38);
  background-color: var(--md-theme-default-primary-on-, rgba(0, 54, 122, 0.38));
}

.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-track:after,
.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-fill:after,
.md-progress-bar.md-theme-default.md-query .md-progress-bar-track:after,
.md-progress-bar.md-theme-default.md-query .md-progress-bar-fill:after {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-progress-bar.md-theme-default.md-indeterminate.md-accent,
.md-progress-bar.md-theme-default.md-query.md-accent {
  background-color: rgba(200, 16, 46, 0.38);
  background-color: var(--md-theme-default-accent-on-, rgba(200, 16, 46, 0.38));
}

.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-track:after,
.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-fill:after,
.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-track:after,
.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-fill:after {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-progress-bar.md-theme-default.md-determinate {
  background-color: rgba(0, 54, 122, 0.38);
  background-color: var(--md-theme-default-primary-on-, rgba(0, 54, 122, 0.38));
}

.md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-progress-bar.md-theme-default.md-determinate.md-accent {
  background-color: rgba(200, 16, 46, 0.38);
  background-color: var(--md-theme-default-accent-on-, rgba(200, 16, 46, 0.38));
}

.md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track {
  background-color: rgba(0, 54, 122, 0.38);
  background-color: var(--md-theme-default-primary-on-, rgba(0, 54, 122, 0.38));
}

.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer {
  border-color: rgba(0, 54, 122, 0.38);
  border-color: var(--md-theme-default-primary-on-, rgba(0, 54, 122, 0.38));
}

.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track {
  background-color: rgba(200, 16, 46, 0.38);
  background-color: var(--md-theme-default-accent-on-, rgba(200, 16, 46, 0.38));
}

.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer {
  border-color: rgba(200, 16, 46, 0.38);
  border-color: var(--md-theme-default-accent-on-, rgba(200, 16, 46, 0.38));
}

.md-progress-spinner.md-theme-default .md-progress-spinner-circle {
  stroke: #00367A;
  stroke: var(--md-theme-default-primary, #00367A);
}

.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle {
  stroke: #C8102E;
  stroke: var(--md-theme-default-accent, #C8102E);
}

.md-radio.md-theme-default.md-checked .md-radio-container {
  border-color: #C8102E;
  border-color: var(--md-theme-default-accent, #C8102E);
}

.md-radio.md-theme-default.md-checked .md-radio-container:after {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-radio.md-theme-default.md-checked .md-ripple {
  color: #C8102E;
  color: var(--md-theme-default-accent, #C8102E);
}

.md-radio.md-theme-default.md-checked.md-primary .md-radio-container {
  border-color: #00367A;
  border-color: var(--md-theme-default-primary, #00367A);
}

.md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-radio.md-theme-default.md-checked.md-primary .md-ripple {
  color: #00367A;
  color: var(--md-theme-default-primary, #00367A);
}

.md-radio.md-theme-default .md-radio-container {
  border-color: rgba(0, 0, 0, 0.54);
}

.md-radio.md-theme-default.md-disabled .md-radio-container {
  border-color: rgba(0, 0, 0, 0.26);
}

.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container {
  border-color: rgba(0, 0, 0, 0.26);
}

.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container:after {
  background-color: rgba(0, 0, 0, 0.26);
}

.md-snackbar.md-theme-default {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-text-primary, #fff);
  background-color: #323232;
}

.md-steppers.md-theme-default {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-steppers.md-theme-default .md-stepper-icon:after,
.md-steppers.md-theme-default .md-stepper-icon:before,
.md-steppers.md-theme-default .md-stepper-number:after,
.md-steppers.md-theme-default .md-stepper-number:before,
.md-steppers.md-theme-default .md-stepper:after,
.md-steppers.md-theme-default .md-stepper:before {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-steppers.md-theme-default .md-stepper-number {
  background-color: rgba(0, 0, 0, 0.38);
  background-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));
  color: #fff;
  color: var(--md-theme-default-text-primary-on-text-hint, #fff);
}

.md-steppers.md-theme-default .md-stepper-number svg {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-text-hint, #fff);
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-text-hint, #fff);
}

.md-steppers.md-theme-default .md-stepper-header .md-button-content {
  color: rgba(0, 0, 0, 0.38);
  color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));
}

.md-steppers.md-theme-default .md-stepper-header .md-button-content:after,
.md-steppers.md-theme-default .md-stepper-header .md-button-content:before {
  background-color: rgba(0, 0, 0, 0.12);
  background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-steppers.md-theme-default .md-stepper-header.md-active .md-button-content,
.md-steppers.md-theme-default .md-stepper-header.md-done .md-button-content {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number,
.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary-on-background, #00367A);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number svg,
.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number svg {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-steppers.md-theme-default .md-stepper-header.md-error .md-button-content {
  color: #ff1744;
  color: var(--md-theme-default-steppervariant, #ff1744);
}

.md-steppers.md-theme-default .md-stepper-header.md-error .md-icon svg {
  color: #ff1744;
  color: var(--md-theme-default-steppervariant, #ff1744);
  fill: #ff1744;
  fill: var(--md-theme-default-steppervariant, #ff1744);
}

.md-subheader.md-theme-default {
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));
}

.md-subheader.md-theme-default.md-primary {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-switch.md-theme-default.md-checked .md-switch-container {
  background-color: rgba(200, 16, 46, 0.38);
  background-color: var(--md-theme-default-accent-on-, rgba(200, 16, 46, 0.38));
}

.md-switch.md-theme-default.md-checked .md-switch-thumb {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-switch.md-theme-default.md-checked .md-ripple {
  color: #C8102E;
  color: var(--md-theme-default-accent, #C8102E);
}

.md-switch.md-theme-default.md-checked.md-primary .md-switch-container {
  background-color: rgba(0, 54, 122, 0.38);
  background-color: var(--md-theme-default-primary-on-, rgba(0, 54, 122, 0.38));
}

.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.md-switch.md-theme-default.md-checked.md-primary .md-ripple {
  color: #00367A;
  color: var(--md-theme-default-primary, #00367A);
}

.md-switch.md-theme-default .md-switch-container {
  background-color: rgba(0, 0, 0, 0.38);
}

.md-switch.md-theme-default .md-switch-thumb {
  background-color: #f5f5f5;
  background-color: var(--md-theme-default-switchvariant, #f5f5f5);
}

.md-switch.md-theme-default.md-disabled .md-switch-container {
  background-color: rgba(0, 0, 0, 0.12);
}

.md-switch.md-theme-default.md-disabled .md-switch-thumb {
  background-color: #bdbdbd;
  background-color: var(--md-theme-default-switchvariant, #bdbdbd);
}

.md-table.md-theme-default .md-table-content,
.md-table.md-theme-default .md-table-alternate-header {
  background-color: #fff;
  background-color: var(--md-theme-default-background, #fff);
}

.md-table.md-theme-default .md-table-alternate-header .md-table-toolbar {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
  background-color: rgba(200, 16, 46, 0.2);
  background-color: var(--md-theme-default-accent-on-, rgba(200, 16, 46, 0.2));
}

.md-table.md-theme-default .md-table-row:hover:not(.md-header-row) .md-table-cell {
  background-color: rgba(0, 0, 0, 0.08);
  background-color: var(--md-theme-default-highlight-on-background, rgba(0, 0, 0, 0.08));
}

.md-table.md-theme-default .md-table-row.md-selected,
.md-table.md-theme-default .md-table-row.md-selected-single {
  background-color: #f5f5f5;
  background-color: var(--md-theme-default-rowvariant, #f5f5f5);
}

.md-table.md-theme-default .md-table-row.md-selected.md-primary,
.md-table.md-theme-default .md-table-row.md-selected-single.md-primary {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary-on-background, #00367A);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-ripple,
.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-ripple {
  color: #fff;
}

.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container,
.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container {
  background-color: #fff;
  border-color: #fff;
}

.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container:after,
.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container:after {
  border-color: #00367A;
  border-color: var(--md-theme-default-primary, #00367A);
}

.md-table.md-theme-default .md-table-row.md-selected.md-accent,
.md-table.md-theme-default .md-table-row.md-selected-single.md-accent {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent-on-background, #C8102E);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-ripple,
.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-ripple {
  color: #fff;
}

.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container,
.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container {
  background-color: #fff;
  border-color: #fff;
}

.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container:after,
.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container:after {
  border-color: #C8102E;
  border-color: var(--md-theme-default-accent, #C8102E);
}

.md-table.md-theme-default .md-table-row td {
  border-top-color: rgba(0, 0, 0, 0.12);
  border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-table.md-theme-default .md-table-head {
  color: rgba(0, 0, 0, 0.54);
  color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));
}

.md-table.md-theme-default .md-table-fixed-header-active {
  border-bottom-color: rgba(0, 0, 0, 0.12);
  border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-table.md-theme-default .md-sortable:hover,
.md-table.md-theme-default .md-sortable.md-sorted {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-table.md-theme-default .md-sortable:hover svg,
.md-table.md-theme-default .md-sortable.md-sorted svg {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
  fill: rgba(0, 0, 0, 0.87);
  fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-table.md-theme-default .md-table-pagination {
  border-top-color: rgba(0, 0, 0, 0.12);
  border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));
}

.md-tabs.md-theme-default .md-tabs-navigation {
  background-color: #fff;
  background-color: var(--md-theme-default-background-on-background, #fff);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button {
  color: rgba(0, 0, 0, 0.7);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {
  color: rgba(0, 0, 0, 0.38);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38));
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {
  color: rgba(0, 0, 0, 0.7);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {
  fill: rgba(0, 0, 0, 0.7);
  fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {
  fill: #00367A;
  fill: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default .md-tabs-indicator {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {
  color: rgba(255, 255, 255, 0.38);
  color: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.38));
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {
  fill: rgba(255, 255, 255, 0.7);
  fill: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-tabs.md-theme-default.md-primary .md-tabs-indicator {
  background-color: #fff;
  background-color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {
  color: rgba(255, 255, 255, 0.38);
  color: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.38));
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {
  fill: rgba(255, 255, 255, 0.7);
  fill: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-tabs.md-theme-default.md-accent .md-tabs-indicator {
  background-color: #fff;
  background-color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-tabs.md-theme-default .md-tabs-navigation {
  background-color: #fff;
  background-color: var(--md-theme-default-background-on-background, #fff);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button {
  color: rgba(0, 0, 0, 0.7);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {
  color: rgba(0, 0, 0, 0.38);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38));
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {
  color: rgba(0, 0, 0, 0.7);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {
  fill: rgba(0, 0, 0, 0.7);
  fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {
  color: #00367A;
  color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {
  fill: #00367A;
  fill: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default .md-tabs-indicator {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary-on-background, #00367A);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {
  color: rgba(255, 255, 255, 0.38);
  color: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.38));
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {
  fill: rgba(255, 255, 255, 0.7);
  fill: var(--md-theme-default-text-primary-on-primary, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-tabs.md-theme-default.md-primary .md-tabs-indicator {
  background-color: #fff;
  background-color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent-on-background, #C8102E);
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {
  color: rgba(255, 255, 255, 0.38);
  color: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.38));
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {
  color: rgba(255, 255, 255, 0.7);
  color: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {
  fill: rgba(255, 255, 255, 0.7);
  fill: var(--md-theme-default-text-primary-on-accent, rgba(255, 255, 255, 0.7));
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-tabs.md-theme-default.md-accent .md-tabs-indicator {
  background-color: #fff;
  background-color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-toolbar.md-theme-default {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));
  background-color: #f5f5f5;
  background-color: var(--md-theme-default-toolbarvariant, #f5f5f5);
}

.md-toolbar.md-theme-default .md-icon {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));
}

.md-toolbar.md-theme-default .md-icon svg {
  fill: rgba(0, 0, 0, 0.87);
  fill: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));
}

.md-toolbar.md-theme-default .md-title,
.md-toolbar.md-theme-default .md-display-1,
.md-toolbar.md-theme-default .md-display-2 {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));
}

.md-toolbar.md-theme-default.md-primary {
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-toolbar.md-theme-default.md-primary .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-toolbar.md-theme-default.md-primary .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-toolbar.md-theme-default.md-primary .md-button:not([disabled]):not(.md-raised) {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-toolbar.md-theme-default.md-primary .md-title,
.md-toolbar.md-theme-default.md-primary .md-display-1,
.md-toolbar.md-theme-default.md-primary .md-display-2 {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-toolbar.md-theme-default.md-accent {
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-toolbar.md-theme-default.md-accent .md-icon {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-toolbar.md-theme-default.md-accent .md-icon svg {
  fill: #fff;
  fill: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-toolbar.md-theme-default.md-accent .md-button:not([disabled]):not(.md-raised) {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-toolbar.md-theme-default.md-accent .md-title,
.md-toolbar.md-theme-default.md-accent .md-display-1,
.md-toolbar.md-theme-default.md-accent .md-display-2 {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
}

.md-toolbar.md-theme-default.md-transparent {
  background-color: transparent;
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-toolbar.md-theme-default.md-transparent .md-icon {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-toolbar.md-theme-default.md-transparent .md-icon svg {
  fill: rgba(0, 0, 0, 0.87);
  fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-toolbar.md-theme-default.md-transparent .md-title,
.md-toolbar.md-theme-default.md-transparent .md-display-1,
.md-toolbar.md-theme-default.md-transparent .md-display-2 {
  color: rgba(0, 0, 0, 0.87);
  color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.md-tooltip.md-theme-default {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-tooltip, #fff);
  background-color: rgba(97, 97, 97, 0.9);
  background-color: var(--md-theme-default-tooltip-on-background, rgba(97, 97, 97, 0.9));
}

.md-badge.md-theme-default {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-accent, #fff);
  background-color: #C8102E;
  background-color: var(--md-theme-default-accent, #C8102E);
}

.md-badge.md-theme-default.md-primary {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
  background-color: #00367A;
  background-color: var(--md-theme-default-primary, #00367A);
}

.MicrosoftMap audio,
.MicrosoftMap canvas,
.MicrosoftMap embed,
.MicrosoftMap iframe,
.MicrosoftMap img,
.MicrosoftMap object,
.MicrosoftMap video {
  max-width: none;
}

.hu-color-picker {
  padding: 10px;
  background: #1d2024;
  border-radius: 4px;
  box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.16);
  z-index: 1;
}

.hu-color-picker.light {
  background: #f7f8f9;
}

.hu-color-picker.light .color-show .sucker {
  background: #eceef0;
}

.hu-color-picker.light .color-type .name {
  background: #e7e8e9;
}

.hu-color-picker.light .color-type .value {
  color: #666;
  background: #eceef0;
}

.hu-color-picker.light .colors.history {
  border-top: 1px solid #eee;
}

.hu-color-picker canvas {
  vertical-align: top;
}

.hu-color-picker .color-set {
  display: flex;
}

.hu-color-picker .color-show {
  margin-top: 8px;
  display: flex;
}

.hu-color-picker .color-alpha {
  position: relative;
  margin-left: 8px;
  cursor: pointer;
}

.hu-color-picker .color-alpha .slide {
  position: absolute;
  left: 0;
  top: 100px;
  width: 100%;
  height: 4px;
  background: #fff;
  box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.3);
  pointer-events: none;
}

.hu-color-picker .color-type {
  display: flex;
  margin-top: 8px;
  font-size: 12px;
}

.hu-color-picker .color-type .name {
  width: 60px;
  height: 30px;
  float: left;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #999;
  background: #252930;
}

.hu-color-picker .color-type .value {
  flex: 1;
  height: 30px;
  min-width: 100px;
  padding: 0 12px;
  border: 0;
  color: #fff;
  background: #2e333a;
  box-sizing: border-box;
}

.hu-color-picker .colors {
  padding: 0;
  margin: 0;
}

.hu-color-picker .colors.history {
  margin-top: 10px;
  border-top: 1px solid #2e333a;
}

.hu-color-picker .colors .item {
  position: relative;
  width: 16px;
  height: 16px;
  margin: 10px 0 0 10px;
  border-radius: 3px;
  box-sizing: border-box;
  vertical-align: top;
  display: inline-block;
  transition: all 0.1s;
  cursor: pointer;
}

.hu-color-picker .colors .item:nth-child(8n + 1) {
  margin-left: 0;
}

.hu-color-picker .colors .item:hover {
  transform: scale(1.4);
}

.hu-color-picker .colors .item .alpha {
  height: 100%;
  border-radius: 4px;
}

.hu-color-picker .colors .item .color {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 3px;
}

.hu-color-picker .hue {
  position: relative;
  margin-left: 8px;
  cursor: pointer;
}

.hu-color-picker .hue .slide {
  position: absolute;
  left: 0;
  top: 100px;
  width: 100%;
  height: 4px;
  background: #fff;
  box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.3);
  pointer-events: none;
}

.hu-color-picker .saturation {
  position: relative;
  cursor: pointer;
}

.hu-color-picker .saturation .slide {
  position: absolute;
  left: 100px;
  top: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid #fff;
  box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.3);
  pointer-events: none;
}

.hu-color-picker .sucker {
  width: 30px;
  fill: #9099a4;
  background: #2e333a;
  cursor: pointer;
  transition: all 0.3s;
}

.hu-color-picker .sucker:hover,
.hu-color-picker .sucker.active {
  fill: #1593ff;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAvcmVzb3VyY2VzL2Fzc2V0cy9zaGFyZWQvc2Fzcy92ZW5kb3Iuc2NzcyIsIi9hcHAvcmVzb3VyY2VzL2Fzc2V0cy9zaGFyZWQvc2Fzcy9fdmFyaWFibGVzLnNjc3MiLCIvYXBwL3Jlc291cmNlcy9hc3NldHMvY3VzdG9tL3Nhc3MvX2JyYW5kLXZhcmlhYmxlcy5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZnVuY3Rpb25zLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWl4aW5zLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19kZXByZWNhdGUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzaXplLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2l6ZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdmlzaWJpbGl0eS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm94LXNoYWRvdy5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zsb2F0LnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb2RlLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Zvcm1zLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b24tZ3JvdXAuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS1mb3Jtcy5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fanVtYm90cm9uLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b29sdGlwLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fc3Bpbm5lcnMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL191dGlsaXRpZXMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2NsZWFyZml4LnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJpbnQuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L3RoZW1lL2VuZ2luZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvdGhlbWUvcGFsZXR0ZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvdGhlbWUvZnVuY3Rpb25zLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS92YXJpYWJsZXMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L3RoZW1lL2NvbG9yLWNvbnRyYXN0LnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9taXhpbnMuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2Jhc2UvdGhlbWUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L3RoZW1lL2FsbC5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEFwcC90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEF1dG9jb21wbGV0ZS90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEF2YXRhci90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEJvdHRvbUJhci90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEJ1dHRvbi90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZENhcmQvdGhlbWUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRDaGVja2JveC90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZENoaXBzL3RoZW1lLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQ29udGVudC90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZERhdGVwaWNrZXIvdGhlbWUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWREaWFsb2cvdGhlbWUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWREaXZpZGVyL3RoZW1lLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kRHJhd2VyL3RoZW1lLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kRW1wdHlTdGF0ZS90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEZpZWxkL3RoZW1lLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kSWNvbi90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEltYWdlL3RoZW1lLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kTGlzdC90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZE1lbnUvdGhlbWUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRQcm9ncmVzcy90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFJhZGlvL3RoZW1lLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kU25hY2tiYXIvdGhlbWUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRTcGVlZERpYWwvdGhlbWUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRTdGVwcGVycy90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFN1YmhlYWRlci90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFN3aXRjaC90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFRhYmxlL3RoZW1lLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kVGFicy90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFRhYnMvdGhlbWUuc2NzcyIsIi9hcHAvbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRUb29sYmFyL3RoZW1lLnNjc3MiLCIvYXBwL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kVG9vbHRpcC90aGVtZS5zY3NzIiwiL2FwcC9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEJhZGdlL3RoZW1lLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIl92YXJpYWJsZXNcIjtcbkBpbXBvcnQgJ35ib290c3RyYXAvc2Nzcy9ib290c3RyYXAnO1xuLy9AaW1wb3J0IFwifmZvbnQtYXdlc29tZS9zY3NzL2ZvbnQtYXdlc29tZS5zY3NzXCI7XG5cbkBpbXBvcnQgXCJ+dnVlLW1hdGVyaWFsL2Rpc3QvdGhlbWUvZW5naW5lXCI7IC8vIEltcG9ydCB0aGUgdGhlbWUgZW5naW5lXG5cbkBpbmNsdWRlIG1kLXJlZ2lzdGVyLXRoZW1lKFwiZGVmYXVsdFwiLCAoXG4gICBwcmltYXJ5OiAkcHJpbWFyeSwgLy8gVGhlIHByaW1hcnkgY29sb3Igb2YgeW91ciBhcHBsaWNhdGlvblxuICAgYWNjZW50OiAkc2Vjb25kYXJ5LCAvLyBUaGUgYWNjZW50IG9yIHNlY29uZGFyeSBjb2xvclxuICAgdGhlbWU6IGxpZ2h0IC8vIFRoaXMgY2FuIGJlIGRhcmsgb3IgbGlnaHRcbikpO1xuXG5AaW1wb3J0IFwifnZ1ZS1tYXRlcmlhbC9kaXN0L3RoZW1lL2FsbFwiO1xuXG4vLyBGSVhFUyBDT01QQVRJQklMSVRZIEJFVFdFRU4gVlVFIE1BVEVSSUFMIENTUyBBTkQgQklORyBNQVBTXG4uTWljcm9zb2Z0TWFwIHtcbiAgIGF1ZGlvLCBjYW52YXMsIGVtYmVkLCBpZnJhbWUsIGltZywgb2JqZWN0LCB2aWRlbyB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICB9XG59XG5cbi8vIENvbG9yIHBpY2tlciBsaWJyYXJ5IGlzIG5vdCB1c2luZyBzY29wZWQgQ1NTLCBhbHNvIGZvciBzb21lIHJlYXNvbiB3ZWJwYWNrIGNvbmZpZyB3b24ndCB3b3JrIHdpdGggbGFuZz1zY3NzLCBzbyBJJ20gcHV0dGluZyBDU1MgaGVyZSBtYW51YWxseVxuLmh1LWNvbG9yLXBpY2tlciB7XG4gICBwYWRkaW5nOiAxMHB4O1xuICAgYmFja2dyb3VuZDogIzFkMjAyNDtcbiAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgIGJveC1zaGFkb3c6IDAgMCAxNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE2KTtcbiAgIHotaW5kZXg6IDE7XG4gICAmLmxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQ6ICNmN2Y4Zjk7XG4gICAgICAuY29sb3Itc2hvdyB7XG4gICAgICAgICAuc3Vja2VyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlY2VlZjA7XG4gICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29sb3ItdHlwZSB7XG4gICAgICAgICAubmFtZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTdlOGU5O1xuICAgICAgICAgfVxuICAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2VjZWVmMDtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb2xvcnMuaGlzdG9yeSB7XG4gICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VlZTtcbiAgICAgIH1cbiAgIH1cbiAgIGNhbnZhcyB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgfVxuICAgLmNvbG9yLXNldCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgfVxuICAgLmNvbG9yLXNob3cge1xuICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgIH1cbiAgIC5jb2xvci1hbHBoYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgLnNsaWRlIHtcbiAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICB0b3A6IDEwMHB4O1xuICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICBib3gtc2hhZG93OiAwIDAgMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB9XG4gICB9XG4gICAuY29sb3ItdHlwZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgLm5hbWUge1xuICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgIGJhY2tncm91bmQ6ICMyNTI5MzA7XG4gICAgICB9XG4gICAgICAudmFsdWUge1xuICAgICAgICAgZmxleDogMTtcbiAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgIG1pbi13aWR0aDogMTAwcHg7IC8vIOWPr+S7peiuqWZsZXjotbfkvZznlKhcbiAgICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgYmFja2dyb3VuZDogIzJlMzMzYTtcbiAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB9XG4gICB9XG4gICAuY29sb3JzIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICAmLmhpc3Rvcnkge1xuICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMmUzMzNhO1xuICAgICAgfVxuICAgICAgLml0ZW0ge1xuICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICBtYXJnaW46IDEwcHggMCAwIDEwcHg7XG4gICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzO1xuICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgJjpudGgtY2hpbGQoOG4gKyAxKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgIH1cbiAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuICAgICAgICAgfVxuICAgICAgICAgLmFscGhhIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgLy8g5aSn5LiA5YOP57Sg77yM5ZCm5YiZ5Zub5Liq6KeS5Lya55yL5Yiw55m954K5XG4gICAgICAgICB9XG4gICAgICAgICAuY29sb3Ige1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgfVxuICAgICAgfVxuICAgfVxuICAgLmh1ZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgLnNsaWRlIHtcbiAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICB0b3A6IDEwMHB4O1xuICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICBib3gtc2hhZG93OiAwIDAgMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB9XG4gICB9XG4gICAuc2F0dXJhdGlvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAuc2xpZGUge1xuICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgICB0b3A6IDA7XG4gICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgICBib3gtc2hhZG93OiAwIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cbiAgIH1cbiAgIC5zdWNrZXIge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBmaWxsOiAjOTA5OWE0O1xuICAgICAgYmFja2dyb3VuZDogIzJlMzMzYTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgJjpob3ZlcixcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgIGZpbGw6ICMxNTkzZmY7XG4gICAgICB9XG4gICB9XG59XG4iLCIvLyBCb290c3RyYXAgb3ZlcnJpZGVzXG4kYmx1ZTogIzIzOERCQztcbiRsaWdodC1ibHVlOiAjNDFiM2UwO1xuJG9yYW5nZTogI0U2OEQ0MjtcbiRvcmFuZ2UyOiAjQzQ3ODM4O1xuJHB1cnBsZTogIzdGMkJCRTtcbiRob3QtcGluazogI0NFNEVDRTtcbiRyZWQ6ICNGMDdBNzA7XG4kcmVhbC1yZWQ6ICNEOTMxMzE7XG4keWVsbG93OiAjQkNDRTRFO1xuJGJsYWNrOiAjM2QzZDNkO1xuJHRydWUtYmxhY2s6ICMwMDA7XG4kZ3JleS10ZXh0OiAjNzc3Nzc3O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogbm9uZTtcbiR0ZXh0LW11dGVkOiAkZ3JleS10ZXh0O1xuJGhlYWRpbmctZ3JleTogIzFhMWExYTtcbiR0b29sYmFyLWdyZXk6ICM2MjY0Njc7XG4kbW9kYWwtZ3JleTogIzMwMzIzNDtcbiRyaWNoLWJsYWNrOiAjMDAwO1xuJGdyZXktZ3JlZW46ICMzYjRiNWQ7XG4kd2hpdGU6ICNmZmY7XG4kYm9yZGVyLWdyZXk6ICNlNGU0ZTQ7XG4kY2hhcmNvYWwtZ3JleTogIzQxNDA0MjtcblxuLy8gQkhHUkVcbiRiaC1ncmVlbjogIzNmOTM0NTtcbiRiaC13aGl0ZTogI2ZmZjtcbiRiaC1ncmV5OiAjMzMzO1xuXG4vLyBFcmFcbiRlcC1saWdodC1ncmV5OiAjNjY3NDdlO1xuJGVwLXJlZC1ncmV5OiAjRDhEMkQ1O1xuJGVwLWxpZ2h0ZXItZ3JleTogI0VERUZGMjtcbiRlcC1saWdodC1ncmV5LWJsdWU6ICNmMWY0ZjY7XG4kZ3JleS1ibHVlOiAjYjZjNmQyO1xuJGxpZ2h0LWdyZXk6ICNlNmU3ZTg7XG4kbGlnaHQtZ3JleS1yZWQ6ICNiZmIyYjY7XG4kbGlnaHQtcHVycGxlLWdyZXk6ICNjNWMyZDE7XG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgbGF0bywgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xuJGZvbnQtZmFtaWx5LWxhdG8tc2VyaWY6ICBsYXRvLCBzZXJpZiAhaW1wb3J0YW50O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiBcIm11c2VvLXNsYWJcIiwgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LWxvZ286IGNvcnBvcmF0ZXMsIHNhbnMtc2VyaWY7XG5cbi8vIFNpdGUgVmFyaWFibGVzXG4kaGVhZGVyLWJhci1jb2xvcjogIzNEM0QzRDtcbiRoZWFkZXItY29sb3I6ICM1NTU7XG4kY29vbC1ncmV5OiAjNmI3NDdjO1xuJGJyb3duOiAjOTU3QzREO1xuXG4kZm9udC1mYW1pbHktbG9nbzogJGZvbnQtZmFtaWx5LXNlcmlmO1xuJGhlYWRlci1oZWlnaHQ6IDY1cHg7XG4kbWVkaWEtZ3JpZC1pdGVtLWhlaWdodDogMjAwcHg7XG5cbiRtb2RhbC1oZWFkZXItY29sb3I6ICM2MzY0Njc7XG4kYmFzZS1saW5lLWhlaWdodDogMS4yO1xuJGJveC1zaGFkb3c6IDAgMnB4IDRweCAtMXB4IHJnYmEoMCwwLDAsLjIpLCAwIDRweCA1cHggMCByZ2JhKDAsMCwwLC4xNCksIDAgMXB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XG5cbi8qIE92ZXJyaWRlcyBmb3IgQm9vdHN0cmFwIDQ6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC1zYXNzL2Jsb2IvbWFzdGVyL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzICovXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogMDtcblxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICAgICAgICB4eHM6IDAsXG4gICAgICAgIHhzOiAzMjBweCxcbiAgICAgICAgc206IDU3NnB4LFxuICAgICAgICBtZDogNzY4cHgsXG4gICAgICAgIGxnOiA5OTJweCxcbiAgICAgICAgeGw6IDEyMDBweFxuKTtcbiRzbTogNTc2cHg7XG4kc20tbWF4OiA3NjdweDtcbiRtZDogNzY4cHg7XG4kbWQtbWF4OiA5OTFweDtcbiRsZzogOTkycHg7XG4kbGctbWF4OiAxMTk5cHg7XG5cbi8vKioqQ29tcG9uZW50cyoqKi8vXG5cbi8vIFRlc3RpbW9uaWFsc1xuLy8gU2V0dXBTdGF0dXNcbiRzdGF0dXMtaWNvbi1ibG9jay1iZzogI2FmYWZhZjtcbiRzdGF0dXMtZGVzY3JpcHRpb24tYmxvY2stYmc6ICM3Nzc3Nzc7XG5cblxuLy8gT3ZlcnJpZGUgYW55IHZhcmlhYmxlcyBoZXJlIHdpdGggYnJhbmQgdmFyaWFibGVzXG4vL25vaW5zcGVjdGlvbiBDc3NVbmtub3duVGFyZ2V0IC0gSW50ZWxsaUogZG9lc24ndCByZWNvZ25pemUgd2VicGFjayBhbGlhc2VzXG5AaW1wb3J0ICd+Q3VzdG9tU2Fzcy9icmFuZC12YXJpYWJsZXMnO1xuIiwiJHByaW1hcnk6ICMwMDM2N0E7XG4kc2Vjb25kYXJ5OiAjQzgxMDJFO1xuJGJsdWU6ICMwYjMyNzk7XG4kbGlnaHQtYmx1ZTogIzQxYjNlMDtcbiRyZWQ6ICNjODEwMmU7XG4kb3JhbmdlOiAjZmY5MDE1O1xuXG4vLyBGb250c1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiUmVkIEhhdCBEaXNwbGF5XCIsIHNhbnMtc2VyaWY7XG4iLCIvKiFcbiAqIEJvb3RzdHJhcCB2NC4zLjEgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE5IFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAxOSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImlucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJzcGlubmVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuQGltcG9ydCBcInByaW50XCI7XG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBTdGFydHMgYXQgemVyb1xuLy8gVXNlZCB0byBlbnN1cmUgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwLCAkbWFwLW5hbWU6IFwiJGdyaWQtYnJlYWtwb2ludHNcIikge1xuICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAkZmlyc3QtdmFsdWU6IG50aCgkdmFsdWVzLCAxKTtcbiAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG5AZnVuY3Rpb24gY29sb3IteWlxKCRjb2xvciwgJGRhcms6ICR5aXEtdGV4dC1kYXJrLCAkbGlnaHQ6ICR5aXEtdGV4dC1saWdodCkge1xuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gICR5aXE6ICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpIC8gMTAwMDtcblxuICBAaWYgKCR5aXEgPj0gJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZCkge1xuICAgIEByZXR1cm4gJGRhcms7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJGxpZ2h0O1xuICB9XG59XG5cbi8vIFJldHJpZXZlIGNvbG9yIFNhc3MgbWFwc1xuQGZ1bmN0aW9uIGNvbG9yKCRrZXk6IFwiYmx1ZVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yKCRrZXk6IFwicHJpbWFyeVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIGdyYXkoJGtleTogXCIxMDBcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGdyYXlzLCAka2V5KTtcbn1cblxuLy8gUmVxdWVzdCBhIHRoZW1lIGNvbG9yIGxldmVsXG5AZnVuY3Rpb24gdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLW5hbWU6IFwicHJpbWFyeVwiLCAkbGV2ZWw6IDApIHtcbiAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XG4gICRjb2xvci1iYXNlOiBpZigkbGV2ZWwgPiAwLCAkYmxhY2ssICR3aGl0ZSk7XG4gICRsZXZlbDogYWJzKCRsZXZlbCk7XG5cbiAgQHJldHVybiBtaXgoJGNvbG9yLWJhc2UsICRjb2xvciwgJGxldmVsICogJHRoZW1lLWNvbG9yLWludGVydmFsKTtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApLFxuICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6IDI1JSxcbiAgICA1MDogNTAlLFxuICAgIDc1OiA3NSUsXG4gICAgMTAwOiAxMDAlLFxuICAgIGF1dG86IGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcbiRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2U6IDE1JSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIDFlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXkgKiAyfSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW19ICsgI3skaW5wdXQtcGFkZGluZy15fSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtfSArICN7JGlucHV0LXBhZGRpbmcteSAvIDJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQgKiAxZW19ICsgI3skaW5wdXQtcGFkZGluZy15ICogMn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodC1zbSAqIDFlbX0gKyAjeyRpbnB1dC1idG4tcGFkZGluZy15LXNtICogMn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbX0gKyAjeyRpbnB1dC1idG4tcGFkZGluZy15LWxnICogMn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDQnJTNlJTNjcGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgLyAyICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgY2FsYygjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZX0gLSAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNH0pICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDUnJTNlJTNjcGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgICRjdXN0b20tc2VsZWN0LWluZGljYXRvciBuby1yZXBlYXQgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogY2FsYygoMWVtICsgI3syICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15fSkgKiAzIC8gNCArICN7JGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmd9KSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nLTIgLTIgNyA3JyUzZSUzY3BhdGggc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIGQ9J00wIDBsMyAzbTAtM0wwIDMnLyUzZSUzY2NpcmNsZSByPScuNScvJTNlJTNjY2lyY2xlIGN4PSczJyByPScuNScvJTNlJTNjY2lyY2xlIGN5PSczJyByPScuNScvJTNlJTNjY2lyY2xlIGN4PSczJyBjeT0nMycgcj0nLjUnLyUzZSUzYy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuXG5cbi8vIE5hdmJhclxuXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3BhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIGNhbGMoI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c30gLSAjeyRkcm9wZG93bi1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBjYWxjKCN7JGNhcmQtYm9yZGVyLXJhZGl1c30gLSAjeyRjYXJkLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNS0yLjUtMi41IDIuNS0yLjUtMS41LTEuNXonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBkPSdNMi43NSAwbC0xLjUgMS41IDIuNSAyLjUtMi41IDIuNSAxLjUgMS41IDQtNC00LTR6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIFNwaW5uZXJzXG5cbiRzcGlubmVyLXdpZHRoOiAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBVdGlsaXRpZXNcblxuJGRpc3BsYXlzOiBub25lLCBpbmxpbmUsIGlubGluZS1ibG9jaywgYmxvY2ssIHRhYmxlLCB0YWJsZS1yb3csIHRhYmxlLWNlbGwsIGZsZXgsIGlubGluZS1mbGV4ICFkZWZhdWx0O1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gVG9nZ2xlc1xuLy9cbi8vIFVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBnbG9iYWwgdmFyaWFibGVzIHRvIGVuYWJsZSBjZXJ0YWluIHRoZW1lIGZlYXR1cmVzLlxuXG4vLyBWZW5kb3JcbkBpbXBvcnQgXCJ2ZW5kb3IvcmZzXCI7XG5cbi8vIERlcHJlY2F0ZVxuQGltcG9ydCBcIm1peGlucy9kZXByZWNhdGVcIjtcblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2hvdmVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JhZGdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9zY3JlZW4tcmVhZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtaGlkZVwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Zpc2liaWxpdHlcIjtcblxuLy8gLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydFwiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NhcmV0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcblxuLy8gLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm94LXNoYWRvd1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdHJhbnNpdGlvblwiO1xuXG4vLyAvLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuQGltcG9ydCBcIm1peGlucy9mbG9hdFwiO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIGZvbnQtcmVzaXppbmdcbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgZm9udC1zaXplIHN0YXJ0cyBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuLy8gUmVzaXplIGZvbnQtc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInJlbVwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInB4XCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQtc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFZhcmlhYmxlcyBmb3Igc3RvcmluZyBzdGF0aWMgYW5kIGZsdWlkIHJlc2NhbGluZ1xuICAgICRyZnMtc3RhdGljOiBudWxsO1xuICAgICRyZnMtZmx1aWQ6IG51bGw7XG5cbiAgICAvLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRmcyBmb3IgY2FsY3VsYXRpb25zXG4gICAgQGlmICRmcy11bml0ID09IFwicHhcIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSk7XG4gICAgfVxuICAgIEBlbHNlIGlmICRmcy11bml0ID09IFwicmVtXCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGRlZmF1bHQgZm9udC1zaXplXG4gICAgQGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtIHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmcyAvICRyZnMtcmVtLXZhbHVlfXJlbSN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHB4IHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmc31weCN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAZXJyb3IgXCJgI3skcmZzLWZvbnQtc2l6ZS11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1mb250LXNpemUtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG4gICAgfVxuXG4gICAgLy8gT25seSBhZGQgbWVkaWEgcXVlcnkgaWYgZm9udC1zaXplIGlzIGJpZ2dlciBhcyB0aGUgbWluaW11bSBmb250LXNpemVcbiAgICAvLyBJZiAkcmZzLWZhY3RvciA9PSAxLCBubyByZXNjYWxpbmcgd2lsbCB0YWtlIHBsYWNlXG4gICAgQGlmICRmcyA+ICRyZnMtYmFzZS1mb250LXNpemUgYW5kICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgICRtaW4td2lkdGg6IG51bGw7XG4gICAgICAkdmFyaWFibGUtdW5pdDogbnVsbDtcblxuICAgICAgLy8gQ2FsY3VsYXRlIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1taW46ICRyZnMtYmFzZS1mb250LXNpemUgKyAoJGZzIC0gJHJmcy1iYXNlLWZvbnQtc2l6ZSkgLyAkcmZzLWZhY3RvcjtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiBnaXZlbiBmb250LXNpemUgYW5kIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1kaWZmOiAkZnMgLSAkZnMtbWluO1xuXG4gICAgICAvLyBCYXNlIGZvbnQtc2l6ZSBmb3JtYXR0aW5nXG4gICAgICAvLyBObyBuZWVkIHRvIGNoZWNrIGlmIHRoZSB1bml0IGlzIHZhbGlkLCBiZWNhdXNlIHdlIGRpZCB0aGF0IGJlZm9yZVxuICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7JGZzLW1pbiAvICRyZnMtcmVtLXZhbHVlfXJlbSwgI3skZnMtbWlufXB4KTtcblxuICAgICAgLy8gSWYgdHdvLWRpbWVuc2lvbmFsLCB1c2Ugc21hbGxlc3Qgb2Ygc2NyZWVuIHdpZHRoIGFuZCBoZWlnaHRcbiAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAkdmFyaWFibGUtd2lkdGg6ICN7JGZzLWRpZmYgKiAxMDAgLyAkcmZzLWJyZWFrcG9pbnR9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgIC8vIFNldCB0aGUgY2FsY3VsYXRlZCBmb250LXNpemUuXG4gICAgICAkcmZzLWZsdWlkOiBjYWxjKCN7JG1pbi13aWR0aH0gKyAjeyR2YXJpYWJsZS13aWR0aH0pICN7JHJmcy1zdWZmaXh9O1xuICAgIH1cblxuICAgIC8vIFJlbmRlcmluZ1xuICAgIEBpZiAkcmZzLWZsdWlkID09IG51bGwge1xuICAgICAgLy8gT25seSByZW5kZXIgc3RhdGljIGZvbnQtc2l6ZSBpZiBubyBmbHVpZCBmb250LXNpemUgaXMgYXZhaWxhYmxlXG4gICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkbXEtdmFsdWU6IG51bGw7XG5cbiAgICAgIC8vIFJGUyBicmVha3BvaW50IGZvcm1hdHRpbmdcbiAgICAgIEBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSByZW0ge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50IC8gJHJmcy1yZW0tdmFsdWV9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH07XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnR9cHg7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImRpc2FibGVcIiB7XG4gICAgICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksXG4gICAgICAgIC8vIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXG4gICAgICAgICYsXG4gICAgICAgIC5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSwgKG1heC1oZWlnaHQ6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIGZvbnQtc2l6ZSAmIHJlc3BvbnNpdmUtZm9udC1zaXplIG1peGluIHVzZXMgUkZTIHRvIHJlc2NhbGUgZm9udCBzaXplc1xuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cbiIsIi8vIERlcHJlY2F0ZSBtaXhpblxuLy9cbi8vIFRoaXMgbWl4aW4gY2FuIGJlIHVzZWQgdG8gZGVwcmVjYXRlIG1peGlucyBvciBmdW5jdGlvbnMuXG4vLyBgJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlc2AgaXMgYSBnbG9iYWwgdmFyaWFibGUsIGAkaWdub3JlLXdhcm5pbmdgIGlzIGEgdmFyaWFibGUgdGhhdCBjYW4gYmUgcGFzc2VkIHRvXG4vLyBzb21lIGRlcHJlY2F0ZWQgbWl4aW5zIHRvIHN1cHByZXNzIHRoZSB3YXJuaW5nIChmb3IgZXhhbXBsZSBpZiB0aGUgbWl4aW4gaXMgc3RpbGwgYmUgdXNlZCBpbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIEJvb3RzdHJhcClcbkBtaXhpbiBkZXByZWNhdGUoJG5hbWUsICRkZXByZWNhdGUtdmVyc2lvbiwgJHJlbW92ZS12ZXJzaW9uLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIEBpZiAoJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlcyAhPSBmYWxzZSBhbmQgJGlnbm9yZS13YXJuaW5nICE9IHRydWUpIHtcbiAgICBAd2FybiBcIiN7JG5hbWV9IGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgI3skZGVwcmVjYXRlLXZlcnNpb259LiBJdCB3aWxsIGJlIHJlbW92ZWQgZW50aXJlbHkgaW4gI3skcmVtb3ZlLXZlcnNpb259LlwiO1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gICAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHsgLy8gU3RhbmRhcmRpemVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbWctcmV0aW5hKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCJAbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHNpemUoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBWaXNpYmlsaXR5XG5cbkBtaXhpbiBpbnZpc2libGUoJHZpc2liaWxpdHkpIHtcbiAgdmlzaWJpbGl0eTogJHZpc2liaWxpdHkgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGludmlzaWJsZSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yLCAkY29sb3ItaG92ZXI6IGNvbG9yLXlpcSgkY29sb3IpLCAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvciwgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4iLCJAbWl4aW4gY2FyZXQtZG93biB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0IHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bjtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICRuYXYtZGl2aWRlci1jb2xvciwgJG1hcmdpbi15OiAkbmF2LWRpdmlkZXItbWFyZ2luLXkpIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICRtYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoKSB7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRpY29uO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLCAkaWNvbiAkY3VzdG9tLXNlbGVjdC1iZyBuby1yZXBlYXQgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAuZm9ybS1jb250cm9sLWZpbGUge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICBAaWYgJGJvcmRlciAhPSBudWxsIHtcbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuIiwiQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAkcmVzdWx0OiAoKTtcblxuICAgIEBpZiAobGVuZ3RoKCRzaGFkb3cpID09IDEpIHtcbiAgICAgIC8vIFdlIGNhbiBwYXNzIGBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO2BcbiAgICAgICRyZXN1bHQ6ICRzaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBGaWx0ZXIgdG8gYXZvaWQgaW52YWxpZCBwcm9wZXJ0aWVzIGZvciBleGFtcGxlIGBib3gtc2hhZG93OiBub25lLCAxcHggMXB4IGJsYWNrO2BcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRzaGFkb3cpIHtcbiAgICAgICAgQGlmIG50aCgkc2hhZG93LCAkaSkgIT0gXCJub25lXCIge1xuICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJHNoYWRvdywgJGkpLCBcImNvbW1hXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAobGVuZ3RoKCRyZXN1bHQpID4gMCkge1xuICAgICAgYm94LXNoYWRvdzogJHJlc3VsdDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICB9XG4gICAgfVxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgLyAyO1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06ICRzaXplIC8gJGNvbHVtbnM7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBtaXhpbiBmbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1sZWZ0YCBtaXhpblwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuQG1peGluIGZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtcmlnaHRgIG1peGluXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG5AbWl4aW4gZmxvYXQtbm9uZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtbm9uZWAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtbm8tdmVuZG9yLXByZWZpeCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxufVxuXG4vLyBTdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZSBvbiBlbGVtZW50cyB0aGF0IGNhbm5vdCBiZSBhY2Nlc3NlZCB2aWEga2V5Ym9hcmQuXG4vLyBUaGlzIHByZXZlbnRzIGFuIHVud2FudGVkIGZvY3VzIG91dGxpbmUgZnJvbSBhcHBlYXJpbmcgYXJvdW5kIGVsZW1lbnRzIHRoYXRcbi8vIG1pZ2h0IHN0aWxsIHJlc3BvbmQgdG8gcG9pbnRlciBldmVudHMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDVcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKVxuLy8gd2hpY2ggaGF2ZSBub3QgYmVlbiBtYWRlIGV4cGxpY2l0bHkga2V5Ym9hcmQtZm9jdXNhYmxlICh3aXRob3V0IHRhYmluZGV4KS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG5wcmUge1xuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbiAgbWFyZ2luLXRvcDogMDtcbiAgLy8gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxudGgge1xuICAvLyBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGZyb20gdGhlIGA8Ym9keT5gLCBvciB0aGVcbiAgLy8gY2xvc2VzdCBwYXJlbnQgd2l0aCBhIHNldCBgdGV4dC1hbGlnbmAuXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gV29yayBhcm91bmQgYSBGaXJlZm94L0lFIGJ1ZyB3aGVyZSB0aGUgdHJhbnNwYXJlbnQgYGJ1dHRvbmAgYmFja2dyb3VuZFxuLy8gcmVzdWx0cyBpbiBhIGxvc3Mgb2YgdGhlIGRlZmF1bHQgYGJ1dHRvbmAgZm9jdXMgc3R5bGVzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZS9cbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQ7XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2Vcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cbkBpZiAkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zIHtcbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtXG4gIHBhZGRpbmc6IDA7IC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC1cbn1cblxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGFwcGVhcmFuY2Ugb2YgdGVtcG9yYWwgaW5wdXRzIHRvIGF2b2lkIGEgTW9iaWxlIFNhZmFyaVxuICAvLyBidWcgd2hlcmUgc2V0dGluZyBhIGN1c3RvbSBsaW5lLWhlaWdodCBwcmV2ZW50cyB0ZXh0IGZyb20gYmVpbmcgdmVydGljYWxseVxuICAvLyBjZW50ZXJlZCB3aXRoaW4gdGhlIGlucHV0LlxuICAvLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxuICAvLyBhbmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTI2NlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGxpc3Rib3g7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy9cbi8vIEhlYWRpbmdzXG4vL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSwgLmgxIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpOyB9XG5oMiwgLmgyIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpOyB9XG5oMywgLmgzIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpOyB9XG5oNCwgLmg0IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpOyB9XG5oNSwgLmg1IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpOyB9XG5oNiwgLmg2IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpOyB9XG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbi5kaXNwbGF5LTEge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkxLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0zIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5My1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXk0LXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG4vL1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRoci1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGhyLW1hcmdpbi15O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQgJGhyLWJvcmRlci1jb2xvcjtcbn1cblxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG59XG5cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgLyAyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGtiZC1ib3gtc2hhZG93KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDEwMCUpO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAuY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoKTtcbiAgfVxufVxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRoIDEwMCUgd2lkdGggZm9yXG4vLyBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG59XG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7IC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgY29sb3I6ICR0YWJsZS1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1ob3Zlci1iZztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJvcmRlci1sZXZlbCkpO1xufVxuXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsICR0YWJsZS1hY3RpdmUtYmcpO1xuXG5cbi8vIERhcmsgc3R5bGVzXG4vL1xuLy8gU2FtZSB0YWJsZSBtYXJrdXAsIGJ1dCBpbnZlcnRlZCBjb2xvciBzY2hlbWU6IGRhcmsgYmFja2dyb3VuZCBhbmQgbGlnaHQgdGV4dC5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi50YWJsZSB7XG4gIC50aGVhZC1kYXJrIHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC50aGVhZC1saWdodCB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1oZWFkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1kYXJrIHtcbiAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcblxuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoIHtcbiAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCB7XG4gICAgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICBjb2xvcjogJHRhYmxlLWRhcmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgICAgIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlciBvbiBob3Jpem9udGFsIHNjcm9sbCBkdWUgdG8gdXNlIG9mIGBkaXNwbGF5OiBibG9jaztgXG4gICAgICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXl9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktbGd9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1sZ30gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktc219ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1zbX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xufVxuXG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogJGlucHV0LXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRpbnB1dC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICZbc2l6ZV0sXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG59XG5cblxuLy8gRm9ybSBncmlkXG4vL1xuLy8gU3BlY2lhbCByZXBsYWNlbWVudCBmb3Igb3VyIGdyaWQgc3lzdGVtJ3MgYC5yb3dgIGZvciB0aWdodGVyIGZvcm0gbGF5b3V0cy5cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuXG4gID4gLmNvbCxcbiAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLmZvcm0tY2hlY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcblxuICAmOmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgYmFzZSAuZm9ybS1jaGVja1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcblxuICAvLyBVbmRvIC5mb3JtLWNoZWNrLWlucHV0IGRlZmF1bHRzIGFuZCBhZGQgc29tZSBgbWFyZ2luLXJpZ2h0YC5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkYnRuLWZvbnQtc2l6ZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tbGluZS1oZWlnaHQtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XG4gIH1cbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG59XG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tc3BhY2VyIDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1sZWZ0IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1yaWdodCB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcHJpZ2h0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChyaWdodCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wbGVmdCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGxlZnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiBlbmFibGVkIFBvcHBlci5qcywgcmVzZXQgYmFzaWMgZHJvcGRvd24gcG9zaXRpb25cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uZHJvcGRvd24tbWVudSB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gIH1cbn1cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcsICRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15KTtcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICAvLyBQcmV2ZW50IGRyb3Bkb3duIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3ByaWdodCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIC8vIEFkZCB3aWR0aCAxJSBhbmQgZmxleC1iYXNpcyBhdXRvIHRvIGVuc3VyZSB0aGF0IGJ1dHRvbiB3aWxsIG5vdCB3cmFwIG91dFxuICAgIC8vIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUgRWRnZSsgYW5kIEZpcmVmb3guIENocm9tZSBkb2VzIG5vdCByZXF1aXJlIHRoaXMuXG4gICAgd2lkdGg6IDElO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5jdXN0b20tc2VsZWN0OmZvY3VzLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gIC8vIEN1c3RvbSBmaWxlIGlucHV0cyBoYXZlIG1vcmUgY29tcGxleCBtYXJrdXAsIHRodXMgcmVxdWlyaW5nIGRpZmZlcmVudFxuICAvLyBib3JkZXItcmFkaXVzIG92ZXJyaWRlcy5cbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZFxuLy9cbi8vIFdoaWxlIGl0IHJlcXVpcmVzIG9uZSBleHRyYSBsYXllciBvZiBIVE1MIGZvciBlYWNoLCBkZWRpY2F0ZWQgcHJlcGVuZCBhbmRcbi8vIGFwcGVuZCBlbGVtZW50cyBhbGxvdyB1cyB0byAxKSBiZSBsZXNzIGNsZXZlciwgMikgc2ltcGxpZnkgb3VyIHNlbGVjdG9ycywgYW5kXG4vLyAzKSBzdXBwb3J0IEhUTUw1IGZvcm0gdmFsaWRhdGlvbi5cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHsgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7IG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuIiwiLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tY29udHJvbC1zcGFjZXIteDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgLy8gQmFja2dyb3VuZC1jb2xvciBhbmQgKHdoZW4gZW5hYmxlZCkgZ3JhZGllbnRcbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgIGJvcmRlcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3Igc29saWQgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gRm9yZWdyb3VuZCAoaWNvbilcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUgLyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZX07XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIGNoZWNrYm94ZXMuXG5cbi5jdXN0b20tY2hlY2tib3gge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdyk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gICAgJjppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSYWRpb3Ncbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgcmFkaW9zLlxuXG4uY3VzdG9tLXJhZGlvIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzd2l0Y2hlc1xuLy9cbi8vIFR3ZWFrIGEgZmV3IHRoaW5ncyBmb3Igc3dpdGNoZXNcblxuLmN1c3RvbS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtd2lkdGg7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiBjYWxjKCN7KCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyKX0gKyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMn0pO1xuICAgICAgbGVmdDogY2FsYygjey0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKX0gKyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMn0pO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgaGVpZ2h0OiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0LCAkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRjdXN0b20tc3dpdGNoLXdpZHRoIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuLy9cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdywgJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuXG4gICAgJjo6LW1zLXZhbHVlIHtcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXG4gICAgICAvLyBzdXBwcmVzcyB0aGUgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBkZWZhdWx0IGNhcmV0IGluIElFMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc7XG4gIH1cblxuICBAZWFjaCAkbGFuZywgJHZhbHVlIGluICRjdXN0b20tZmlsZS10ZXh0IHtcbiAgICAmOmxhbmcoI3skbGFuZ30pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBjb250ZW50OiAkdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgfiAuY3VzdG9tLWZpbGUtbGFiZWxbZGF0YS1icm93c2VdOjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLWJyb3dzZSk7XG4gIH1cbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tZmlsZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tZmlsZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tZmlsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWJnO1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWJveC1zaGFkb3cpO1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjtcbiAgICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gICAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBjb250ZW50OiBcIkJyb3dzZVwiO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tZmlsZS1idXR0b24tYmcpO1xuICAgIGJvcmRlci1sZWZ0OiBpbmhlcml0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAwKTtcbiAgfVxufVxuXG4vLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5jdXN0b20tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKCN7JGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHR9ICsgI3skY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyfSk7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAvIDI7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwOyAvLyBFZGdlIHNwZWNpZmljXG4gICAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7IC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIG1hcmdpbi1sZWZ0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7ICAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCAvIDI7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzIG9yIGA8dWw+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gIC5uYXYtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAubmF2LWxpbmsge1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvLyBDb250ZW50c1xuLy9cbi8vIE5hdmJhclxuLy8gTmF2YmFyIGJyYW5kXG4vLyBOYXZiYXIgbmF2XG4vLyBOYXZiYXIgdGV4dFxuLy8gTmF2YmFyIGRpdmlkZXJcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vLyBOYXZiYXIgcG9zaXRpb25cbi8vIE5hdmJhciB0aGVtZXNcblxuXG4vLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXkgJG5hdmJhci1wYWRkaW5nLXg7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICA+IC5jb250YWluZXIsXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZztcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cblxuICArIC5saXN0LWdyb3VwIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbn1cblxuLmNhcmQtaW1nIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ2FyZCBpbWFnZSBjYXBzXG4uY2FyZC1pbWctdG9wIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZy1ib3R0b20ge1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBDYXJkIGRlY2tcblxuLmNhcmQtZGVjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWRlY2stbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtZGVjay1tYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHRcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICAuY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIFN1cHByZXNzIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3IgaW4gbW9kZXJuIGJyb3dzZXJzXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6ICRicmVhZGNydW1iLWRpdmlkZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gT3BpbmlvbmF0ZWQ6IHJlbW92ZSB0aGUgXCJoYW5kXCIgY3Vyc29yIHNldCBwcmV2aW91c2x5IGZvciAucGFnZS1saW5rXG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJGJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRiYWRnZS10cmFuc2l0aW9uKTtcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYWxlcnQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYm9yZGVyLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtY29sb3ItbGV2ZWwpKTtcbiAgfVxufVxuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nO1xuXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xuICBtYXJnaW4tYm90dG9tOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vLyBIb3Jpem9udGFsXG4vL1xuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAtOSksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgNikpO1xufVxuIiwiLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNsb3NlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBvcGFjaXR5OiAuNTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLnRvYXN0IHtcbiAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBjaGVhcCByb3VuZGVkIGNvcm5lcnMgb24gbmVzdGVkIGl0ZW1zXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1wYWRkaW5nLXg7XG4gIH1cblxuICAmLnNob3dpbmcge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b2FzdC1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjtcbn1cblxuLnRvYXN0LWJvZHkge1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy14OyAvLyBhcHBseSB0byBib3RoIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsXG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyfSk7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luICogMn0pOyAvLyBJRTEwLzExXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyfSk7XG5cbiAgLy8gRW5zdXJlIGBtb2RhbC1kaWFsb2ctY2VudGVyZWRgIGV4dGVuZHMgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSB2aWV3IChJRTEwLzExKVxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDJ9KTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLy8gRW5zdXJlIGAubW9kYWwtYm9keWAgc2hvd3Mgc2Nyb2xsYmFyIChJRTEwLzExKVxuICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNsb3NlIHtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy14KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHNob3VsZCB0aGVyZSBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIGJvcmRlci10b3A6ICRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBFYXNpbHkgcGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHsgbWFyZ2luLWxlZnQ6IC4yNXJlbTsgfVxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHsgbWFyZ2luLXJpZ2h0OiAuMjVyZW07IH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDJ9KTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyfSk7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMn0pO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDJ9KTtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogJG1vZGFsLWxnO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgLm1vZGFsLXhsIHsgbWF4LXdpZHRoOiAkbW9kYWwteGw7IH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXRvcCB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgdG9wOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1sZWZ0O1xuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbn1cbiIsIi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcG9wb3Zlci1ib3gtc2hhZG93KTtcblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgbWFyZ2luOiAwICRib3JkZXItcmFkaXVzLWxnO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgbGVmdDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkYm9yZGVyLXJhZGl1cy1sZyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoIC8gMjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICByaWdodDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkYm9yZGVyLXJhZGl1cy1sZyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1sZWZ0O1xuICB9XG59XG5cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogJHBvcG92ZXItaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItaGVhZGVyLWJnLCA1JSk7XG4gICRvZmZzZXQtYm9yZGVyLXdpZHRoOiBjYWxjKCN7JGJvcmRlci1yYWRpdXMtbGd9IC0gI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG9mZnNldC1ib3JkZXItd2lkdGgpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWJvZHktcGFkZGluZy15ICRwb3BvdmVyLWJvZHktcGFkZGluZy14O1xuICBjb2xvcjogJHBvcG92ZXItYm9keS1jb2xvcjtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gb3BhY2l0eSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUgLyAxMDAlIDEwMCU7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8vXG4vLyBSb3RhdGluZyBib3JkZXJcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJvcmRlcjogJHNwaW5uZXItYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogc3Bpbm5lci1ib3JkZXIgLjc1cyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG4gIGJvcmRlci13aWR0aDogJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtO1xufVxuXG4vL1xuLy8gR3Jvd2luZyBjaXJjbGVcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiBzcGlubmVyLWdyb3cgLjc1cyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuIiwiQGltcG9ydCBcInV0aWxpdGllcy9hbGlnblwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9iYWNrZ3JvdW5kXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2JvcmRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZGlzcGxheVwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9lbWJlZFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9mbGV4XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2Zsb2F0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL292ZXJmbG93XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NjcmVlbnJlYWRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2hhZG93c1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zaXppbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc3RyZXRjaGVkLWxpbmtcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc3BhY2luZ1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy90ZXh0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Zpc2liaWxpdHlcIjtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5zaGFkb3ctc20geyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbSAhaW1wb3J0YW50OyB9XG4uc2hhZG93IHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1sZyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbm9uZSB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLy8gVmlld3BvcnQgYWRkaXRpb25hbCBoZWxwZXJzXG5cbi5taW4tdnctMTAwIHsgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4ubWluLXZoLTEwMCB7IG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cblxuLnZ3LTEwMCB7IHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4udmgtMTAwIHsgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgICAuI3skYWJicmV2fSN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn10I3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXRvcDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9ciN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9YiN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAwIHtcbiAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1sI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGU7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIElFICYgPCBFZGdlIDE4XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFByaW50aW5nIFRhYmxlczpcbiAgICAvLyBodHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAvL1xuXG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBTcGVjaWZ5IGEgc2l6ZSBhbmQgbWluLXdpZHRoIHRvIG1ha2UgcHJpbnRpbmcgY2xvc2VyIGFjcm9zcyBicm93c2Vycy5cbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xuICAgIC8vIGRvbid0IHVzZSBgIWltcG9ydGFudGAgb24gYHNpemVgIGFzIGl0IGJyZWFrcyBpbiBDaHJvbWUuXG4gICAgQHBhZ2Uge1xuICAgICAgc2l6ZTogJHByaW50LXBhZ2Utc2l6ZTtcbiAgICB9XG4gICAgYm9keSB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJsYWNrO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1kYXJrIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbiAgfVxufVxuIiwiQGltcG9ydCBcIi4vcGFsZXR0ZVwiO1xuQGltcG9ydCBcIi4vZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL2NvbG9yLWNvbnRyYXN0XCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcbiIsIi8qKlxuICogVGhlIGNvbXBsZXRlIG1hdGVyaWFsIHBhbGV0dGVcbiAqIC0tLVxuICogQGFjY2VzcyBwdWJsaWNcbiAqIEB0eXBlIG1hcFxuICogQGdyb3VwIHRoZW1lc1xuICovXG5cbiRtZC1wYWxldHRlOiAoXG4gIHJlZDogKFxuICAgIDUwOiAjZmZlYmVlLFxuICAgIDEwMDogI2ZmY2RkMixcbiAgICAyMDA6ICNlZjlhOWEsXG4gICAgMzAwOiAjZTU3MzczLFxuICAgIDQwMDogI2VmNTM1MCxcbiAgICA1MDA6ICNmNDQzMzYsXG4gICAgNjAwOiAjZTUzOTM1LFxuICAgIDcwMDogI2QzMmYyZixcbiAgICA4MDA6ICNjNjI4MjgsXG4gICAgOTAwOiAjYjcxYzFjLFxuICAgIEExMDA6ICNmZjhhODAsXG4gICAgQTIwMDogI2ZmNTI1MixcbiAgICBBNDAwOiAjZmYxNzQ0LFxuICAgIEE3MDA6ICNkNTAwMDBcbiAgKSxcbiAgcGluazogKFxuICAgIDUwOiAjZmNlNGVjLFxuICAgIDEwMDogI2Y4YmJkMCxcbiAgICAyMDA6ICNmNDhmYjEsXG4gICAgMzAwOiAjZjA2MjkyLFxuICAgIDQwMDogI2VjNDA3YSxcbiAgICA1MDA6ICNlOTFlNjMsXG4gICAgNjAwOiAjZDgxYjYwLFxuICAgIDcwMDogI2MyMTg1YixcbiAgICA4MDA6ICNhZDE0NTcsXG4gICAgOTAwOiAjODgwZTRmLFxuICAgIEExMDA6ICNmZjgwYWIsXG4gICAgQTIwMDogI2ZmNDA4MSxcbiAgICBBNDAwOiAjZjUwMDU3LFxuICAgIEE3MDA6ICNjNTExNjJcbiAgKSxcbiAgcHVycGxlOiAoXG4gICAgNTA6ICNmM2U1ZjUsXG4gICAgMTAwOiAjZTFiZWU3LFxuICAgIDIwMDogI2NlOTNkOCxcbiAgICAzMDA6ICNiYTY4YzgsXG4gICAgNDAwOiAjYWI0N2JjLFxuICAgIDUwMDogIzljMjdiMCxcbiAgICA2MDA6ICM4ZTI0YWEsXG4gICAgNzAwOiAjN2IxZmEyLFxuICAgIDgwMDogIzZhMWI5YSxcbiAgICA5MDA6ICM0YTE0OGMsXG4gICAgQTEwMDogI2VhODBmYyxcbiAgICBBMjAwOiAjZTA0MGZiLFxuICAgIEE0MDA6ICNkNTAwZjksXG4gICAgQTcwMDogI2FhMDBmZlxuICApLFxuICBkZWVwcHVycGxlOiAoXG4gICAgNTA6ICNlZGU3ZjYsXG4gICAgMTAwOiAjZDFjNGU5LFxuICAgIDIwMDogI2IzOWRkYixcbiAgICAzMDA6ICM5NTc1Y2QsXG4gICAgNDAwOiAjN2U1N2MyLFxuICAgIDUwMDogIzY3M2FiNyxcbiAgICA2MDA6ICM1ZTM1YjEsXG4gICAgNzAwOiAjNTEyZGE4LFxuICAgIDgwMDogIzQ1MjdhMCxcbiAgICA5MDA6ICMzMTFiOTIsXG4gICAgQTEwMDogI2IzODhmZixcbiAgICBBMjAwOiAjN2M0ZGZmLFxuICAgIEE0MDA6ICM2NTFmZmYsXG4gICAgQTcwMDogIzYyMDBlYVxuICApLFxuICBpbmRpZ286IChcbiAgICA1MDogI2U4ZWFmNixcbiAgICAxMDA6ICNjNWNhZTksXG4gICAgMjAwOiAjOWZhOGRhLFxuICAgIDMwMDogIzc5ODZjYixcbiAgICA0MDA6ICM1YzZiYzAsXG4gICAgNTAwOiAjM2Y1MWI1LFxuICAgIDYwMDogIzM5NDlhYixcbiAgICA3MDA6ICMzMDNmOWYsXG4gICAgODAwOiAjMjgzNTkzLFxuICAgIDkwMDogIzFhMjM3ZSxcbiAgICBBMTAwOiAjOGM5ZWZmLFxuICAgIEEyMDA6ICM1MzZkZmUsXG4gICAgQTQwMDogIzNkNWFmZSxcbiAgICBBNzAwOiAjMzA0ZmZlXG4gICksXG4gIGJsdWU6IChcbiAgICA1MDogI2UzZjJmZCxcbiAgICAxMDA6ICNiYmRlZmIsXG4gICAgMjAwOiAjOTBjYWY5LFxuICAgIDMwMDogIzY0YjVmNixcbiAgICA0MDA6ICM0MmE1ZjUsXG4gICAgNTAwOiAjMjE5NmYzLFxuICAgIDYwMDogIzFlODhlNSxcbiAgICA3MDA6ICMxOTc2ZDIsXG4gICAgODAwOiAjMTU2NWMwLFxuICAgIDkwMDogIzBkNDdhMSxcbiAgICBBMTAwOiAjODJiMWZmLFxuICAgIEEyMDA6ICM0NDhhZmYsXG4gICAgQTQwMDogIzI5NzlmZixcbiAgICBBNzAwOiAjMjk2MmZmXG4gICksXG4gIGxpZ2h0Ymx1ZTogKFxuICAgIDUwOiAjZTFmNWZlLFxuICAgIDEwMDogI2IzZTVmYyxcbiAgICAyMDA6ICM4MWQ0ZmEsXG4gICAgMzAwOiAjNGZjM2Y3LFxuICAgIDQwMDogIzI5YjZmNixcbiAgICA1MDA6ICMwM2E5ZjQsXG4gICAgNjAwOiAjMDM5YmU1LFxuICAgIDcwMDogIzAyODhkMSxcbiAgICA4MDA6ICMwMjc3YmQsXG4gICAgOTAwOiAjMDE1NzliLFxuICAgIEExMDA6ICM4MGQ4ZmYsXG4gICAgQTIwMDogIzQwYzRmZixcbiAgICBBNDAwOiAjMDBiMGZmLFxuICAgIEE3MDA6ICMwMDkxZWFcbiAgKSxcbiAgY3lhbjogKFxuICAgIDUwOiAjZTBmN2ZhLFxuICAgIDEwMDogI2IyZWJmMixcbiAgICAyMDA6ICM4MGRlZWEsXG4gICAgMzAwOiAjNGRkMGUxLFxuICAgIDQwMDogIzI2YzZkYSxcbiAgICA1MDA6ICMwMGJjZDQsXG4gICAgNjAwOiAjMDBhY2MxLFxuICAgIDcwMDogIzAwOTdhNyxcbiAgICA4MDA6ICMwMDgzOGYsXG4gICAgOTAwOiAjMDA2MDY0LFxuICAgIEExMDA6ICM4NGZmZmYsXG4gICAgQTIwMDogIzE4ZmZmZixcbiAgICBBNDAwOiAjMDBlNWZmLFxuICAgIEE3MDA6ICMwMGI4ZDRcbiAgKSxcbiAgdGVhbDogKFxuICAgIDUwOiAjZTBmMmYxLFxuICAgIDEwMDogI2IyZGZkYixcbiAgICAyMDA6ICM4MGNiYzQsXG4gICAgMzAwOiAjNGRiNmFjLFxuICAgIDQwMDogIzI2YTY5YSxcbiAgICA1MDA6ICMwMDk2ODgsXG4gICAgNjAwOiAjMDA4OTdiLFxuICAgIDcwMDogIzAwNzk2YixcbiAgICA4MDA6ICMwMDY5NWMsXG4gICAgOTAwOiAjMDA0ZDQwLFxuICAgIEExMDA6ICNhN2ZmZWIsXG4gICAgQTIwMDogIzY0ZmZkYSxcbiAgICBBNDAwOiAjMWRlOWI2LFxuICAgIEE3MDA6ICMwMGJmYTVcbiAgKSxcbiAgZ3JlZW46IChcbiAgICA1MDogI2U4ZjVlOSxcbiAgICAxMDA6ICNjOGU2YzksXG4gICAgMjAwOiAjYTVkNmE3LFxuICAgIDMwMDogIzgxYzc4NCxcbiAgICA0MDA6ICM2NmJiNmEsXG4gICAgNTAwOiAjNGNhZjUwLFxuICAgIDYwMDogIzQzYTA0NyxcbiAgICA3MDA6ICMzODhlM2MsXG4gICAgODAwOiAjMmU3ZDMyLFxuICAgIDkwMDogIzFiNWUyMCxcbiAgICBBMTAwOiAjYjlmNmNhLFxuICAgIEEyMDA6ICM2OWYwYWUsXG4gICAgQTQwMDogIzAwZTY3NixcbiAgICBBNzAwOiAjMDBjODUzXG4gICksXG4gIGxpZ2h0Z3JlZW46IChcbiAgICA1MDogI2YxZjhlOSxcbiAgICAxMDA6ICNkY2VkYzgsXG4gICAgMjAwOiAjYzVlMWE1LFxuICAgIDMwMDogI2FlZDU4MSxcbiAgICA0MDA6ICM5Y2NjNjUsXG4gICAgNTAwOiAjOGJjMzRhLFxuICAgIDYwMDogIzdjYjM0MixcbiAgICA3MDA6ICM2ODlmMzgsXG4gICAgODAwOiAjNTU4YjJmLFxuICAgIDkwMDogIzMzNjkxZSxcbiAgICBBMTAwOiAjY2NmZjkwLFxuICAgIEEyMDA6ICNiMmZmNTksXG4gICAgQTQwMDogIzc2ZmYwMyxcbiAgICBBNzAwOiAjNjRkZDE3XG4gICksXG4gIGxpbWU6IChcbiAgICA1MDogI2Y5ZmJlNyxcbiAgICAxMDA6ICNmMGY0YzMsXG4gICAgMjAwOiAjZTZlZTljLFxuICAgIDMwMDogI2RjZTc3NSxcbiAgICA0MDA6ICNkNGUxNTcsXG4gICAgNTAwOiAjY2RkYzM5LFxuICAgIDYwMDogI2MwY2EzMyxcbiAgICA3MDA6ICNhZmI0MmIsXG4gICAgODAwOiAjOWU5ZDI0LFxuICAgIDkwMDogIzgyNzcxNyxcbiAgICBBMTAwOiAjZjRmZjgxLFxuICAgIEEyMDA6ICNlZWZmNDEsXG4gICAgQTQwMDogI2M2ZmYwMCxcbiAgICBBNzAwOiAjYWVlYTAwXG4gICksXG4gIHllbGxvdzogKFxuICAgIDUwOiAjZmZmZGU3LFxuICAgIDEwMDogI2ZmZjljNCxcbiAgICAyMDA6ICNmZmY1OWQsXG4gICAgMzAwOiAjZmZmMTc2LFxuICAgIDQwMDogI2ZmZWU1OCxcbiAgICA1MDA6ICNmZmViM2IsXG4gICAgNjAwOiAjZmRkODM1LFxuICAgIDcwMDogI2ZiYzAyZCxcbiAgICA4MDA6ICNmOWE4MjUsXG4gICAgOTAwOiAjZjU3ZjE3LFxuICAgIEExMDA6ICNmZmZmOGQsXG4gICAgQTIwMDogI2ZmZmYwMCxcbiAgICBBNDAwOiAjZmZlYTAwLFxuICAgIEE3MDA6ICNmZmQ2MDBcbiAgKSxcbiAgYW1iZXI6IChcbiAgICA1MDogI2ZmZjhlMSxcbiAgICAxMDA6ICNmZmVjYjMsXG4gICAgMjAwOiAjZmZlMDgyLFxuICAgIDMwMDogI2ZmZDU0ZixcbiAgICA0MDA6ICNmZmNhMjgsXG4gICAgNTAwOiAjZmZjMTA3LFxuICAgIDYwMDogI2ZmYjMwMCxcbiAgICA3MDA6ICNmZmEwMDAsXG4gICAgODAwOiAjZmY4ZjAwLFxuICAgIDkwMDogI2ZmNmYwMCxcbiAgICBBMTAwOiAjZmZlNTdmLFxuICAgIEEyMDA6ICNmZmQ3NDAsXG4gICAgQTQwMDogI2ZmYzQwMCxcbiAgICBBNzAwOiAjZmZhYjAwXG4gICksXG4gIG9yYW5nZTogKFxuICAgIDUwOiAjZmZmM2UwLFxuICAgIDEwMDogI2ZmZTBiMixcbiAgICAyMDA6ICNmZmNjODAsXG4gICAgMzAwOiAjZmZiNzRkLFxuICAgIDQwMDogI2ZmYTcyNixcbiAgICA1MDA6ICNmZjk4MDAsXG4gICAgNjAwOiAjZmI4YzAwLFxuICAgIDcwMDogI2Y1N2MwMCxcbiAgICA4MDA6ICNlZjZjMDAsXG4gICAgOTAwOiAjZTY1MTAwLFxuICAgIEExMDA6ICNmZmQxODAsXG4gICAgQTIwMDogI2ZmYWI0MCxcbiAgICBBNDAwOiAjZmY5MTAwLFxuICAgIEE3MDA6ICNmZjZkMDBcbiAgKSxcbiAgZGVlcG9yYW5nZTogKFxuICAgIDUwOiAjZmJlOWU3LFxuICAgIDEwMDogI2ZmY2NiYyxcbiAgICAyMDA6ICNmZmFiOTEsXG4gICAgMzAwOiAjZmY4YTY1LFxuICAgIDQwMDogI2ZmNzA0MyxcbiAgICA1MDA6ICNmZjU3MjIsXG4gICAgNjAwOiAjZjQ1MTFlLFxuICAgIDcwMDogI2U2NGExOSxcbiAgICA4MDA6ICNkODQzMTUsXG4gICAgOTAwOiAjYmYzNjBjLFxuICAgIEExMDA6ICNmZjllODAsXG4gICAgQTIwMDogI2ZmNmU0MCxcbiAgICBBNDAwOiAjZmYzZDAwLFxuICAgIEE3MDA6ICNkZDJjMDBcbiAgKSxcbiAgYnJvd246IChcbiAgICA1MDogI2VmZWJlOSxcbiAgICAxMDA6ICNkN2NjYzgsXG4gICAgMjAwOiAjYmNhYWE0LFxuICAgIDMwMDogI2ExODg3ZixcbiAgICA0MDA6ICM4ZDZlNjMsXG4gICAgNTAwOiAjNzk1NTQ4LFxuICAgIDYwMDogIzZkNGM0MSxcbiAgICA3MDA6ICM1ZDQwMzcsXG4gICAgODAwOiAjNGUzNDJlLFxuICAgIDkwMDogIzNlMjcyMyxcbiAgICBBMTAwOiAjZDdjY2M4LFxuICAgIEEyMDA6ICNiY2FhYTQsXG4gICAgQTQwMDogIzhkNmU2MyxcbiAgICBBNzAwOiAjNWQ0MDM3XG4gICksXG4gIGdyZXk6IChcbiAgICA1MDogI2ZhZmFmYSxcbiAgICAxMDA6ICNmNWY1ZjUsXG4gICAgMjAwOiAjZWVlZWVlLFxuICAgIDMwMDogI2UwZTBlMCxcbiAgICA0MDA6ICNiZGJkYmQsXG4gICAgNTAwOiAjOWU5ZTllLFxuICAgIDYwMDogIzc1NzU3NSxcbiAgICA3MDA6ICM2MTYxNjEsXG4gICAgODAwOiAjNDI0MjQyLFxuICAgIDkwMDogIzIxMjEyMSxcbiAgICBBMTAwOiAjZmZmLFxuICAgIEEyMDA6ICMwMDAwMDAsXG4gICAgQTQwMDogIzMwMzAzMCxcbiAgICBBNzAwOiAjNjE2MTYxXG4gICksXG4gIGJsdWVncmV5OiAoXG4gICAgNTA6ICNlY2VmZjEsXG4gICAgMTAwOiAjY2ZkOGRjLFxuICAgIDIwMDogI2IwYmVjNSxcbiAgICAzMDA6ICM5MGE0YWUsXG4gICAgNDAwOiAjNzg5MDljLFxuICAgIDUwMDogIzYwN2Q4YixcbiAgICA2MDA6ICM1NDZlN2EsXG4gICAgNzAwOiAjNDU1YTY0LFxuICAgIDgwMDogIzM3NDc0ZixcbiAgICA5MDA6ICMyNjMyMzgsXG4gICAgQTEwMDogI2NmZDhkYyxcbiAgICBBMjAwOiAjYjBiZWM1LFxuICAgIEE0MDA6ICM3ODkwOWMsXG4gICAgQTcwMDogIzQ1NWE2NFxuICApLFxuICB3aGl0ZTogKFxuICAgIDUwOiAjZmZmLFxuICAgIDEwMDogI2ZmZixcbiAgICAyMDA6ICNmZmYsXG4gICAgMzAwOiAjZmZmLFxuICAgIDQwMDogI2ZmZixcbiAgICA1MDA6ICNmZmYsXG4gICAgNjAwOiAjZmZmLFxuICAgIDcwMDogI2ZmZixcbiAgICA4MDA6ICNmZmYsXG4gICAgOTAwOiAjZmZmLFxuICAgIEExMDA6ICNmZmYsXG4gICAgQTIwMDogI2ZmZixcbiAgICBBNDAwOiAjZmZmLFxuICAgIEE3MDA6ICNmZmZcbiAgKSxcbiAgYmxhY2s6IChcbiAgICA1MDogIzAwMCxcbiAgICAxMDA6ICMwMDAsXG4gICAgMjAwOiAjMDAwLFxuICAgIDMwMDogIzAwMCxcbiAgICA0MDA6ICMwMDAsXG4gICAgNTAwOiAjMDAwLFxuICAgIDYwMDogIzAwMCxcbiAgICA3MDA6ICMwMDAsXG4gICAgODAwOiAjMDAwLFxuICAgIDkwMDogIzAwMCxcbiAgICBBMTAwOiAjMDAwLFxuICAgIEEyMDA6ICMwMDAsXG4gICAgQTQwMDogIzAwMCxcbiAgICBBNzAwOiAjMDAwXG4gIClcbik7XG4iLCIvKipcbiAqIFRoZW1lIGFueSBjc3MgcHJvcGVydHkgYmFzZWQgb24gdGhlIGN1cnJlbnQgcGFsZXR0ZSwgYWNjZXB0aW5nIGEgdGhlbWFibGVcbiAqIHZhbHVlIHRoYXQgd2lsbCBnaXZlIGFuIGNvbnRyYXN0ZWRcbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiAkZm9vLXBhbGV0dGU6IChcbiAqICAgcHJpbWFyeTogbWQtZ2V0LXBhbGV0dGUtY29sb3IoaW5kaWdvLCA1MDApLFxuICogICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHBpbmssIDUwMCksXG4gKiAgIHRoZW1lOiBcImxpZ2h0XCJcbiAqICk7XG4gKlxuICogLS0tXG4gKiBAYWNjZXNzIHB1YmxpY1xuICogLS0tXG4gKiBAcGFyYW0ge2NvbG9yfSAkdHlwZSDigJTigIogVGhlIGRlc2lyZWQgY29sb3IgYmFzZWQgb24gbWF0ZXJpYWwgcGFsZXR0ZVxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBBIHZhbGlkIGh1ZVxuICovXG5cbkBmdW5jdGlvbiBtZC1nZXQtcGFsZXR0ZS1jb2xvcigkY29sb3IsICRodWUpIHtcbiAgQHJldHVybiBtYXAtZ2V0KG1hcC1nZXQoJG1kLXBhbGV0dGUsICRjb2xvciksICRodWUpO1xufVxuXG5cbi8qKlxuICogR2V0IHRoZSBjdXJyZW50IHRoZW1lIG1vZGUgZnJvbSB0aGUgY3VycmVudCB0aGVtZVxuICogLS0tXG4gKiBVc2FnZSBleGFtcGxlOlxuICpcbiAqICR0aGVtZS1tb2RlOiBtZC1nZXQtdGhlbWUtbW9kZSgpXG4gKlxuICogLS0tXG4gKiBAYWNjZXNzIHByaXZhdGVcbiAqL1xuXG5AZnVuY3Rpb24gbWQtZ2V0LXRoZW1lLW1vZGUoKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkbWQtdGhlbWUtcGFsZXR0ZSwgdGhlbWUpO1xufVxuXG5cbi8qKlxuICogVGhlbWUgYW55IGNzcyBwcm9wZXJ0eSBiYXNlZCBvbiB0aGUgY3VycmVudCBwYWxldHRlLCBhY2NlcHRpbmcgYSB0aGVtYWJsZVxuICogdmFsdWUgdGhhdCB3aWxsIGdpdmUgYW4gY29udHJhc3RlZFxuICogLS0tXG4gKiBVc2FnZSBleGFtcGxlOlxuICpcbiAqIC5tZC1mb28ge1xuICogICBtaW4td2lkdGg6IDg4cHg7XG4gKiAgIGhlaWdodDogNDBweDtcbiAqICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XG4gKiB9XG4gKlxuICogLS0tXG4gKiBAYWNjZXNzIHB1YmxpY1xuICogLS0tXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSB0aGVtYWJsZSB2YWx1ZVxuICovXG5cbkBmdW5jdGlvbiBtZC10aGVtZSgkdHlwZSwgJGJhY2tncm91bmQ6IFwiXCIpIHtcbiAgJGNvbG9yLXRoZW1lOiBudWxsO1xuXG4gIEBpZiAkdHlwZSA9PSBcInByaW1hcnlcIiBvciAkdHlwZSA9PSBcImFjY2VudFwiIHtcbiAgICBAcmV0dXJuIG1kLWdldC1jb2xvci1ieS10eXBlKCR0eXBlLCBudWxsKTtcbiAgfSBAZWxzZSB7XG4gICAgJGNvbG9yLXRoZW1lOiBtYXAtZ2V0KCRtZC10aGVtZS1wYWxldHRlLCB0aGVtZSk7XG5cbiAgICBAaWYgJGJhY2tncm91bmQgIT0gXCJcIiB7XG4gICAgICAkY29sb3ItdGhlbWU6IG1kLXBpY2stY29udHJhc3QobWQtZ2V0LWNvbG9yLWJ5LXR5cGUoJGJhY2tncm91bmQsICRjb2xvci10aGVtZSkpO1xuICAgIH1cblxuICAgIEByZXR1cm4gbWQtZ2V0LWNvbG9yLWJ5LXRoZW1lKCRjb2xvci10aGVtZSwgJHR5cGUpO1xuICB9XG59XG5cblxuLyoqXG4gKiBHZXQgYSBjb2xvciBiYXNlZCBvbiB0eXBlIGJ5IHRoZW1lXG4gKiAtLS1cbiAqIFVzYWdlIGV4YW1wbGU6XG4gKlxuICogJGNvbG9yOiBtZC1nZXQtY29sb3ItYnktdGhlbWUoZGFyaywgcHJpbWFyeSlcbiAqXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHVibGljXG4gKiAtLS1cbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3ItdGhlbWUg4oCU4oCKIFRoZSB0aGVtZSBjb2xvciB8IEFjY2VwdHMgZGFyayBvciBsaWdodFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxuICovXG5cbkBmdW5jdGlvbiBtZC1nZXQtY29sb3ItYnktdGhlbWUoJGNvbG9yLXRoZW1lLCAkdHlwZSkge1xuICAkdGhlbWU6IG1hcC1nZXQoJG1kLWNvbG9yLWxldmVscywgJGNvbG9yLXRoZW1lKTtcblxuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLCAkdHlwZSk7XG59XG5cblxuLyoqXG4gKiBHZXQgYSBjb2xvciBiYXNlZCBvbiB0eXBlIG9ubHlcbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiAkY29sb3IxOiBtZC1nZXQtY29sb3ItYnktdHlwZShiYWNrZ3JvdW5kLCBkYXJrKVxuICogJGNvbG9yMTogbWQtZ2V0LWNvbG9yLWJ5LXR5cGUoYWNjZW50KVxuICpcbiAqIC0tLVxuICogQGFjY2VzcyBwdWJsaWNcbiAqIC0tLVxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxuICogQHBhcmFtIHtzdHJpbmd9ICR0aGVtZSDigJTigIogVGhlIGZhbGxiYWNrIHRoZW1lXG4gKi9cblxuQGZ1bmN0aW9uIG1kLWdldC1jb2xvci1ieS10eXBlKCR0eXBlLCAkdGhlbWUpIHtcbiAgJG5ld0NvbG9yOiBtYXAtZ2V0KCRtZC10aGVtZS1wYWxldHRlLCAkdHlwZSk7XG5cbiAgQGlmICRuZXdDb2xvciA9PSBudWxsIHtcbiAgICAkbmV3Q29sb3I6IG1kLWdldC1jb2xvci1ieS10aGVtZSgkdGhlbWUsICR0eXBlKTtcbiAgfVxuXG4gIEByZXR1cm4gJG5ld0NvbG9yXG59XG4iLCIvKipcbiAqIFRoZSBkZWZhdWx0IHRoZW1lIHBhbGV0dGVcbiAqIHByaW1hcnk6IGluZGlnbyA1MDAgIzNmNTFiNVxuICogYWNjZW50OiBwaW5rIDUwMCAjZTkxZTYzXG4gKiB0aGVtZTogbGlnaHRcbiAqXG4gKiBJdCBjYW4gYmUgdXNlZCBqdXN0IGJlZm9yZSBpbXBvcnRpbmcgdGhlIFZ1ZSBNYXRlcmlhbCBzdHlsZXNoZWV0XG4gKlxuICogLS0tXG4gKiBAYWNjZXNzIHB1YmxpY1xuICogQHR5cGUgY29sb3JtYXBcbiAqIEBncm91cCB0aGVtZXNcbiAqL1xuXG4kbWQtZGVmYXVsdC1wYWxldHRlOiAoXG4gIHByaW1hcnk6IG1kLWdldC1wYWxldHRlLWNvbG9yKGJsdWUsIEEyMDApLFxuICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHJlZCwgQTIwMCksXG4gIHRoZW1lOiBcImxpZ2h0XCJcbikgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBUZW1wb3JhcnkgdmFyaWFibGUgdG8gc3RvcmUgYWxsIHRoZW1hYmxlIHZhbHVlc1xuICogLS0tXG4gKiBAYWNjZXNzIHByaXZhdGVcbiAqIEB0eXBlIG1hcFxuICogQGdyb3VwIHRoZW1lc1xuICovXG4kbWQtdGhlbWUtcGFsZXR0ZTogKCk7XG5cblxuLyoqXG4gKiBNYXAgdmFyaWFibGUgdG8gc3RvcmUgYWxsIHRoZW1lcyB0byBiZSBwcm9jZXNzZWQgYnkgZWFjaCBjb21wb25lbnRcbiAqIC0tLVxuICogQGFjY2VzcyBwcml2YXRlXG4gKiBAdHlwZSBtYXBcbiAqIEBncm91cCB0aGVtZXNcbiAqL1xuJG1kLXRoZW1lczogKCk7XG5cblxuLyoqXG4gKiBTdG9yZSB0aGUgY3VycmVudCB0aGVtZSBuYW1lXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHJpdmF0ZVxuICogQHR5cGUgc3RyaW5nXG4gKiBAZ3JvdXAgdGhlbWVzXG4gKi9cblxuJG1kLWN1cnJlbnQtdGhlbWU6IG51bGw7XG5cblxuLyoqXG4gKiBUaGUgY29sb3IgY29udHJhc3QgdmFsdWVzXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHJpdmF0ZVxuICogQHR5cGUgbWFwXG4gKiBAZ3JvdXAgdGhlbWVzXG4gKi9cblxuJG1kLWNvbG9yLWxldmVsczogKFxuICBsaWdodDogKFxuICAgIGJhY2tncm91bmQ6ICNmZmYsXG4gICAgYmFja2dyb3VuZC12YXJpYW50OiAjZmFmYWZhLFxuICAgIHRleHQtcHJpbWFyeTogcmdiYSgjMDAwLCAuODcpLFxuICAgIHRleHQtYWNjZW50OiByZ2JhKCMwMDAsIC41NCksXG4gICAgdGV4dC1oaW50OiByZ2JhKCMwMDAsIC4zOCksXG4gICAgZGlzYWJsZWQ6IHJnYmEoIzAwMCwgLjI2KSxcbiAgICBkaXNhYmxlZC1iYWNrZ3JvdW5kOiByZ2JhKCMwMDAsIC4xMiksXG4gICAgaGlnaGxpZ2h0OiByZ2JhKCMwMDAsIC4xMiksXG4gICAgaWNvbjogcmdiYSgjMDAwLCAuNTQpLFxuICAgIGljb24tZGlzYWJsZWQ6IHJnYmEoIzAwMCwgLjM4KSxcbiAgICBkaXZpZGVyOiByZ2JhKCMwMDAsIC4xMiksXG4gICAgc2Nyb2xsYmFyOiAjNzU3NTc1LFxuICAgIHNjcm9sbGJhci1iYWNrZ3JvdW5kOiBkYXJrZW4oI2VlZSwgNSUpLFxuICAgIHRvb2x0aXA6ICM2MTYxNjFcbiAgKSxcbiAgZGFyazogKFxuICAgIGJhY2tncm91bmQ6ICM0MjQyNDIsXG4gICAgYmFja2dyb3VuZC12YXJpYW50OiAjMzAzMDMwLFxuICAgIHRleHQtcHJpbWFyeTogI2ZmZixcbiAgICB0ZXh0LWFjY2VudDogcmdiYSgjZmZmLCAuNyksXG4gICAgdGV4dC1oaW50OiByZ2JhKCNmZmYsIC41KSxcbiAgICBkaXNhYmxlZDogcmdiYSgjZmZmLCAuMyksXG4gICAgZGlzYWJsZWQtYmFja2dyb3VuZDogcmdiYSgjZmZmLCAuMTIpLFxuICAgIGhpZ2hsaWdodDogcmdiYSgjZmZmLCAuMTIpLFxuICAgIGljb246ICNmZmYsXG4gICAgaWNvbi1kaXNhYmxlZDogcmdiYSgjZmZmLCAuNSksXG4gICAgZGl2aWRlcjogcmdiYSgjZmZmLCAuMTIpLFxuICAgIHNjcm9sbGJhcjogIzlFOUU5RSxcbiAgICBzY3JvbGxiYXItYmFja2dyb3VuZDogIzIxMjEyMSxcbiAgICB0b29sdGlwOiAjZmZmXG4gIClcbik7XG4iLCIvKipcbiAqIEhpZ2h0bHkgYmFzZWQgb246IFwiVXNpbmcgU2FzcyB0byBhdXRvbWF0aWNhbGx5IHBpY2sgdGV4dCBjb2xvcnNcIlxuICogaHR0cHM6Ly9tZWRpdW0uY29tL2Rldi1jaGFubmVsL3VzaW5nLXNhc3MtdG8tYXV0b21hdGljYWxseS1waWNrLXRleHQtY29sb3JzLTRiYTc2NDVkMjc5NlxuICovXG5cbi8qKlxuICogUHJlY29tcHV0ZWQgbGluZWFyIGNvbG9yIGNoYW5uZWwgdmFsdWVzLCBmb3IgdXNlIGluIGNvbnRyYXN0IGNhbGN1bGF0aW9ucy5cbiAqIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLVRFQ0hTL0cxNy5odG1sI0cxNy10ZXN0c1xuICogLS0tXG4gKlxuICogIEFsZ29yaXRobSwgZm9yIGMgaW4gMCB0byAyNTU6XG4gKiAgZihjKSB7XG4gKiAgICBjID0gYyAvIDI1NTtcbiAqICAgIHJldHVybiBjIDwgMC4wMzkyOCA/IGMgLyAxMi45MiA6IE1hdGgucG93KChjICsgMC4wNTUpIC8gMS4wNTUsIDIuNCk7XG4gKiAgfVxuICpcbiAqICBUaGlzIGxvb2t1cCB0YWJsZSBpcyBuZWVkZWQgc2luY2UgdGhlcmUgaXMgbm8gYHBvd2AgaW4gU0FTUy5cbiAqXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHJpdmF0ZVxuICogQHR5cGUgTWFwXG4gKiBAZ3JvdXAgdGhlbWVzXG4gKi9cblxuJG1kLWxpbmVhci1jaGFubmVsLXZhbHVlczpcbiAgMFxuICAuMDAwMzAzNTI2OTgzNTQ4ODM3NVxuICAuMDAwNjA3MDUzOTY3MDk3Njc1XG4gIC4wMDA5MTA1ODA5NTA2NDY1MTI1XG4gIC4wMDEyMTQxMDc5MzQxOTUzNVxuICAuMDAxNTE3NjM0OTE3NzQ0MTg3NFxuICAuMDAxODIxMTYxOTAxMjkzMDI1XG4gIC4wMDIxMjQ2ODg4ODQ4NDE4NjI2XG4gIC4wMDI0MjgyMTU4NjgzOTA3XG4gIC4wMDI3MzE3NDI4NTE5Mzk1MzczXG4gIC4wMDMwMzUyNjk4MzU0ODgzNzVcbiAgLjAwMzM0NjUzNTc2Mzg5OTE2MVxuICAuMDAzNjc2NTA3MzI0MDQ3NDM2XG4gIC4wMDQwMjQ3MTcwMTg0OTYzMDdcbiAgLjAwNDM5MTQ0MjAzNzQxMDI5M1xuICAuMDA0Nzc2OTUzNDgwNjkzNzI5XG4gIC4wMDUxODE1MTY3MDIzMzgzODZcbiAgLjAwNTYwNTM5MTYyNDIwMjcyM1xuICAuMDA2MDQ4ODMzMDIyODU3MDU0XG4gIC4wMDY1MTIwOTA3OTI1OTQ0NzVcbiAgLjAwNjk5NTQxMDE4NzI2NTM4N1xuICAuMDA3NDk5MDMyMDQzMjI2MTc1XG4gIC4wMDgwMjMxOTI5ODUzODQ5OTRcbiAgLjAwODU2ODEyNTYxODA2OTMwN1xuICAuMDA5MTM0MDU4NzAyMjIwNzg3XG4gIC4wMDk3MjEyMTczMjAyMzc4NVxuICAuMDEwMzI5ODIzMDI5NjI2OTM2XG4gIC4wMTA5NjAwOTQwMDY0ODgyNDZcbiAgLjAxMTYxMjI0NTE3OTc0Mzg4NVxuICAuMDEyMjg2NDg4MzU2OTE1ODcyXG4gIC4wMTI5ODMwMzIzNDIxNzMwMTJcbiAgLjAxMzcwMjA4MzA0NzI4OTY4NlxuICAuMDE0NDQzODQzNTk2MDkyNTQ1XG4gIC4wMTUyMDg1MTQ0MjI5MTI3MVxuICAuMDE1OTk2MjkzMzY1NTA5NjNcbiAgLjAxNjgwNzM3NTc1Mjg4NzM4NFxuICAuMDE3NjQxOTU0NDg4Mzg0MDc4XG4gIC4wMTg1MDAyMjAxMjgzNzk2OTdcbiAgLjAxOTM4MjM2MDk1NjkzNTcyM1xuICAuMDIwMjg4NTYzMDU2NjUyNFxuICAuMDIxMjE5MDEwMzc2MDAzNTU1XG4gIC4wMjIxNzM4ODQ3OTMzODczODVcbiAgLjAyMzE1MzM2NjE3ODExMDQxXG4gIC4wMjQxNTc2MzI0NDg1MDQ3NTZcbiAgLjAyNTE4Njg1OTYyNzM2MTYzXG4gIC4wMjYyNDEyMjE4OTQ4NDk4OThcbiAgLjAyNzMyMDg5MTYzOTA3NDg5NFxuICAuMDI4NDI2MDM5NTA0NDIwNzkzXG4gIC4wMjk1NTY4MzQ0Mzc4MDg4XG4gIC4wMzA3MTM0NDM3MzI5OTM2MzVcbiAgLjAzMTg5NjAzMzA3MzAxMTUzXG4gIC4wMzMxMDQ3NjY1NzA4ODUwNTVcbiAgLjAzNDMzOTgwNjgwODY4MjE3XG4gIC4wMzU2MDEzMTQ4NzUwMjAzNFxuICAuMDM2ODg5NDUwNDAxMTAwMDRcbiAgLjAzODIwNDM3MTU5NTM0NjVcbiAgLjAzOTU0NjIzNTI3NjczMjg0XG4gIC4wNDA5MTUxOTY5MDY4NTMxOVxuICAuMDQyMzExNDEwNjIwODA5Njc1XG4gIC4wNDM3MzUwMjkyNTY5NzM0NjVcbiAgLjA0NTE4NjIwNDM4NTY3NTU0XG4gIC4wNDY2NjUwODYzMzY4ODAwOTVcbiAgLjA0ODE3MTgyNDIyNjg4OTQyXG4gIC4wNDk3MDY1NjU5ODQxMjcyM1xuICAuMDUxMjY5NDU4Mzc0MDQzMjRcbiAgLjA1Mjg2MDY0NzAyMzE4MDI0NlxuICAuMDU0NDgwMjc2NDQyNDQyMzdcbiAgLjA1NjEyODQ5MDA0OTYwMDA5XG4gIC4wNTc4MDU0MzAxOTEwNjcyM1xuICAuMDU5NTExMjM4MTYyOTgxMlxuICAuMDYxMjQ2MDU0MjMxNjE3NjFcbiAgLjA2MzAxMDAxNzY1MzE2NzY3XG4gIC4wNjQ4MDMyNjY2OTI5MDU3N1xuICAuMDY2NjI1OTM4NjQzNzcyODlcbiAgLjA2ODQ3ODE2OTg0NDQwMDE3XG4gIC4wNzAzNjAwOTU2OTY1OTU4OFxuICAuMDcyMjcxODUwNjgyMzE3NDhcbiAgLjA3NDIxMzU2ODM4MDE0OTYzXG4gIC4wNzYxODUzODE0ODEzMDc4NVxuICAuMDc4MTg3NDIxODA1MTg2MzNcbiAgLjA4MDIxOTgyMDMxNDQ2ODMyXG4gIC4wODIyODI3MDcxMjk4MTQ4XG4gIC4wODQzNzYyMTE1NDQxNDg4MlxuICAuMDg2NTAwNDYyMDM2NTQ5NzZcbiAgLjA4ODY1NTU4NjI4NTc3Mjk0XG4gIC4wOTA4NDE3MTExODM0MDc2OFxuICAuMDkzMDU4OTYyODQ2Njg3NDVcbiAgLjA5NTMwNzQ2NjYzMDk2NDdcbiAgLjA5NzU4NzM0NzE0MTg2MjQ2XG4gIC4wOTk4OTg3MjgyNDcxMTM4OVxuICAuMTAyMjQxNzMzMDg4MTAxMzJcbiAgLjEwNDYxNjQ4NDA5MTEwNDE5XG4gIC4xMDcwMjMxMDI5NzgyNjc2MVxuICAuMTA5NDYxNzEwNzc4Mjk5MzNcbiAgLjExMTkzMjQyNzgzNjkwNTZcbiAgLjExNDQzNTM3MzgyNjk3MzczXG4gIC4xMTY5NzA2Njc3NTg1MTA4NFxuICAuMTE5NTM4NDI3OTg4MzQ1NjJcbiAgLjEyMjEzODc3MjIyOTYwMTg3XG4gIC4xMjQ3NzE4MTc1NjA5NTA0OVxuICAuMTI3NDM3NjgwNDM1NjQ3NDNcbiAgLjEzMDEzNjQ3NjY5MDM2NDNcbiAgLjEzMjg2ODMyMTU1MzgxNzk4XG4gIC4xMzU2MzMzMjk2NTUyMDU2NlxuICAuMTM4NDMxNjE1MDMyNDUxODNcbiAgLjE0MTI2MzI5MTE0MDI3MTY0XG4gIC4xNDQxMjg0NzA4NTgwNTc3N1xuICAuMTQ3MDI3MjY2NDk3NTk0OThcbiAgLjE0OTk1OTc4OTgxMDYwODU2XG4gIC4xNTI5MjYxNTE5OTYxNTAxN1xuICAuMTU1OTI2NDYzNzA3ODI3NFxuICAuMTU4OTYwODM1MDYwODgwNFxuICAuMTYyMDI5Mzc1NjM5MTExXG4gIC4xNjUxMzIxOTQ1MDE2Njc2XG4gIC4xNjgyNjk0MDAxODk2OTA3NVxuICAuMTcxNDQxMTAwNzMyODIyNlxuICAuMTc0NjQ3NDAzNjU1NTg1MDRcbiAgLjE3Nzg4ODQxNTk4MzYyOTEyXG4gIC4xODExNjQyNDQyNDk4NjAyMlxuICAuMTg0NDc0OTk0NTAwNDQxXG4gIC4xODc4MjA3NzIzMDA2Nzc4N1xuICAuMTkxMjAxNjgyNzQwNzkxMzhcbiAgLjE5NDYxNzgzMDQ0MTU3NThcbiAgLjE5ODA2OTMxOTU1OTk0ODg2XG4gIC4yMDE1NTYyNTM3OTQzOTcwN1xuICAuMjA1MDc4NzM2MzkwMzE2OTNcbiAgLjIwODYzNjg3MDE0NTI1NTc1XG4gIC4yMTIyMzA3NTc0MTQwNTUyM1xuICAuMjE1ODYwNTAwMTEzODk5MjZcbiAgLjIxOTUyNjE5OTcyOTI2OTJcbiAgLjIyMzIyNzk1NzMxNjgwODVcbiAgLjIyNjk2NTg3MzUxMDA5ODM2XG4gIC4yMzA3NDAwNDg1MjQzNDkxNVxuICAuMjM0NTUwNTgyMTYxMDA1MjJcbiAgLjIzODM5NzU3MzgxMjI3MVxuICAuMjQyMjgxMTIyNDY1NTU0ODZcbiAgLjI0NjIwMTMyNjcwNzgzNTQ4XG4gIC4yNTAxNTgyODQ3Mjk5NTM0NFxuICAuMjU0MTUyMDk0MzMwODI2NzVcbiAgLjI1ODE4Mjg1MjkyMTU5NThcbiAgLjI2MjI1MDY1NzUyOTY5NjIzXG4gIC4yNjYzNTU2MDQ4MDI4NjI0N1xuICAuMjcwNDk3NzkxMDEzMDY1OFxuICAuMjc0Njc3MzEyMDYwMzg0NjVcbiAgLjI3ODg5NDI2MzQ3NjgxMDRcbiAgLjI4MzE0ODc0MDQyOTk5MjFcbiAgLjI4NzQ0MDgzNzcyNjkxNzVcbiAgLjI5MTc3MDY0OTgxNzUzNTg3XG4gIC4yOTYxMzgyNzA3OTgzMjExXG4gIC4zMDA1NDM3OTQ0MTU3NzY1XG4gIC4zMDQ5ODczMTQwNjk4ODYzXG4gIC4zMDk0Njg5MjI4MTc1MDg1NFxuICAuMzEzOTg4NzEzMzc1NzE3NTRcbiAgLjMxODU0Njc3ODEyNTA5MTg2XG4gIC4zMjMxNDMyMDkxMTI5NTA3NVxuICAuMzI3Nzc4MDk4MDU2NTQyMlxuICAuMzMyNDUxNTM2MzQ2MTc5MzVcbiAgLjMzNzE2MzYxNTA0ODMzMDM3XG4gIC4zNDE5MTQ0MjQ5MDg2NjA5XG4gIC4zNDY3MDQwNTYzNTUwMjk2XG4gIC4zNTE1MzI1OTk1MDA0MzkzNlxuICAuMzU2NDAwMTQ0MTQ1OTQzNVxuICAuMzYxMzA2Nzc5NzgzNTA5NVxuICAuMzY2MjUyNTk1NTk4ODM5NVxuICAuMzcxMjM3NjgwNDc0MTQ5MVxuICAuMzc2MjYyMTIyOTkwOTA2NVxuICAuMzgxMzI2MDExNDMyNTMwMTRcbiAgLjM4NjQyOTQzMzc4NzA0OVxuICAuMzkxNTcyNDc3NzQ5NzIzMjZcbiAgLjM5Njc1NTIzMDcyNTYyNjg1XG4gIC40MDE5Nzc3Nzk4MzIxOTU4XG4gIC40MDcyNDAyMTE5MDE3MzY3XG4gIC40MTI1NDI2MTM0ODM5MDM3NVxuICAuNDE3ODg1MDcwODQ4MTM3NVxuICAuNDIzMjY3NjY5OTg2MDcxN1xuICAuNDI4NjkwNDk2NjEzOTA2NlxuICAuNDM0MTUzNjM2MTc0NzQ4OTVcbiAgLjQzOTY1NzE3Mzg0MDkxODhcbiAgLjQ0NTIwMTE5NDUxNjIyNzg2XG4gIC40NTA3ODU3ODI4MzgyMjM0NlxuICAuNDU2NDExMDIzMTgwNDA0NjZcbiAgLjQ2MjA3Njk5OTY1NDQwNzFcbiAgLjQ2Nzc4Mzc5NjExMjE1OVxuICAuNDczNTMxNDk2MTQ4MDA5NTVcbiAgLjQ3OTMyMDE4MzEwMDgyNjhcbiAgLjQ4NTE0OTk0MDA1NjA3MDRcbiAgLjQ5MTAyMDg0OTg0NzgzNTZcbiAgLjQ5NjkzMjk5NTA2MDg3MDRcbiAgLjUwMjg4NjQ1ODAzMjU2ODdcbiAgLjUwODg4MTMyMDg1NDkzMzhcbiAgLjUxNDkxNzY2NTM3NjUyMTRcbiAgLjUyMDk5NTU3MzIwNDM1NDNcbiAgLjUyNzExNTEyNTcwNTgxMzFcbiAgLjUzMzI3NjQwNDAxMDUwNTJcbiAgLjUzOTQ3OTQ4OTAxMjEwNzJcbiAgLjU0NTcyNDQ2MTM3MDE4NjZcbiAgLjU1MjAxMTQwMTUxMjAwMDFcbiAgLjU1ODM0MDM4OTYzNDI2NzlcbiAgLjU2NDcxMTUwNTcwNDkyOTJcbiAgLjU3MTEyNDgyOTQ2NDg3MzFcbiAgLjU3NzU4MDQ0MDQyOTY1MDZcbiAgLjU4NDA3ODQxNzg5MTE2NDFcbiAgLjU5MDYxODg0MDkxOTMzNjlcbiAgLjU5NzIwMTc4ODM2Mzc2MzRcbiAgLjYwMzgyNzMzODg1NTMzNzhcbiAgLjYxMDQ5NTU3MDgwNzg2NDhcbiAgLjYxNzIwNjU2MjQxOTY1MTFcbiAgLjYyMzk2MDM5MTY3NTA3NjFcbiAgLjYzMDc1NzEzNjM0NjE0NjhcbiAgLjYzNzU5Njg3Mzk5NDAzMjZcbiAgLjY0NDQ3OTY4MTk3MDU4MjFcbiAgLjY1MTQwNTYzNzQxOTgyNDJcbiAgLjY1ODM3NDgxNzI3OTQ0ODVcbiAgLjY2NTM4NzI5ODI4MjI3MlxuICAuNjcyNDQzMTU2OTU3Njg3NVxuICAuNjc5NTQyNDY5NjMzMDkzOFxuICAuNjg2Njg1MzEyNDM1MzEzNVxuICAuNjkzODcxNzYxMjkxOTg5OVxuICAuNzAxMTAxODkxOTMyOTczMVxuICAuNzA4Mzc1Nzc5ODkxNjg2OFxuICAuNzE1NjkzNTAwNTA2NDgwN1xuICAuNzIzMDU1MTI4OTIxOTY5M1xuICAuNzMwNDYwNzQwMDkwMzUzN1xuICAuNzM3OTEwNDA4NzcyNzMwOFxuICAuNzQ1NDA0MjA5NTQwMzg3NFxuICAuNzUyOTQyMjE2Nzc2MDc3OVxuICAuNzYwNTI0NTA0Njc1MjkyNFxuICAuNzY4MTUxMTQ3MjQ3NTA3XG4gIC43NzU4MjIyMTgzMTc0MjM2XG4gIC43ODM1Mzc3OTE1MjYxOTM1XG4gIC43OTEyOTc5NDAzMzI2MzAyXG4gIC43OTkxMDI3MzgwMTQ0MDlcbiAgLjgwNjk1MjI1NzY2OTI1MTZcbiAgLjgxNDg0NjU3MjIxNjEwMTJcbiAgLjgyMjc4NTc1NDM5NjI4MzVcbiAgLjgzMDc2OTg3Njc3NDY1NDZcbiAgLjgzODc5OTAxMTc0MDc0XG4gIC44NDY4NzMyMzE1MDk4NThcbiAgLjg1NDk5MjYwODEyNDIzMzhcbiAgLjg2MzE1NzIxMzQ1NDEwMjNcbiAgLjg3MTM2NzExOTE5ODc5NzJcbiAgLjg3OTYyMjM5Njg4NzgzMTdcbiAgLjg4NzkyMzExNzg4MTk2NjNcbiAgLjg5NjI2OTM1MzM3NDI2NjRcbiAgLjkwNDY2MTE3NDM5MTE0OTZcbiAgLjkxMzA5ODY1MTc5MzQxOTJcbiAgLjkyMTU4MTg1NjI3NzI5NDZcbiAgLjkzMDExMDg1ODM3NTQyMzdcbiAgLjkzODY4NTcyODQ1Nzg4OFxuICAuOTQ3MzA2NTM2NzMzMTk5OVxuICAuOTU1OTczMzUzMjQ5Mjg2MVxuICAuOTY0Njg2MjQ3ODk0NDY1MVxuICAuOTczNDQ1MjkwMzk4NDEyNVxuICAuOTgyMjUwNTUwMzMzMTE3MVxuICAuOTkxMTAyMDk3MTEzODI5OFxuICAxO1xuXG5cbi8qKlxuICogQ2FsY3VsYXRlIHRoZSBsdW1pbmFuY2UgZm9yIGEgY29sb3IuXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHJpdmF0ZVxuICogLS0tXG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yIOKAlOKAiiBUaGUgY29sb3IgdG8gYmUgYW5hbHlzZWRcbiAqL1xuXG5AZnVuY3Rpb24gbWQtY2hlY2stbHVtaW5hbmNlKCRjb2xvcikge1xuICAkcmVkOiBudGgoJG1kLWxpbmVhci1jaGFubmVsLXZhbHVlcywgcmVkKCRjb2xvcikgKyAxKTtcbiAgJGdyZWVuOiBudGgoJG1kLWxpbmVhci1jaGFubmVsLXZhbHVlcywgZ3JlZW4oJGNvbG9yKSArIDEpO1xuICAkYmx1ZTogbnRoKCRtZC1saW5lYXItY2hhbm5lbC12YWx1ZXMsIGJsdWUoJGNvbG9yKSArIDEpO1xuXG4gIEByZXR1cm4gLjIxMjYgKiAkcmVkICsgLjcxNTIgKiAkZ3JlZW4gKyAuMDcyMiAqICRibHVlO1xufVxuXG5cbi8qKlxuICogQ2FsY3VsYXRlIHRoZSBjb250cmFzdCByYXRpbyBiZXR3ZWVuIHR3byBjb2xvcnMuXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHJpdmF0ZVxuICogLS0tXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJnIOKAlOKAiiBUaGUgYmcgY29sb3JcbiAqIEBwYXJhbSB7c3RyaW5nfSAkZmcg4oCU4oCKIFRoZSBmZyBjb2xvciB0byBiZSBjb21wYXJlZFxuICovXG5cbkBmdW5jdGlvbiBtZC1jYWxjdWxhdGUtY29udHJhc3QoJGJnLCAkZmcpIHtcbiAgJGJnTHVtOiBtZC1jaGVjay1sdW1pbmFuY2UoJGJnKSArIC4yO1xuICAkZmdMdW06IG1kLWNoZWNrLWx1bWluYW5jZSgkZmcpICsgLjI7XG5cbiAgQHJldHVybiBtYXgoJGJnTHVtLCAkZmdMdW0pIC8gbWluKCRiZ0x1bSwgJGZnTHVtKTtcbn1cblxuXG4vKipcbiAqIERldGVybWluZSB3aGV0aGVyIHRvIHVzZSBkYXJrIG9yIGxpZ2h0IHRleHQgb24gdG9wIG9mIGdpdmVuIGNvbG9yLlxuICogUmV0dXJucyBkYXJrIG9yIGxpZ2h0IGRlcGVuZGluZyBvbiB0aGUgY29udHJhc3QgcmF0aW8uXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHJpdmF0ZVxuICogLS0tXG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yIOKAlOKAiiBUaGUgZGVzaXJlZCBjb2xvciB0byBiZSBjb21wYXJlZFxuICovXG5cbkBmdW5jdGlvbiBtZC1waWNrLWNvbnRyYXN0KCRjb2xvcikge1xuICAkbGlnaHRDb2xvcjogbWFwLWdldChtYXAtZ2V0KCRtZC1jb2xvci1sZXZlbHMsIGRhcmspLCB0ZXh0LXByaW1hcnkpO1xuICAkbGlnaHRDb250cmFzdDogbWQtY2FsY3VsYXRlLWNvbnRyYXN0KCRjb2xvciwgJGxpZ2h0Q29sb3IpO1xuICAkZGFya0NvbG9yOiBtYXAtZ2V0KG1hcC1nZXQoJG1kLWNvbG9yLWxldmVscywgbGlnaHQpLCB0ZXh0LXByaW1hcnkpO1xuICAkZGFya0NvbnRyYXN0OiBtZC1jYWxjdWxhdGUtY29udHJhc3QoJGNvbG9yLCAkZGFya0NvbG9yKTtcblxuICBAaWYgKCRsaWdodENvbnRyYXN0ID4gJGRhcmtDb250cmFzdCkge1xuICAgIEByZXR1cm4gXCJkYXJrXCI7XG4gIH1cblxuICBAcmV0dXJuIFwibGlnaHRcIjtcbn1cbiIsIkBpbXBvcnQgJy4uL2Jhc2UvdGhlbWUuc2Nzcyc7XG5cbi8qKlxuICogT3ZlcnJpZGUgZXh0ZW5kaW5nIHRoZSBkZWZhdWx0IHBhbGV0dGUgZ2l2aW5nIG5ldyB2YWx1ZXMuIEl0IHdpbGwgZXh0ZW5kXG4gKiB0aGUgZGVmYXVsdCB2YWx1ZXMgb2YgdGhlIHBhbGV0dGUgaWYgaGFzIGEgcHJvcGVydHkgbWlzc2luZy5cbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiBAaW5jbHVkZSBtZC1vdmVycmlkZS1wYWxldHRlICgoXG4gKiAgIGFjY2VudDogYmx1ZSxcbiAqICAgdGhlbWU6IFwiZGFya1wiXG4gKiApKVxuICpcbiAqIC0tLVxuICogQGFjY2VzcyBwdWJsaWNcbiAqIEBwYXJhbSB7bWFwfSAkcGFsZXR0ZSDigJTigIogVGhlIG5ldyBwYWxldHRlXG4gKi9cblxuQG1peGluIG1kLW92ZXJyaWRlLXBhbGV0dGUgKCRwYWxldHRlKSB7XG4gICRtZC1kZWZhdWx0LXBhbGV0dGU6IG1hcC1tZXJnZSgkbWQtZGVmYXVsdC1wYWxldHRlLCAkcGFsZXR0ZSkgIWdsb2JhbDtcbn1cblxuXG4vKipcbiAqIENyZWF0ZSBhIG5ldyB0aGVtZSBiYXNlZCBvbiBhIGdpdmVuIHBhbGV0dGUuIEl0IHdpbGwgZXh0ZW5kIHRoZSBkZWZhdWx0XG4gKiB2YWx1ZXMgb2YgdGhlIHBhbGV0dGUgaWYgaGFzIGEgcHJvcGVydHkgbWlzc2luZy5cbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiBAaW5jbHVkZSBtZC1yZWdpc3Rlci10aGVtZShcImFsdGVybmF0aXZlXCIsIChcbiAqICAgcHJpbWFyeTogIzIxMjEyMSxcbiAqICAgYWNjZW50OiAjQ0REQzM5LFxuICogICB0aGVtZTogZGFya1xuICogKSk7XG4gKlxuICogLS0tXG4gKiBAYWNjZXNzIHB1YmxpY1xuICogQHBhcmFtIHtzdHJpbmd9ICRuYW1lIOKAlOKAiiBUaGUgdGhlbWUgbmFtZSB0byBiZSB1c2VkIHdpdGggdGhlIFZ1ZSBNYXRlcmlhbFxuICogQHBhcmFtIHttYXB9ICRwYWxldHRlIFskbWQtZGVmYXVsdC1wYWxldHRlXSDigJTigIogVGhlIHRoZW1lIHBhbGV0dGVcbiAqL1xuXG5AbWl4aW4gbWQtcmVnaXN0ZXItdGhlbWUgKCRuYW1lLCAkcGFsZXR0ZTogJG1kLWRlZmF1bHQtcGFsZXR0ZSkge1xuICAkcGFsZXR0ZTogbWFwLW1lcmdlKCRtZC1kZWZhdWx0LXBhbGV0dGUsICRwYWxldHRlKTtcbiAgJHRoZW1lOiBtYXAtbWVyZ2UoJG1kLXRoZW1lcywgKFxuICAgICN7JG5hbWV9OiAkcGFsZXR0ZVxuICApKTtcblxuICA6cm9vdCB7XG4gICAgQGVhY2ggJHR5cGUsICR2YWx1ZSBpbiAkcGFsZXR0ZSB7XG4gICAgICAtLW1kLXRoZW1lLSN7JG5hbWV9LSN7JHR5cGV9OiAjeyR2YWx1ZX1cbiAgICB9XG4gIH1cblxuICAkbWQtdGhlbWVzOiAkdGhlbWUgIWdsb2JhbDtcblxuICBAaW5jbHVkZSBtZC1iYXNlLXRoZW1lO1xufVxuXG5cbi8qKlxuICogVGhlbWUgcGllY2VzIG9mIGEgZ2l2ZW4gc2NzcyBjb2RlIGZvciBhbGwgcHJlIHJlZ2lzdGVyZWQgdGhlbWVzLlxuICogLS0tXG4gKiBVc2FnZSBleGFtcGxlOlxuICpcbiAqIC5tZC1idXR0b24ge1xuICogICBtaW4td2lkdGg6IDg4cHg7XG4gKiAgIGhlaWdodDogNDBweDtcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICogICBib3JkZXItcmFkaXVzOiAycHg7XG4gKiAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xuICpcbiAqICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICogICAgIGJhY2tncm91bmQ6IG1kLXRoZW1lKHByaW1hcnkpO1xuICogICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LXByaW1hcnkpO1xuICogICB9XG4gKlxuICogICAmLm1kLWFjY2VudCB7XG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICogICAgICAgYmFja2dyb3VuZDogbWQtdGhlbWUoYWNjZW50KTtcbiAqICAgICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LWFjY2VudCk7XG4gKiAgICAgfTtcbiAqICAgfVxuICogfVxuICovXG5cbkBtaXhpbiBtZC10aGVtZS1jb21wb25lbnQgKCkge1xuICBAZWFjaCAkdGhlbWUsICRwYWxldHRlIGluICRtZC10aGVtZXMge1xuICAgICRtZC10aGVtZS1wYWxldHRlOiBtYXAtbWVyZ2UoJG1kLXRoZW1lLXBhbGV0dGUsICRwYWxldHRlKSAhZ2xvYmFsO1xuICAgICRtZC1jdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcblxuICAgICYubWQtdGhlbWUtI3skdGhlbWV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICogVGhlbWUgcGllY2VzIG9mIGEgZ2l2ZW4gc2NzcyBjb2RlIGZvciBhbGwgcHJlIHJlZ2lzdGVyZWQgdGhlbWVzIGJhc2VkIG9uIHBhcmVudC5cbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiAubWQtZm9vIHtcbiAqICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50LXJlbGF0aXZlKCkge1xuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQsIHByaW1hcnkpO1xuICogICB9XG4gKiB9XG4gKi9cblxuQG1peGluIG1kLXRoZW1lLWNvbXBvbmVudC1yZWxhdGl2ZSAoKSB7XG4gIEBlYWNoICR0aGVtZSwgJHBhbGV0dGUgaW4gJG1kLXRoZW1lcyB7XG4gICAgJG1kLXRoZW1lLXBhbGV0dGU6IG1hcC1tZXJnZSgkbWQtdGhlbWUtcGFsZXR0ZSwgJHBhbGV0dGUpICFnbG9iYWw7XG4gICAgJG1kLWN1cnJlbnQtdGhlbWU6ICR0aGVtZSAhZ2xvYmFsO1xuXG4gICAgLm1kLXRoZW1lLSN7JHRoZW1lfSAmIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5XG4gKiAtLS1cbiAqIFVzYWdlIGV4YW1wbGU6XG4gKlxuICogLm1kLWJ1dHRvbiB7XG4gKiAgIG1pbi13aWR0aDogODhweDtcbiAqICAgaGVpZ2h0OiA0MHB4O1xuICogICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gKiAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XG4gKlxuICogICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgcHJpbWFyeSk7XG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gKiAgIH1cbiAqXG4gKiAgICYubWQtYWNjZW50IHtcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gKiAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBhY2NlbnQpO1xuICogICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYWNjZW50KTtcbiAqICAgICB9XG4gKiAgIH1cbiAqIH1cbiAqXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHVibGljXG4gKiBAcGFyYW0ge3N0cmluZ30gJHByb3BlcnR5IOKAlOKAiiBUaGUgY3NzIHByb3BlcnR5XG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIEEgcGFsZXR0ZSB0eXBlXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcbiAqIEBwYXJhbSB7bnVtYmVyfSAkb3BhY2l0eSDigJTigIogVGhlIG9wYWNpdHkgYW1vdW50XG4gKi9cblxuQG1peGluIG1kLXRoZW1lLXByb3BlcnR5ICgkcHJvcGVydHksICR0eXBlLCAkYmFja2dyb3VuZDogXCJcIiwgJG9wYWNpdHk6IFwiXCIpIHtcbiAgJHZhbHVlOiBtZC10aGVtZSgkdHlwZSwgJGJhY2tncm91bmQpO1xuICAkdmFyaWFudDogbnVsbDtcblxuICBAaWYgJGJhY2tncm91bmQgIT0gXCJcIiB7XG4gICAgJHZhcmlhbnQ6IC1vbi0jeyRiYWNrZ3JvdW5kfTtcbiAgfVxuXG4gIEBpZiAkb3BhY2l0eSAhPSBcIlwiIHtcbiAgICAkdmFsdWU6IHJnYmEoJHZhbHVlLCAkb3BhY2l0eSk7XG4gIH1cblxuICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgI3skcHJvcGVydHl9OiB2YXIoLS1tZC10aGVtZS0jeyRtZC1jdXJyZW50LXRoZW1lfS0jeyR0eXBlfSN7JHZhcmlhbnR9LCAkdmFsdWUpO1xufVxuXG4vKipcbiAqIFRoZW1lIGEgc2luZ2xlIGNzcyBwcm9wZXJ0eSBkYXJrZW5pbmcgdGhlIGNvbG9yIGJ5IGEgY2VydGFpbiBhbW91bnRcbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiAubWQtYnV0dG9uIHtcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xuICogICBoZWlnaHQ6IDQwcHg7XG4gKiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICogICB0cmFuc2l0aW9uOiAuM3MgZWFzZTtcbiAqXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1kYXJrZW4oYmFja2dyb3VuZCwgcHJpbWFyeSwgYmFja2dyb3VuZCwgMTAlKTtcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcbiAqICAgfVxuICogfVxuICpcbiAqIC0tLVxuICogQGFjY2VzcyBwdWJsaWNcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcHJvcGVydHkg4oCU4oCKIFRoZSBjc3MgcHJvcGVydHlcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSBwYWxldHRlIHR5cGVcbiAqIEBwYXJhbSB7c3RyaW5nfSAkYmFja2dyb3VuZCDigJTigIogVGhlIGJhY2tncm91bmQgY29sb3IgdG8gYW5hbHlzZSBjb250cmFzdFxuICogQHBhcmFtIHtzdHJpbmd9ICRkYXJrZW4g4oCU4oCKIFRoZSBkYXJrZW4gYW1vdW50IHRvIGFwcGx5IHRvIHRoZSBjb2xvclxuICovXG5cbkBtaXhpbiBtZC10aGVtZS1wcm9wZXJ0eS1kYXJrZW4gKCRwcm9wZXJ0eSwgJHR5cGUsICRiYWNrZ3JvdW5kOiBcIlwiLCAkZGFya2VuOiBcIlwiKSB7XG4gICR2YWx1ZTogbWQtdGhlbWUoJHR5cGUsICRiYWNrZ3JvdW5kKTtcbiAgJHZhcmlhbnQ6IG51bGw7XG5cbiAgQGlmICRiYWNrZ3JvdW5kICE9IFwiXCIge1xuICAgICR2YXJpYW50OiAtb24tI3skYmFja2dyb3VuZH07XG4gIH1cblxuICBAaWYgJGRhcmtlbiAhPSBcIlwiIHtcbiAgICAkdmFsdWU6IGRhcmtlbigkdmFsdWUsICRkYXJrZW4pO1xuICB9XG5cbiAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICN7JHByb3BlcnR5fTogdmFyKC0tbWQtdGhlbWUtI3skbWQtY3VycmVudC10aGVtZX0tI3skdHlwZX0jeyR2YXJpYW50fSwgJHZhbHVlKTtcbn1cblxuLyoqXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHkgYnlcbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiAubWQtYnV0dG9uIHtcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xuICogICBoZWlnaHQ6IDQwcHg7XG4gKiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICogICB0cmFuc2l0aW9uOiAuM3MgZWFzZTtcbiAqXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZCwgZ3JleSwgMTAwLCB0b29sYmFyLCBiYWNrZ3JvdW5kKTtcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAqICAgfVxuICogfVxuICpcbiAqIC0tLVxuICogQGFjY2VzcyBwdWJsaWNcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcHJvcGVydHkg4oCU4oCKIFRoZSBjc3MgcHJvcGVydHlcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIEEgdmFsaWQgbWF0ZXJpYWwgcGFsZXR0ZSBjb2xvciBuYW1lXG4gKiBAcGFyYW0ge3N0cmluZ30gJGh1ZSDigJTigIogVGhlIGh1ZSBhbW91bnQgdG8gZ2V0IHRoZSBoZXggY29sb3JcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogVGhlIHR5cGUgb2YgdmFyaWFibGVcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdmFyaWFudCDigJTigIogVGhlIHR5cGUgb2YgY29uc3RyYXN0ZWQgdmFyaWFibGVcbiAqL1xuXG5AbWl4aW4gbWQtdGhlbWUtcHJvcGVydHktYnktaHVlICgkcHJvcGVydHksICRjb2xvciwgJGh1ZSwgJHR5cGUsICRzZWNvbmRhcnkpIHtcbiAgJGhleDogbWQtZ2V0LXBhbGV0dGUtY29sb3IoJGNvbG9yLCAkaHVlKTtcbiAgJHZhcmlhbnQ6IG51bGw7XG5cbiAgQGlmICRzZWNvbmRhcnkgIT0gXCJcIiB7XG4gICAgJHZhcmlhbnQ6IC0jeyRzZWNvbmRhcnl9O1xuICB9XG5cbiAgI3skcHJvcGVydHl9OiAkaGV4O1xuICAjeyRwcm9wZXJ0eX06IHZhcigtLW1kLXRoZW1lLSN7JG1kLWN1cnJlbnQtdGhlbWV9LSN7JHR5cGV9I3t2YXJpYW50fSwgJGhleCk7XG59XG4iLCJAbWl4aW4gbWQtYmFzZS10aGVtZSAoKSB7XG4gIDpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSk6OnNlbGVjdGlvbiB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50LXJlbGF0aXZlKCkge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XG4gICAgfVxuICB9XG5cbiAgYTpub3QoLm1kLWJ1dHRvbikge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudC1yZWxhdGl2ZSgpIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kLCAuOCk7XG4gICAgICB9XG5cbiAgICAgICYubWQtYWNjZW50IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGFjY2VudCwgYmFja2dyb3VuZCk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGFjY2VudCwgYmFja2dyb3VuZCwgLjgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaHRtbCB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZC12YXJpYW50KTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQtdmFyaWFudCk7XG4gICAgfVxuICB9XG5cbiAgLm1kLWNhcHRpb24sXG4gIC5tZC1kaXNwbGF5LTEsXG4gIC5tZC1kaXNwbGF5LTIsXG4gIC5tZC1kaXNwbGF5LTMsXG4gIC5tZC1kaXNwbGF5LTQge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudC1yZWxhdGl2ZSgpIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCwgYmFja2dyb3VuZC12YXJpYW50KTtcbiAgICB9XG4gIH1cblxuICAubWQtc2Nyb2xsYmFyIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIsXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQsIHNjcm9sbGJhci1iYWNrZ3JvdW5kLCBiYWNrZ3JvdW5kLXZhcmlhbnQpO1xuICAgICAgfVxuXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQsIHNjcm9sbGJhciwgYmFja2dyb3VuZC12YXJpYW50KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kQXBwL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZEF1dG9jb21wbGV0ZS90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRBdmF0YXIvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kQm90dG9tQmFyL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZEJ1dHRvbi90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRDYXJkL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZENoZWNrYm94L3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZENoaXBzL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZENvbnRlbnQvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kRGF0ZXBpY2tlci90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWREaWFsb2cvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kRGl2aWRlci90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWREcmF3ZXIvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kRW1wdHlTdGF0ZS90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRGaWVsZC90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRJY29uL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZEltYWdlL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZExpc3QvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kTWVudS90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRQcm9ncmVzcy90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRSYWRpby90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRTbmFja2Jhci90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRTcGVlZERpYWwvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kU3RlcHBlcnMvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kU3ViaGVhZGVyL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZFN3aXRjaC90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRUYWJsZS90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRUYWJzL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZFRhYnMvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kVG9vbGJhci90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRUb29sdGlwL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZEJhZGdlL3RoZW1lXCI7IiwiLm1kLWFwcDpub3QoLm1kLW92ZXJsYXApIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICB9XG59XG4iLCIubWQtbGlzdCB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICAubWQtYXV0b2NvbXBsZXRlLWl0ZW1zIHtcbiAgICAgIC5tZC1oaWdobGlnaHQtdGV4dC1tYXRjaCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCwgXCJcIiwgLjU0KTtcbiAgICB9XG4gIH1cbn1cblxuLm1kLWF1dG9jb21wbGV0ZSB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICAmLm1kLWF1dG9jb21wbGV0ZS1ib3gge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG5cbiAgICAgICYubWQtZm9jdXNlZCB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1oaW50LCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWQtdG9vbGJhciAmIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCwgXCJcIiwgLjEyKTtcblxuICAgICAgICBsYWJlbCxcbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KC13ZWJraXQtdGV4dC1maWxsLWNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tZC1mb2N1c2VkIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcblxuICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWhpbnQsIGJhY2tncm91bmQpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoLXdlYmtpdC10ZXh0LWZpbGwtY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tZC1hdXRvY29tcGxldGUtYm94LWNvbnRlbnQge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1ib3R0b20tY29sb3IsIGRpdmlkZXIpO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIG1kLWF2YXRhci1pY29uLXNwZWMgKCRjb2xvcikge1xuICAmLm1kLWF2YXRhci1pY29uIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkY29sb3IpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRjb2xvcik7XG5cbiAgICAubWQtaWNvbiB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkY29sb3IpO1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCAkY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG4ubWQtYXZhdGFyIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLWF2YXRhci1pY29uLXNwZWMoaWNvbi1kaXNhYmxlZCk7XG5cbiAgICAmLm1kLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgICBAaW5jbHVkZSBtZC1hdmF0YXItaWNvbi1zcGVjKHByaW1hcnkpO1xuICAgIH1cblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCk7XG4gICAgICBAaW5jbHVkZSBtZC1hdmF0YXItaWNvbi1zcGVjKGFjY2VudCk7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gbWQtYm90dG9tLWJhci1zcGVjICgkcHJpbWFyeSkge1xuICAmLm1kLXR5cGUtZml4ZWQge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuXG4gICAgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcblxuICAgICAgLm1kLWljb24ge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHByaW1hcnksIGJhY2tncm91bmQpO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5tZC10eXBlLXNoaWZ0IHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkcHJpbWFyeSk7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJHByaW1hcnksIC43KTtcblxuICAgID4gLm1kLXJpcHBsZSB7XG4gICAgICAubWQtcmlwcGxlLXdhdmUge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1kYXJrZW4oYmFja2dyb3VuZC1jb2xvciwgJHByaW1hcnksICRwcmltYXJ5LCAxMCUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZC1pY29uIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBpY29uLCAkcHJpbWFyeSk7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGljb24sICRwcmltYXJ5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtYm90dG9tLWJhci1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5KTtcblxuICAgICAgLm1kLWFjdGl2ZSB7XG4gICAgICAgIC5tZC1pY29uIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSk7XG5cbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tZC1ib3R0b20tYmFyIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLWJvdHRvbS1iYXItc3BlYyhwcmltYXJ5KTtcblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLWJvdHRvbS1iYXItc3BlYyhhY2NlbnQpO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIG1kLWljb24tb24tYnV0dG9ucyAoJHN0YXRlLCAkdHlwZSkge1xuICAubWQtaWNvbi1mb250IHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHN0YXRlLCAkdHlwZSk7XG4gIH1cblxuICAubWQtaWNvbi1pbWFnZSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJHN0YXRlLCAkdHlwZSk7XG4gIH1cbn1cblxuLm1kLWJ1dHRvbiB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcblxuICAgICYubWQtcHJpbWFyeSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnMocHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgJi5tZC1hY2NlbnQge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGFjY2VudCwgYmFja2dyb3VuZCk7XG4gICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnMoYWNjZW50LCBiYWNrZ3JvdW5kKTtcbiAgICB9XG5cbiAgICAmLm1kLXJhaXNlZCB7XG4gICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkLWJhY2tncm91bmQsIGJhY2tncm91bmQpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgZGlzYWJsZWQpO1xuICAgICAgfVxuXG4gICAgICAmOm5vdChbZGlzYWJsZWRdKSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcblxuICAgICAgICAmLm1kLXByaW1hcnkge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLWljb24tb24tYnV0dG9ucyh0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tZC1hY2NlbnQge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcbiAgICAgICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnModGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1mYWIge1xuICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXNhYmxlZC1iYWNrZ3JvdW5kLCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoW2Rpc2FibGVkXSkge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xuICAgICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnModGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuXG4gICAgICAgICYubWQtcHJpbWFyeSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgZGlzYWJsZWQsIGJhY2tncm91bmQpO1xuICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKGljb24tZGlzYWJsZWQsIGJhY2tncm91bmQpO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIG1kLWNhcmQoJGJhc2UpIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGJhc2UpO1xuICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkYmFzZSk7XG5cbiAgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnMge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRiYXNlKTtcbiAgfVxuXG4gIC5tZC1jYXJkLWhlYWRlcixcbiAgLm1kLWNhcmQtYWN0aW9ucyB7XG4gICAgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkYmFzZSk7XG5cbiAgICAgICYubWQtaWNvbi1idXR0b24ge1xuICAgICAgICAubWQtaWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJGJhc2UsIC41NCk7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCAkYmFzZSwgLjU0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gLm1kLWNhcmQtYXJlYSB7XG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyLCAkYmFzZSk7XG4gICAgfVxuICB9XG59XG5cbi5tZC1jYXJkIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLWNhcmQoYmFja2dyb3VuZCk7XG5cbiAgICAmLm1kLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWQtY2FyZChwcmltYXJ5KTtcbiAgICB9XG5cbiAgICAmLm1kLWFjY2VudCB7XG4gICAgICBAaW5jbHVkZSBtZC1jYXJkKGFjY2VudCk7XG4gICAgfVxuICB9XG59XG4iLCIubWQtY2hlY2tib3gge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgJi5tZC1jaGVja2VkIHtcbiAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIGFjY2VudCk7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWQtcmlwcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGFjY2VudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1pbmRldGVybWluYXRlIHtcbiAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjU0KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuMyk7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuNTQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWQtcmlwcGxlIHtcbiAgICAgICAgY29sb3I6IHJnYmEoIzAwMCwgLjU0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWNoZWNrZWQubWQtcHJpbWFyeSB7XG4gICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgcHJpbWFyeSk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1yaXBwbGUge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xuICAgICAgJi5tZC1pbmRldGVybWluYXRlIHtcbiAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjU0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1kLXJpcHBsZSB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoIzAwMCwgLjU0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuNTQpO1xuICAgICAgfVxuXG4gICAgICAmLm1kLWRpc2FibGVkIHtcbiAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4yNik7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1kLWNoZWNrZWQge1xuICAgICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4yNik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC4yNik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAmLm1kLWluZGV0ZXJtaW5hdGUge1xuICAgICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC43KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1kLXJpcHBsZSB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xuICAgICAgfVxuXG4gICAgICAmLm1kLWRpc2FibGVkIHtcbiAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubWQtY2hlY2tlZCB7XG4gICAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuMyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWQtY2hpcCB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBoaWdobGlnaHQpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnkpO1xuXG4gICAgLm1kLWljb24ubWQtaWNvbi1pbWFnZSBzdmcge1xuICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCB0ZXh0LXByaW1hcnkpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnksIHRleHQtcHJpbWFyeSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSk7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1kZWxldGFibGUsXG4gICAgJi5tZC1jbGlja2FibGUge1xuICAgICAgJjpub3QoLm1kLWRpc2FibGVkKTpob3ZlciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGljb24pO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBpY29uKTtcblxuICAgICAgICAubWQtaWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCBpY29uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZC1pbnB1dC1hY3Rpb24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQsICcnLCAuODcpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBpY29uLCBiYWNrZ3JvdW5kKTtcblxuICAgICAgICAgIC5tZC1pY29uIHN2ZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCBpY29uLCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBpY29uLCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcblxuICAgICAgLm1kLWlucHV0LWFjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBpY29uLCBkaXNhYmxlZCk7XG5cbiAgICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQsIGRpc2FibGVkKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWRlbGV0YWJsZSxcbiAgICAgICYubWQtY2xpY2thYmxlIHtcbiAgICAgICAgJjpub3QoLm1kLWRpc2FibGVkKTpob3ZlciB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgaWNvbik7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaWNvbik7XG5cbiAgICAgICAgICAubWQtaW5wdXQtYWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQsICcnLCAuODcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtYWNjZW50LFxuICAgICYubWQtZHVwbGljYXRlZCB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYWNjZW50KTtcblxuICAgICAgLm1kLWlucHV0LWFjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBpY29uLCBkaXNhYmxlZCk7XG5cbiAgICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQsIGRpc2FibGVkKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWRlbGV0YWJsZSxcbiAgICAgICYubWQtY2xpY2thYmxlIHtcbiAgICAgICAgJjpub3QoLm1kLWRpc2FibGVkKTpob3ZlciB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaWNvbik7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgaWNvbik7XG5cbiAgICAgICAgICAubWQtaW5wdXQtYWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQsICcnLCAuODcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaGlnaGxpZ2h0LCAnJywgLjEpO1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtYWNjZW50KTtcbiAgICB9XG4gIH1cbn1cblxuLm1kLWNoaXBzIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgIC5tZC1jbGVhciAge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC4yKTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC5tZC1jbGVhciAge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC4yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tZC1jb250ZW50IHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuXG4gICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gICAgfVxuXG4gICAgJi5tZC1hY2NlbnQge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XG4gICAgfVxuXG4gICAgLm1kLWFwcCAmIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1sZWZ0LWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1yaWdodC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG59XG4iLCIubWQtZGF0ZXBpY2tlci1kaWFsb2cge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAubWQtZGF0ZXBpY2tlci1oZWFkZXIge1xuICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgdGV4dC1wcmltYXJ5LCAnJywgLjA2KTtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXIge1xuICAgICAgJjphZnRlcixcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLWRhdGVwaWNrZXItYm9keS1mb290ZXIge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICB9XG5cbiAgICAubWQtZGF0ZXBpY2tlci13ZWVrIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLm1kLWRhdGVwaWNrZXItZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGRpc2FibGVkLCBiYWNrZ3JvdW5kKTtcbiAgICB9XG5cbiAgICAubWQtZGF0ZXBpY2tlci10b2RheSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLm1kLWRhdGVwaWNrZXItZGF5LWJ1dHRvbixcbiAgICAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24sXG4gICAgLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b24ge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpdmlkZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZC1kYXRlcGlja2VyLWRheS1idXR0b24ge1xuICAgICAgJi5tZC1kYXRlcGlja2VyLXNlbGVjdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZC1kYXRlcGlja2VyLW1vbnRoLWJ1dHRvbixcbiAgICAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbiB7XG4gICAgICAmLm1kLWRhdGVwaWNrZXItc2VsZWN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3RvciB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItYm90dG9tLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5tZC1kaWFsb2cge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gIH1cbn1cbiIsIi5tZC1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpdmlkZXIpO1xuICB9XG59XG4iLCIubWQtZHJhd2VyIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuXG4gICAgJi5tZC1wZXJzaXN0ZW50LW1pbmkge1xuICAgICAgJi5tZC1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLXJpZ2h0LWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cblxuICAgICAgJi5tZC1yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1sZWZ0LWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBtZC1lbXB0eS1zdGF0ZS1zcGVjICgkY29sb3IpIHtcbiAgLm1kLWVtcHR5LXN0YXRlLWljb24ge1xuICAgICYubWQtaWNvbi1pbWFnZSB7XG4gICAgICBzdmcge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkY29sb3IsIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtaWNvbi1mb250IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkY29sb3IsIGJhY2tncm91bmQpO1xuICAgIH1cbiAgfVxufVxuXG4ubWQtZW1wdHktc3RhdGUge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtZW1wdHktc3RhdGUtc3BlYyhkaXNhYmxlZCk7XG5cbiAgICAmLm1kLXJvdW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQsIFwiXCIsIC4wNik7XG4gICAgfVxuXG4gICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLWVtcHR5LXN0YXRlLXNwZWMocHJpbWFyeSk7XG4gICAgfVxuXG4gICAgJi5tZC1hY2NlbnQge1xuICAgICAgQGluY2x1ZGUgbWQtZW1wdHktc3RhdGUtc3BlYyhhY2NlbnQpO1xuICAgIH1cbiAgfVxufVxuIiwiLm1kLWZpZWxkIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC40Mik7XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1oZWxwZXItdGV4dCxcbiAgICAgIC5tZC1jb3VudCxcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgY29sb3I6IHJnYmEoIzAwMCwgLjU0KTtcbiAgICAgIH1cblxuICAgICAgLm1kLXN1ZmZpeCwgLm1kLXByZWZpeCB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1pbnB1dCxcbiAgICAgIC5tZC10ZXh0YXJlYSB7XG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1mb2N1c2VkLFxuICAgICAgJi5tZC1oYXMtdmFsdWUge1xuICAgICAgICAubWQtaW5wdXQsXG4gICAgICAgIC5tZC10ZXh0YXJlYSB7XG4gICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHJnYmEoIzAwMCwgLjg3KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuNDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgcHJpbWFyeSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1kaXNhYmxlZCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgjMDAwLCAuMzgpIDAlLCByZ2JhKCMwMDAsIC4zOCkgMzMlLCB0cmFuc3BhcmVudCAwJSk7XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCxcbiAgICAgICAgLm1kLWlucHV0LFxuICAgICAgICAubWQtdGV4dGFyZWEge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC40Mik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC43KTtcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcbiAgICAgIH1cblxuICAgICAgLm1kLWhlbHBlci10ZXh0LFxuICAgICAgLm1kLWNvdW50LFxuICAgICAgbGFiZWwge1xuICAgICAgICBjb2xvcjogcmdiYSgjZmZmLCAuNyk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1zdWZmaXgsIC5tZC1wcmVmaXgge1xuICAgICAgICBjb2xvcjogcmdiYSgjZmZmLCAuNyk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1pbnB1dCxcbiAgICAgIC5tZC10ZXh0YXJlYSB7XG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCNmZmYsIC43KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWZvY3VzZWQsXG4gICAgICAmLm1kLWhhcy12YWx1ZSB7XG4gICAgICAgIC5tZC1pbnB1dCxcbiAgICAgICAgLm1kLXRleHRhcmVhIHtcbiAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIHByaW1hcnkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubWQtZGlzYWJsZWQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoI2ZmZiwgLjcpIDAlLCByZ2JhKCNmZmYsIC43KSAzMyUsIHRyYW5zcGFyZW50IDAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsLFxuICAgICAgICAubWQtaW5wdXQsXG4gICAgICAgIC5tZC10ZXh0YXJlYSB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoI2ZmZiwgLjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAubWQtaWNvbiB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZC12YXJpYW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWludmFsaWQge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCByZWQsIEE0MDAsIGZpZWxkLCBlcnJvcik7XG4gICAgICB9XG5cbiAgICAgICYubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShib3JkZXItY29sb3IsIHJlZCwgQTQwMCwgZmllbGQsIGVycm9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShjb2xvciwgcmVkLCBBNDAwLCBmaWVsZCwgZXJyb3IpO1xuICAgICAgfVxuXG4gICAgICAubWQtZXJyb3Ige1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgZmllbGQsIGVycm9yKTtcbiAgICAgIH1cblxuICAgICAgLm1kLWRhdGUtaWNvbixcbiAgICAgIC5tZC1kYXRlLWljb24gc3ZnIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGNvbG9yLCByZWQsIEE0MDAsIGZpZWxkLCBlcnJvcik7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShmaWxsLCByZWQsIEE0MDAsIGZpZWxkLCBlcnJvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1mb2N1c2VkLFxuICAgICYubWQtaGlnaGxpZ2h0IHtcbiAgICAgIC5tZC1pbnB1dCxcbiAgICAgIC5tZC10ZXh0YXJlYSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cblxuICAgICAgPiAubWQtaWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1mb2N1c2VkIHtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtZGlzYWJsZWQge1xuICAgICAgLm1kLWljb24gc3ZnIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgZGlzYWJsZWQsIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1kLWljb24ge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgJi5tZC1pY29uLWltYWdlIHtcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGljb24sIGJhY2tncm91bmQpO1xuXG4gICAgICAgICYubWQtcHJpbWFyeSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1kLWFjY2VudCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtaWNvbi1mb250IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBpY29uLCBiYWNrZ3JvdW5kKTtcblxuICAgICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgfVxuXG4gICAgICAmLm1kLWFjY2VudCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBhY2NlbnQsIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiIiwiLm1kLWxpc3Qge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAmLm1kLWRvdWJsZS1saW5lIC5tZC1saXN0LWl0ZW0tdGV4dCA6bnRoLWNoaWxkKDIpIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgJi5tZC10cmlwbGUtbGluZSAubWQtbGlzdC1pdGVtLXRleHQgOm50aC1jaGlsZCgzKSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5tZC1oaWdobGlnaHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLm1kLWxpc3QtaXRlbS1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAgICY6bm90KC5tZC1saXN0LWl0ZW0tZGVmYXVsdCk6bm90KFtkaXNhYmxlZF0pOmhvdmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIFtkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGRpc2FibGVkLCBiYWNrZ3JvdW5kKTtcbiAgICB9XG5cbiAgICAubWQtc2VsZWN0ZWQsXG4gICAgLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSB7XG4gICAgICAubWQtbGlzdC1pdGVtLWNvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLWxpc3QtaXRlbS1leHBhbmQubWQtYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gbWQtbWVudS1pdGVtLXNwZWMgKCRjb2xvcikge1xuICAubWQtbGlzdC1pdGVtLWxpbmssXG4gIC5tZC1saXN0LWl0ZW0tcm91dGVyLFxuICAubWQtbGlzdC1pdGVtLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRjb2xvciwgYmFja2dyb3VuZCk7XG4gIH1cbn1cblxuLm1kLW1lbnUtaXRlbSB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICAmLm1kLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWQtbWVudS1pdGVtLXNwZWMocHJpbWFyeSk7XG4gICAgfVxuXG4gICAgJi5tZC1hY2NlbnQge1xuICAgICAgQGluY2x1ZGUgbWQtbWVudS1pdGVtLXNwZWMoYWNjZW50KTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBtZC1wcm9ncmVzcy1iYXItaW5kZXRlcm1pbmF0ZSAoJGh1ZSkge1xuICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaHVlLCBudWxsLCAuMzgpO1xuXG4gIC5tZC1wcm9ncmVzcy1iYXItdHJhY2ssXG4gIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaHVlKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kLXByb2dyZXNzLWJhci1kZXRlcm1pbmF0ZSAoJGh1ZSkge1xuICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaHVlLCBudWxsLCAuMzgpO1xuXG4gIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGh1ZSk7XG4gIH1cbn1cblxuQG1peGluIG1kLXByb2dyZXNzLWJhci1idWZmZXIgKCRodWUpIHtcbiAgLm1kLXByb2dyZXNzLWJhci1maWxsIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaHVlKTtcbiAgfVxuXG4gIC5tZC1wcm9ncmVzcy1iYXItdHJhY2sge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUsIG51bGwsIC4zOCk7XG4gIH1cblxuICAubWQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlciB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCAkaHVlLCBudWxsLCAuMzgpO1xuICB9XG59XG5cbkBtaXhpbiBtZC1wcm9ncmVzcy1zcGlubmVyLXNwZWMgKCRodWUpIHtcbiAgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xlIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShzdHJva2UsICRodWUpO1xuICB9XG59XG5cbi5tZC1wcm9ncmVzcy1iYXIge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgJi5tZC1pbmRldGVybWluYXRlLFxuICAgICYubWQtcXVlcnkge1xuICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWluZGV0ZXJtaW5hdGUocHJpbWFyeSk7XG5cbiAgICAgICYubWQtYWNjZW50IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWluZGV0ZXJtaW5hdGUoYWNjZW50KVxuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtZGV0ZXJtaW5hdGUge1xuICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWRldGVybWluYXRlKHByaW1hcnkpO1xuXG4gICAgICAmLm1kLWFjY2VudCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXByb2dyZXNzLWJhci1kZXRlcm1pbmF0ZShhY2NlbnQpXG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1idWZmZXIge1xuICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlcihwcmltYXJ5KTtcblxuICAgICAgJi5tZC1hY2NlbnQge1xuICAgICAgICBAaW5jbHVkZSBtZC1wcm9ncmVzcy1iYXItYnVmZmVyKGFjY2VudClcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm1kLXByb2dyZXNzLXNwaW5uZXIge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3Mtc3Bpbm5lci1zcGVjKHByaW1hcnkpO1xuXG4gICAgJi5tZC1hY2NlbnQge1xuICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3Mtc3Bpbm5lci1zcGVjKGFjY2VudClcbiAgICB9XG4gIH1cbn1cbiIsIi5tZC1yYWRpbyB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICAmLm1kLWNoZWNrZWQge1xuICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgYWNjZW50KTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tZC1yaXBwbGUge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWNoZWNrZWQubWQtcHJpbWFyeSB7XG4gICAgICAubWQtcmFkaW8tY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBwcmltYXJ5KTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWQtcmlwcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjU0KTtcbiAgICAgIH1cblxuICAgICAgJi5tZC1kaXNhYmxlZCB7XG4gICAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tZC1jaGVja2VkIHtcbiAgICAgICAgICAubWQtcmFkaW8tY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjZmZmLCAuNyk7XG4gICAgICB9XG5cbiAgICAgICYubWQtZGlzYWJsZWQge1xuICAgICAgICAubWQtcmFkaW8tY29udGFpbmVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tZC1jaGVja2VkIHtcbiAgICAgICAgICAubWQtcmFkaW8tY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjZmZmLCAuMyk7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tZC1zbmFja2JhciB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCB0ZXh0LXByaW1hcnkpO1xuXG4gICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMyMzIzMjtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG4iLCIubWQtc3BlZWQtZGlhbCB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcblxuICB9XG59IiwiLm1kLXN0ZXBwZXJzIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuXG5cbiAgICAubWQtc3RlcHBlci1pY29uLFxuICAgIC5tZC1zdGVwcGVyLW51bWJlcixcbiAgICAubWQtc3RlcHBlciB7XG4gICAgICAmOmFmdGVyLFxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtc3RlcHBlci1udW1iZXIge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgdGV4dC1oaW50LCBiYWNrZ3JvdW5kKTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHRleHQtaGludCk7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHRleHQtaGludCk7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgdGV4dC1oaW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtc3RlcHBlci1oZWFkZXIge1xuICAgICAgLm1kLWJ1dHRvbi1jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XG5cbiAgICAgICAgJjphZnRlcixcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubWQtYWN0aXZlLFxuICAgICAgJi5tZC1kb25lIHtcbiAgICAgICAgLm1kLWJ1dHRvbi1jb250ZW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZC1zdGVwcGVyLW51bWJlciB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG5cbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWVycm9yIHtcbiAgICAgICAgLm1kLWJ1dHRvbi1jb250ZW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgc3RlcHBlciwgZXJyb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1kLWljb24gc3ZnIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgc3RlcHBlciwgZXJyb3IpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShmaWxsLCByZWQsIEE0MDAsIHN0ZXBwZXIsIGVycm9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1kLXN1YmhlYWRlciB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQpO1xuXG4gICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5tZC1zd2l0Y2gge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgJi5tZC1jaGVja2VkIHtcbiAgICAgIC5tZC1zd2l0Y2gtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50LCBudWxsLCAuMzgpO1xuICAgICAgfVxuXG4gICAgICAubWQtc3dpdGNoLXRodW1iIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcbiAgICAgIH1cblxuICAgICAgLm1kLXJpcHBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBhY2NlbnQpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtY2hlY2tlZC5tZC1wcmltYXJ5IHtcbiAgICAgIC5tZC1zd2l0Y2gtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSwgbnVsbCwgLjM4KTtcbiAgICAgIH1cblxuICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgfVxuXG4gICAgICAubWQtcmlwcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgIC5tZC1zd2l0Y2gtY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMzgpO1xuICAgICAgfVxuXG4gICAgICAubWQtc3dpdGNoLXRodW1iIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQtY29sb3IsIGdyZXksIDEwMCwgc3dpdGNoLCB0aHVtYik7XG4gICAgICB9XG5cbiAgICAgICYubWQtZGlzYWJsZWQge1xuICAgICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMTIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQtY29sb3IsIGdyZXksIDQwMCwgc3dpdGNoLCB0aHVtYik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC5tZC1zd2l0Y2gtY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuMyk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1zd2l0Y2gtdGh1bWIge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgNDAwLCBzd2l0Y2gsIHRodW1iKTtcbiAgICAgIH1cblxuICAgICAgJi5tZC1kaXNhYmxlZCB7XG4gICAgICAgIC5tZC1zd2l0Y2gtY29udGFpbmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC4xKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZC1zd2l0Y2gtdGh1bWIge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCA4MDAsIHN3aXRjaCwgdGh1bWIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWQtdGFibGUge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgLm1kLXRhYmxlLWNvbnRlbnQsXG4gICAgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXIgLm1kLXRhYmxlLXRvb2xiYXIge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQsIG51bGwsIC4yKTtcbiAgICB9XG5cbiAgICAubWQtdGFibGUtcm93IHtcbiAgICAgICY6aG92ZXI6bm90KC5tZC1oZWFkZXItcm93KSAubWQtdGFibGUtY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGhpZ2hsaWdodCwgYmFja2dyb3VuZCwgLjA4KTtcbiAgICAgIH1cblxuICAgICAgJi5tZC1zZWxlY3RlZCxcbiAgICAgICYubWQtc2VsZWN0ZWQtc2luZ2xlIHtcbiAgICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCAxMDAsIHJvdywgYmFja2dyb3VuZCk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCA3MDAsIHJvdywgYmFja2dyb3VuZCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1kLXByaW1hcnkge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuXG4gICAgICAgICAgLm1kLXJpcHBsZSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIHByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubWQtYWNjZW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQsIGJhY2tncm91bmQpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XG5cbiAgICAgICAgICAubWQtcmlwcGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgYWNjZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGQge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItdG9wLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtdGFibGUtaGVhZCB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5tZC10YWJsZS1maXhlZC1oZWFkZXItYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1ib3R0b20tY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5tZC1zb3J0YWJsZSB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJi5tZC1zb3J0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtdGFibGUtcGFnaW5hdGlvbiB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItdG9wLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBtZC10YWJzLXNwZWMgKCRwcmltYXJ5LCAkaW5kaWNhdG9yLCAkdGV4dCkge1xuICAubWQtdGFicy1uYXZpZ2F0aW9uIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAubWQtYnV0dG9uIHtcbiAgICAgIEBpZiAkdGV4dCA9PSB0ZXh0LXByaW1hcnkge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5LCAuNyk7XG5cbiAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnksIC4zOCk7XG4gICAgICAgIH1cblxuICAgICAgICAubWQtaWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICR0ZXh0LCAkcHJpbWFyeSwgLjcpO1xuXG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsICR0ZXh0LCAkcHJpbWFyeSwgLjcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5LCAuNyk7XG5cbiAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5LCAuMzgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1kLWljb24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5LCAuNyk7XG5cbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnkpO1xuXG4gICAgICAgIC5tZC1pY29uIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5KTtcblxuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkdGV4dCwgJHByaW1hcnkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZC10YWJzLWluZGljYXRvciB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGluZGljYXRvciwgJHByaW1hcnkpO1xuICB9XG59XG5cbi5tZC10YWJzIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRhYnMtc3BlYyhiYWNrZ3JvdW5kLCBwcmltYXJ5LCBwcmltYXJ5KTtcblxuICAgICYubWQtcHJpbWFyeSB7XG4gICAgICBAaW5jbHVkZSBtZC10YWJzLXNwZWMocHJpbWFyeSwgdGV4dC1wcmltYXJ5LCB0ZXh0LXByaW1hcnkpO1xuICAgIH1cblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRhYnMtc3BlYyhhY2NlbnQsIHRleHQtcHJpbWFyeSwgdGV4dC1wcmltYXJ5KTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBtZC10YWJzLXNwZWMgKCRwcmltYXJ5LCAkaW5kaWNhdG9yLCAkdGV4dCkge1xuICAubWQtdGFicy1uYXZpZ2F0aW9uIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAubWQtYnV0dG9uIHtcbiAgICAgIEBpZiAkdGV4dCA9PSB0ZXh0LXByaW1hcnkge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5LCAuNyk7XG5cbiAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnksIC4zOCk7XG4gICAgICAgIH1cblxuICAgICAgICAubWQtaWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICR0ZXh0LCAkcHJpbWFyeSwgLjcpO1xuXG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsICR0ZXh0LCAkcHJpbWFyeSwgLjcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5LCAuNyk7XG5cbiAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5LCAuMzgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1kLWljb24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5LCAuNyk7XG5cbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnkpO1xuXG4gICAgICAgIC5tZC1pY29uIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5KTtcblxuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkdGV4dCwgJHByaW1hcnkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZC10YWJzLWluZGljYXRvciB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGluZGljYXRvciwgJHByaW1hcnkpO1xuICB9XG59XG5cbi5tZC10YWJzIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRhYnMtc3BlYyhiYWNrZ3JvdW5kLCBwcmltYXJ5LCBwcmltYXJ5KTtcblxuICAgICYubWQtcHJpbWFyeSB7XG4gICAgICBAaW5jbHVkZSBtZC10YWJzLXNwZWMocHJpbWFyeSwgdGV4dC1wcmltYXJ5LCB0ZXh0LXByaW1hcnkpO1xuICAgIH1cblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRhYnMtc3BlYyhhY2NlbnQsIHRleHQtcHJpbWFyeSwgdGV4dC1wcmltYXJ5KTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBtZC10b29sYmFyLWljb24oJHByaW1hcnksICRzZWNvbmRhcnkpIHtcbiAgLm1kLWljb24ge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkcHJpbWFyeSwgJHNlY29uZGFyeSk7XG5cbiAgICBzdmcge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJHByaW1hcnksICRzZWNvbmRhcnkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWQtdG9vbGJhci1idXR0b24oJHByaW1hcnksICRzZWNvbmRhcnkpIHtcbiAgLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSkge1xuICAgICY6bm90KC5tZC1yYWlzZWQpIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkcHJpbWFyeSwgJHNlY29uZGFyeSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZC10b29sYmFyLXRpdGxlKCRwcmltYXJ5LCAkc2Vjb25kYXJ5KSB7XG4gIC5tZC10aXRsZSxcbiAgLm1kLWRpc3BsYXktMSxcbiAgLm1kLWRpc3BsYXktMiB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRwcmltYXJ5LCAkc2Vjb25kYXJ5KTtcbiAgfVxufVxuXG4ubWQtdG9vbGJhciB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kLXZhcmlhbnQpO1xuXG4gICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQtY29sb3IsIGdyZXksIDEwMCwgdG9vbGJhciwgYmFja2dyb3VuZCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgOTAwLCB0b29sYmFyLCBiYWNrZ3JvdW5kKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZC10b29sYmFyLWljb24odGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kLXZhcmlhbnQpO1xuICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItdGl0bGUodGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kLXZhcmlhbnQpO1xuXG4gICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gICAgICBAaW5jbHVkZSBtZC10b29sYmFyLWljb24odGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItYnV0dG9uKHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gICAgICBAaW5jbHVkZSBtZC10b29sYmFyLXRpdGxlKHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gICAgfVxuXG4gICAgJi5tZC1hY2NlbnQge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XG4gICAgICBAaW5jbHVkZSBtZC10b29sYmFyLWljb24odGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuICAgICAgQGluY2x1ZGUgbWQtdG9vbGJhci1idXR0b24odGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuICAgICAgQGluY2x1ZGUgbWQtdG9vbGJhci10aXRsZSh0ZXh0LXByaW1hcnksIGFjY2VudCk7XG4gICAgfVxuXG4gICAgJi5tZC10cmFuc3BhcmVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgQGluY2x1ZGUgbWQtdG9vbGJhci1pY29uKHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICBAaW5jbHVkZSBtZC10b29sYmFyLXRpdGxlKHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG59XG4iLCIubWQtdG9vbHRpcCB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCB0b29sdGlwKTtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCB0b29sdGlwLCBiYWNrZ3JvdW5kLCAuOSk7XG4gIH1cbn1cbiIsIi5tZC1iYWRnZSB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCk7XG5cbiAgICAmLm1kLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FDMERBLGdJQUFnSTtBRTFEaEk7Ozs7O0dBS0c7QW9DTEgsQUFBQSxLQUFLLENBQUM7RUFHRixNQUFXLENBQUUsUUFBQztFQUFkLFFBQVcsQ0FBRSxRQUFDO0VBQWQsUUFBVyxDQUFFLFFBQUM7RUFBZCxNQUFXLENBQUUsUUFBQztFQUFkLEtBQVcsQ0FBRSxRQUFDO0VBQWQsUUFBVyxDQUFFLFFBQUM7RUFBZCxRQUFXLENBQUUsUUFBQztFQUFkLE9BQVcsQ0FBRSxRQUFDO0VBQWQsTUFBVyxDQUFFLFFBQUM7RUFBZCxNQUFXLENBQUUsUUFBQztFQUFkLE9BQVcsQ0FBRSxLQUFDO0VBQWQsTUFBVyxDQUFFLFFBQUM7RUFBZCxXQUFXLENBQUUsUUFBQztFQUlkLFNBQVcsQ0FBRSxRQUFDO0VBQWQsV0FBVyxDQUFFLFFBQUM7RUFBZCxTQUFXLENBQUUsUUFBQztFQUFkLE1BQVcsQ0FBRSxRQUFDO0VBQWQsU0FBVyxDQUFFLFFBQUM7RUFBZCxRQUFXLENBQUUsUUFBQztFQUFkLE9BQVcsQ0FBRSxRQUFDO0VBQWQsTUFBVyxDQUFFLFFBQUM7RUFJZCxnQkFBbUIsQ0FBYSxFQUFDO0VBQWpDLGVBQW1CLENBQWEsTUFBQztFQUFqQyxlQUFtQixDQUFhLE1BQUM7RUFBakMsZUFBbUIsQ0FBYSxNQUFDO0VBQWpDLGVBQW1CLENBQWEsTUFBQztFQUFqQyxlQUFtQixDQUFhLE9BQUM7RUFLbkMsd0JBQXdCLENBQUEsOEJBQUM7RUFDekIsdUJBQXVCLENBQUEscUZBQUMsR0FDekI7O0FDQUQsQUFBQSxDQUFDO0FBQ0QsQ0FBQyxBQUFBLFFBQVE7QUFDVCxDQUFDLEFB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UyxFQUFFLFNBQTRCLEdEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCLEdEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCLEdEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCLEdEQWhDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdEQWhDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdEQWhDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBNEI7SUFJdEMsU0FB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REFoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQTRCO0lBSXRDLFNBQVMsRUFBRSxHQUE0QixHREFoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQTRCO0lBSXRDLFNBQVMsRUFBRSxHQUE0QixHREFoQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQTRCO0lBSXRDLFNBQVMsRUFBRSxJQUE0QixHREFoQztFQUdILEFBQUEsZUFBZSxDQUFPO0lBQUUsS0FBSyxFQUFFLEVBQUUsR0FBSTtFQUVyQyxBQUFBLGNBQWMsQ0FBTztJQUFFLEtBQUssRS9CMktKLEVB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 */