@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: #238DBC;
  --indigo: #6610f2;
  --purple: #7F2BBE;
  --pink: #e83e8c;
  --red: #F07A70;
  --orange: #E68D42;
  --yellow: #BCCE4E;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #439639;
  --secondary: #439639;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #BCCE4E;
  --danger: #F07A70;
  --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: lato, sans-serif !important;
  --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: lato, sans-serif !important;
  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: #439639;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #2a5f24;
  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: #cae2c8;
}

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

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

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

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

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

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

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

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

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

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

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

.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: #88cf80;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(67, 150, 57, 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: #F07A70;
}

.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: #212529;
  background-color: rgba(240, 122, 112, 0.9);
  border-radius: 0.25rem;
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
  border-color: #F07A70;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23F07A70' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23F07A70' 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: #F07A70;
  box-shadow: 0 0 0 0.2rem rgba(240, 122, 112, 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: #F07A70;
  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='%23F07A70' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23F07A70' 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: #F07A70;
  box-shadow: 0 0 0 0.2rem rgba(240, 122, 112, 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: #F07A70;
}

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

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

.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: #f5a59e;
  background-color: #f5a59e;
}

.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(240, 122, 112, 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: #F07A70;
}

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

.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: #F07A70;
  box-shadow: 0 0 0 0.2rem rgba(240, 122, 112, 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(67, 150, 57, 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: #439639;
  border-color: #439639;
}

.btn-primary:hover {
  color: #fff;
  background-color: #377a2e;
  border-color: #32712b;
}

.btn-primary:focus,
.btn-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(95, 166, 87, 0.5);
}

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

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #32712b;
  border-color: #2e6827;
}

.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(95, 166, 87, 0.5);
}

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

.btn-secondary:hover {
  color: #fff;
  background-color: #377a2e;
  border-color: #32712b;
}

.btn-secondary:focus,
.btn-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(95, 166, 87, 0.5);
}

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

.btn-secondary:not(:disabled):not(.disabled):active,
.btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #32712b;
  border-color: #2e6827;
}

.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(95, 166, 87, 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: #212529;
  background-color: #F07A70;
  border-color: #F07A70;
}

.btn-danger:hover {
  color: #fff;
  background-color: #ec5a4d;
  border-color: #eb4f42;
}

.btn-danger:focus,
.btn-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(209, 109, 101, 0.5);
}

.btn-danger.disabled,
.btn-danger:disabled {
  color: #212529;
  background-color: #F07A70;
  border-color: #F07A70;
}

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

.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(209, 109, 101, 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: #439639;
  border-color: #439639;
}

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

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

.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
  color: #439639;
  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: #439639;
  border-color: #439639;
}

.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(67, 150, 57, 0.5);
}

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

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

.btn-outline-secondary:focus,
.btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(67, 150, 57, 0.5);
}

.btn-outline-secondary.disabled,
.btn-outline-secondary:disabled {
  color: #439639;
  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: #439639;
  border-color: #439639;
}

.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(67, 150, 57, 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: #F07A70;
  border-color: #F07A70;
}

.btn-outline-danger:hover {
  color: #212529;
  background-color: #F07A70;
  border-color: #F07A70;
}

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

.btn-outline-danger.disabled,
.btn-outline-danger:disabled {
  color: #F07A70;
  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: #212529;
  background-color: #F07A70;
  border-color: #F07A70;
}

.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(240, 122, 112, 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: #439639;
  text-decoration: none;
}

.btn-link:hover {
  color: #2a5f24;
  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: #439639;
}

.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: #439639;
  background-color: #439639;
}

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

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

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

.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: #439639;
  background-color: #439639;
}

.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(67, 150, 57, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(67, 150, 57, 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(67, 150, 57, 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(67, 150, 57, 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: #88cf80;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(67, 150, 57, 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: #88cf80;
  box-shadow: 0 0 0 0.2rem rgba(67, 150, 57, 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(67, 150, 57, 0.25);
}

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

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

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

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

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

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

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

.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: #439639;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #2a5f24;
  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(67, 150, 57, 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: #439639;
  border-color: #439639;
}

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

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

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

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

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

a.badge-secondary:focus,
a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(67, 150, 57, 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: #212529;
  background-color: #F07A70;
}

a.badge-danger:hover,
a.badge-danger:focus {
  color: #212529;
  background-color: #eb4f42;
}

a.badge-danger:focus,
a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(240, 122, 112, 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: #406b3b;
  background-color: #d9ead7;
  border-color: #cae2c8;
}

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

.alert-primary .alert-link {
  color: #2c4a29;
}

.alert-secondary {
  color: #406b3b;
  background-color: #d9ead7;
  border-color: #cae2c8;
}

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

.alert-secondary .alert-link {
  color: #2c4a29;
}

.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: #9a5d58;
  background-color: #fce4e2;
  border-color: #fbdad7;
}

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

.alert-danger .alert-link {
  color: #7a4945;
}

.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: #439639;
  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: #439639;
  border-color: #439639;
}

.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: #406b3b;
  background-color: #cae2c8;
}

.list-group-item-primary.list-group-item-action:hover,
.list-group-item-primary.list-group-item-action:focus {
  color: #406b3b;
  background-color: #bad9b7;
}

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

.list-group-item-secondary {
  color: #406b3b;
  background-color: #cae2c8;
}

.list-group-item-secondary.list-group-item-action:hover,
.list-group-item-secondary.list-group-item-action:focus {
  color: #406b3b;
  background-color: #bad9b7;
}

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

.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: #9a5d58;
  background-color: #fbdad7;
}

.list-group-item-danger.list-group-item-action:hover,
.list-group-item-danger.list-group-item-action:focus {
  color: #9a5d58;
  background-color: #f9c5c0;
}

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

.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: lato, sans-serif !important;
  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: lato, sans-serif !important;
  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: #439639 !important;
}

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

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

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

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

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

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

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

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

.border-danger {
  border-color: #F07A70 !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: #439639 !important;
}

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

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

a.text-secondary:hover,
a.text-secondary:focus {
  color: #2a5f24 !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: #F07A70 !important;
}

a.text-danger:hover,
a.text-danger:focus {
  color: #e93a2b !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: #439639;
  --md-theme-default-accent: #439639;
  --md-theme-default-theme: light;
}

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

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

.md-theme-default a:not(.md-button):hover {
  color: rgba(67, 150, 57, 0.8);
  color: var(--md-theme-default-primary-on-background, rgba(67, 150, 57, 0.8));
}

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

.md-theme-default a:not(.md-button).md-accent:hover {
  color: rgba(67, 150, 57, 0.8);
  color: var(--md-theme-default-accent-on-background, rgba(67, 150, 57, 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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.md-avatar.md-theme-default.md-primary.md-avatar-icon {
  background-color: #439639;
  background-color: var(--md-theme-default-primary, #439639);
  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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.md-avatar.md-theme-default.md-accent.md-avatar-icon {
  background-color: #439639;
  background-color: var(--md-theme-default-accent, #439639);
  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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon {
  color: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {
  fill: #439639;
  fill: var(--md-theme-default-primary-on-background, #439639);
}

.md-bottom-bar.md-theme-default.md-type-shift {
  background-color: #439639;
  background-color: var(--md-theme-default-primary, #439639);
  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: #32712b;
  background-color: var(--md-theme-default-primary-on-primary, #32712b);
}

.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: #439639;
  color: var(--md-theme-default-accent-on-background, #439639);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon {
  color: #439639;
  color: var(--md-theme-default-accent-on-background, #439639);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {
  fill: #439639;
  fill: var(--md-theme-default-accent-on-background, #439639);
}

.md-bottom-bar.md-theme-default.md-accent.md-type-shift {
  background-color: #439639;
  background-color: var(--md-theme-default-accent, #439639);
  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: #32712b;
  background-color: var(--md-theme-default-accent-on-accent, #32712b);
}

.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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-button.md-theme-default.md-primary .md-icon-font {
  color: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-button.md-theme-default.md-primary .md-icon-image {
  fill: #439639;
  fill: var(--md-theme-default-primary-on-background, #439639);
}

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

.md-button.md-theme-default.md-accent .md-icon-font {
  color: #439639;
  color: var(--md-theme-default-accent-on-background, #439639);
}

.md-button.md-theme-default.md-accent .md-icon-image {
  fill: #439639;
  fill: var(--md-theme-default-accent-on-background, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
  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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
  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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
  border-color: #439639;
  border-color: var(--md-theme-default-accent, #439639);
}

.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: #439639;
  color: var(--md-theme-default-accent, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
  border-color: #439639;
  border-color: var(--md-theme-default-primary, #439639);
}

.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple {
  color: #439639;
  color: var(--md-theme-default-primary, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
  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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
  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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
}

.md-content.md-theme-default.md-accent {
  background-color: #439639;
  background-color: var(--md-theme-default-accent, #439639);
  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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
  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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
  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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.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: #439639;
  fill: var(--md-theme-default-primary-on-background, #439639);
}

.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font {
  color: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg {
  fill: #439639;
  fill: var(--md-theme-default-accent-on-background, #439639);
}

.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font {
  color: #439639;
  color: var(--md-theme-default-accent-on-background, #439639);
}

.md-field.md-theme-default:after {
  background-color: rgba(0, 0, 0, 0.42);
}

.md-field.md-theme-default:before {
  background-color: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.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: #439639;
  border-color: var(--md-theme-default-primary, #439639);
}

.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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-field.md-theme-default.md-focused > .md-icon,
.md-field.md-theme-default.md-highlight > .md-icon {
  color: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
  fill: #439639;
  fill: var(--md-theme-default-primary-on-background, #439639);
}

.md-field.md-theme-default.md-focused label {
  color: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.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: #439639;
  fill: var(--md-theme-default-primary-on-background, #439639);
}

.md-icon.md-theme-default.md-icon-image svg.md-accent {
  fill: #439639;
  fill: var(--md-theme-default-accent-on-background, #439639);
}

.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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-icon.md-theme-default.md-icon-font.md-accent {
  color: #439639;
  color: var(--md-theme-default-accent-on-background, #439639);
}

.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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.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: #439639;
  color: var(--md-theme-default-accent-on-background, #439639);
}

.md-progress-bar.md-theme-default.md-indeterminate,
.md-progress-bar.md-theme-default.md-query {
  background-color: rgba(67, 150, 57, 0.38);
  background-color: var(--md-theme-default-primary-on-, rgba(67, 150, 57, 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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.md-progress-bar.md-theme-default.md-indeterminate.md-accent,
.md-progress-bar.md-theme-default.md-query.md-accent {
  background-color: rgba(67, 150, 57, 0.38);
  background-color: var(--md-theme-default-accent-on-, rgba(67, 150, 57, 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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.md-progress-bar.md-theme-default.md-determinate {
  background-color: rgba(67, 150, 57, 0.38);
  background-color: var(--md-theme-default-primary-on-, rgba(67, 150, 57, 0.38));
}

.md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill {
  background-color: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.md-progress-bar.md-theme-default.md-determinate.md-accent {
  background-color: rgba(67, 150, 57, 0.38);
  background-color: var(--md-theme-default-accent-on-, rgba(67, 150, 57, 0.38));
}

.md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill {
  background-color: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill {
  background-color: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track {
  background-color: rgba(67, 150, 57, 0.38);
  background-color: var(--md-theme-default-primary-on-, rgba(67, 150, 57, 0.38));
}

.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer {
  border-color: rgba(67, 150, 57, 0.38);
  border-color: var(--md-theme-default-primary-on-, rgba(67, 150, 57, 0.38));
}

.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill {
  background-color: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track {
  background-color: rgba(67, 150, 57, 0.38);
  background-color: var(--md-theme-default-accent-on-, rgba(67, 150, 57, 0.38));
}

.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer {
  border-color: rgba(67, 150, 57, 0.38);
  border-color: var(--md-theme-default-accent-on-, rgba(67, 150, 57, 0.38));
}

.md-progress-spinner.md-theme-default .md-progress-spinner-circle {
  stroke: #439639;
  stroke: var(--md-theme-default-primary, #439639);
}

.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle {
  stroke: #439639;
  stroke: var(--md-theme-default-accent, #439639);
}

.md-radio.md-theme-default.md-checked .md-radio-container {
  border-color: #439639;
  border-color: var(--md-theme-default-accent, #439639);
}

.md-radio.md-theme-default.md-checked .md-radio-container:after {
  background-color: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.md-radio.md-theme-default.md-checked .md-ripple {
  color: #439639;
  color: var(--md-theme-default-accent, #439639);
}

.md-radio.md-theme-default.md-checked.md-primary .md-radio-container {
  border-color: #439639;
  border-color: var(--md-theme-default-primary, #439639);
}

.md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after {
  background-color: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.md-radio.md-theme-default.md-checked.md-primary .md-ripple {
  color: #439639;
  color: var(--md-theme-default-primary, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-primary-on-background, #439639);
  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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-switch.md-theme-default.md-checked .md-switch-container {
  background-color: rgba(67, 150, 57, 0.38);
  background-color: var(--md-theme-default-accent-on-, rgba(67, 150, 57, 0.38));
}

.md-switch.md-theme-default.md-checked .md-switch-thumb {
  background-color: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.md-switch.md-theme-default.md-checked .md-ripple {
  color: #439639;
  color: var(--md-theme-default-accent, #439639);
}

.md-switch.md-theme-default.md-checked.md-primary .md-switch-container {
  background-color: rgba(67, 150, 57, 0.38);
  background-color: var(--md-theme-default-primary-on-, rgba(67, 150, 57, 0.38));
}

.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb {
  background-color: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.md-switch.md-theme-default.md-checked.md-primary .md-ripple {
  color: #439639;
  color: var(--md-theme-default-primary, #439639);
}

.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(67, 150, 57, 0.2);
  background-color: var(--md-theme-default-accent-on-, rgba(67, 150, 57, 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: #439639;
  background-color: var(--md-theme-default-primary-on-background, #439639);
  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: #439639;
  border-color: var(--md-theme-default-primary, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-accent-on-background, #439639);
  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: #439639;
  border-color: var(--md-theme-default-accent, #439639);
}

.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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {
  color: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {
  fill: #439639;
  fill: var(--md-theme-default-primary-on-background, #439639);
}

.md-tabs.md-theme-default .md-tabs-indicator {
  background-color: #439639;
  background-color: var(--md-theme-default-primary-on-background, #439639);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation {
  background-color: #439639;
  background-color: var(--md-theme-default-primary-on-background, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-accent-on-background, #439639);
}

.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: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {
  color: #439639;
  color: var(--md-theme-default-primary-on-background, #439639);
}

.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {
  fill: #439639;
  fill: var(--md-theme-default-primary-on-background, #439639);
}

.md-tabs.md-theme-default .md-tabs-indicator {
  background-color: #439639;
  background-color: var(--md-theme-default-primary-on-background, #439639);
}

.md-tabs.md-theme-default.md-primary .md-tabs-navigation {
  background-color: #439639;
  background-color: var(--md-theme-default-primary-on-background, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-accent-on-background, #439639);
}

.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: #439639;
  background-color: var(--md-theme-default-primary, #439639);
  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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
  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: #439639;
  background-color: var(--md-theme-default-accent, #439639);
}

.md-badge.md-theme-default.md-primary {
  color: #fff;
  color: var(--md-theme-default-text-primary-on-primary, #fff);
  background-color: #439639;
  background-color: var(--md-theme-default-primary, #439639);
}

.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+Q3VzdG9tU2Fzcy9icmFuZC12YXJpYWJsZXMnO1xuIiwiJHByaW1hcnk6ICM0Mzk2Mzk7IC8vICAjMzQ5OTQ2IG9sZCBub24tYWRhIGNvbG9yXG4kc2Vjb25kYXJ5OiAjNDM5NjM5O1xuXG4kYmgtZ3JlZW46ICMzZjkzNDU7XG4kYmgtd2hpdGU6ICNmZmY7XG4kYmgtZ3JleTogIzMzMztcblxuIiwiLyohXG4gKiBCb290c3RyYXAgdjQuMy4xIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxOSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMTkgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImN1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwianVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcIm1lZGlhXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwic3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG5cbi8vIEFzY2VuZGluZ1xuLy8gVXNlZCB0byBldmFsdWF0ZSBTYXNzIG1hcHMgbGlrZSBvdXIgZ3JpZCBicmVha3BvaW50cy5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluICN7JG1hcC1uYW1lfSBtdXN0IHN0YXJ0IGF0IDAsIGJ1dCBzdGFydHMgYXQgI3skZmlyc3QtdmFsdWV9LlwiO1xuICB9XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAvIDEwMDA7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zOiAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3BhY2VyczogbWFwLW1lcmdlKFxuICAoXG4gICAgMDogMCxcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXG4gICAgMzogJHNwYWNlcixcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogKCRzcGFjZXIgKiAzKVxuICApLFxuICAkc3BhY2Vyc1xuKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kcm91bmRlZC1waWxsOiAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiBqb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAgICAgIDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAgICAgIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplOiAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQgKiAxZW19ICsgI3skaW5wdXQtcGFkZGluZy15ICogMn0pICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtfSArICN7JGlucHV0LXBhZGRpbmcteX0pICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXkgLyAyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtfSArICN7JGlucHV0LXBhZGRpbmcteSAqIDJ9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW19ICsgI3skaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAqIDJ9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW19ICsgI3skaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAqIDJ9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14OiAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I6ICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjYgMi45NzQgNy4yNSA4IDIuMTkzeicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA0JyUzZSUzY3BhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplIC8gMiAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgIGNhbGMoI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemV9IC0gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDR9KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA1JyUzZSUzY3BhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3Igbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6IGNhbGMoKDFlbSArICN7MiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteX0pICogMyAvIDQgKyAjeyRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nfSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgIGNlbnRlciByaWdodCAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBJRS9FZGdlXG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9Jy0yIC0yIDcgNyclM2UlM2NwYXRoIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBkPSdNMCAwbDMgM20wLTNMMCAzJy8lM2UlM2NjaXJjbGUgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeT0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgY3k9JzMnIHI9Jy41Jy8lM2UlM2Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBjYWxjKCN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9IC0gI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgY2FsYygjeyRjYXJkLWJvcmRlci1yYWRpdXN9IC0gI3skY2FyZC1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gVG9hc3RzXG5cbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgICAgICAgICAgICAtMTAgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjUtMi41LTIuNSAyLjUtMi41LTEuNS0xLjV6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTIuNzUgMGwtMS41IDEuNSAyLjUgMi41LTIuNSAyLjUgMS41IDEuNSA0LTQtNC00eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vLyBTcGlubmVyc1xuXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gVXRpbGl0aWVzXG5cbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5ICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG5cbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuLy8gVmVuZG9yXG5AaW1wb3J0IFwidmVuZG9yL3Jmc1wiO1xuXG4vLyBEZXByZWNhdGVcbkBpbXBvcnQgXCJtaXhpbnMvZGVwcmVjYXRlXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9icmVha3BvaW50c1wiO1xuQGltcG9ydCBcIm1peGlucy9ob3ZlclwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9iYWRnZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2NyZWVuLXJlYWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWhpZGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC10cnVuY2F0ZVwiO1xuQGltcG9ydCBcIm1peGlucy92aXNpYmlsaXR5XCI7XG5cbi8vIC8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9jYXJldFwiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3RzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIC8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcblxuLy8gLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZmxvYXRcIjtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCBmb250LXJlc2l6aW5nXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmc1xuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgZm9udCBzaXplXG4kcmZzLWJhc2UtZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy1mb250LXNpemUtdW5pdDogcmVtICFkZWZhdWx0O1xuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIGZvbnQtc2l6ZSBzdGFydHMgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbi8vIFJlc2l6ZSBmb250LXNpemUgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBcIm51bWJlclwiIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB0byBmYWxzZVxuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS1mb250LXNpemUgdW5pdFxuJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0OiB1bml0KCRyZnMtYmFzZS1mb250LXNpemUpO1xuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS1mb250LXNpemUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInB4XCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJyZW1cIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBmb250LXNpemUgbWl4aW5cbkBtaXhpbiByZnMoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAvLyBDYWNoZSAkZnMgdW5pdFxuICAkZnMtdW5pdDogaWYodHlwZS1vZigkZnMpID09IFwibnVtYmVyXCIsIHVuaXQoJGZzKSwgZmFsc2UpO1xuXG4gIC8vIEFkZCAhaW1wb3J0YW50IHN1ZmZpeCBpZiBuZWVkZWRcbiAgJHJmcy1zdWZmaXg6IGlmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIik7XG5cbiAgLy8gSWYgJGZzIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICRmcyBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gIEBpZiBub3QgJGZzLXVuaXQgb3IgJGZzLXVuaXQgIT0gXCJcIiBhbmQgJGZzLXVuaXQgIT0gXCJweFwiIGFuZCAkZnMtdW5pdCAhPSBcInJlbVwiIG9yICRmcyA9PSAwIHtcbiAgICBmb250LXNpemU6ICN7JGZzfSN7JHJmcy1zdWZmaXh9O1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBWYXJpYWJsZXMgZm9yIHN0b3Jpbmcgc3RhdGljIGFuZCBmbHVpZCByZXNjYWxpbmdcbiAgICAkcmZzLXN0YXRpYzogbnVsbDtcbiAgICAkcmZzLWZsdWlkOiBudWxsO1xuXG4gICAgLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xuICAgIEBpZiAkZnMtdW5pdCA9PSBcInB4XCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIEBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnMgLyAkcmZzLXJlbS12YWx1ZX1yZW0jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSBweCB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnN9cHgjeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGVycm9yIFwiYCN7JHJmcy1mb250LXNpemUtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtZm9udC1zaXplLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xuICAgIH1cblxuICAgIC8vIE9ubHkgYWRkIG1lZGlhIHF1ZXJ5IGlmIGZvbnQtc2l6ZSBpcyBiaWdnZXIgYXMgdGhlIG1pbmltdW0gZm9udC1zaXplXG4gICAgLy8gSWYgJHJmcy1mYWN0b3IgPT0gMSwgbm8gcmVzY2FsaW5nIHdpbGwgdGFrZSBwbGFjZVxuICAgIEBpZiAkZnMgPiAkcmZzLWJhc2UtZm9udC1zaXplIGFuZCAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB7XG4gICAgICAkbWluLXdpZHRoOiBudWxsO1xuICAgICAgJHZhcmlhYmxlLXVuaXQ6IG51bGw7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUpIC8gJHJmcy1mYWN0b3I7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gZ2l2ZW4gZm9udC1zaXplIGFuZCBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcblxuICAgICAgLy8gQmFzZSBmb250LXNpemUgZm9ybWF0dGluZ1xuICAgICAgLy8gTm8gbmVlZCB0byBjaGVjayBpZiB0aGUgdW5pdCBpcyB2YWxpZCwgYmVjYXVzZSB3ZSBkaWQgdGhhdCBiZWZvcmVcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAjeyRmcy1taW4gLyAkcmZzLXJlbS12YWx1ZX1yZW0sICN7JGZzLW1pbn1weCk7XG5cbiAgICAgIC8vIElmIHR3by1kaW1lbnNpb25hbCwgdXNlIHNtYWxsZXN0IG9mIHNjcmVlbiB3aWR0aCBhbmQgaGVpZ2h0XG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAjeyRmcy1kaWZmICogMTAwIC8gJHJmcy1icmVha3BvaW50fSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplLlxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcbiAgICB9XG5cbiAgICAvLyBSZW5kZXJpbmdcbiAgICBAaWYgJHJmcy1mbHVpZCA9PSBudWxsIHtcbiAgICAgIC8vIE9ubHkgcmVuZGVyIHN0YXRpYyBmb250LXNpemUgaWYgbm8gZmx1aWQgZm9udC1zaXplIGlzIGF2YWlsYWJsZVxuICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJG1xLXZhbHVlOiBudWxsO1xuXG4gICAgICAvLyBSRlMgYnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICBAaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcmVtIHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludCAvICRyZnMtcmVtLXZhbHVlfSN7JHJmcy1icmVha3BvaW50LXVuaXR9O1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50fXB4O1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgICAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LFxuICAgICAgICAvLyB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICAgICAmLFxuICAgICAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbiB1c2VzIFJGUyB0byByZXNjYWxlIGZvbnQgc2l6ZXNcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBEZXByZWNhdGUgbWl4aW5cbi8vXG4vLyBUaGlzIG1peGluIGNhbiBiZSB1c2VkIHRvIGRlcHJlY2F0ZSBtaXhpbnMgb3IgZnVuY3Rpb25zLlxuLy8gYCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXNgIGlzIGEgZ2xvYmFsIHZhcmlhYmxlLCBgJGlnbm9yZS13YXJuaW5nYCBpcyBhIHZhcmlhYmxlIHRoYXQgY2FuIGJlIHBhc3NlZCB0b1xuLy8gc29tZSBkZXByZWNhdGVkIG1peGlucyB0byBzdXBwcmVzcyB0aGUgd2FybmluZyAoZm9yIGV4YW1wbGUgaWYgdGhlIG1peGluIGlzIHN0aWxsIGJlIHVzZWQgaW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBCb290c3RyYXApXG5AbWl4aW4gZGVwcmVjYXRlKCRuYW1lLCAkZGVwcmVjYXRlLXZlcnNpb24sICRyZW1vdmUtdmVyc2lvbiwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBAaWYgKCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXMgIT0gZmFsc2UgYW5kICRpZ25vcmUtd2FybmluZyAhPSB0cnVlKSB7XG4gICAgQHdhcm4gXCIjeyRuYW1lfSBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mICN7JGRlcHJlY2F0ZS12ZXJzaW9ufS4gSXQgd2lsbCBiZSByZW1vdmVkIGVudGlyZWx5IGluICN7JHJlbW92ZS12ZXJzaW9ufS5cIjtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlciB7XG4gICY6aG92ZXIgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBzaXplKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlICE9IDAge1xuICAgIGEjeyRwYXJlbnR9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWhpZGUoKWBcIiwgXCJ2NC4xLjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVmlzaWJpbGl0eVxuXG5AbWl4aW4gaW52aXNpYmxlKCR2aXNpYmlsaXR5KSB7XG4gIHZpc2liaWxpdHk6ICR2aXNpYmlsaXR5ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbnZpc2libGUoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24ge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd247XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cDtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15KSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCkge1xuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaWNvbjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDtcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgJGljb24gJGN1c3RvbS1zZWxlY3QtYmcgbm8tcmVwZWF0ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb24gLyAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLmZvcm0tY29udHJvbC1maWxlIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDEwJSk7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRib3JkZXI6IG51bGwpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgQGlmICRib3JkZXIgIT0gbnVsbCB7XG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciB7XG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cbiIsIkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgJHJlc3VsdDogKCk7XG5cbiAgICBAaWYgKGxlbmd0aCgkc2hhZG93KSA9PSAxKSB7XG4gICAgICAvLyBXZSBjYW4gcGFzcyBgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtgXG4gICAgICAkcmVzdWx0OiAkc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gRmlsdGVyIHRvIGF2b2lkIGludmFsaWQgcHJvcGVydGllcyBmb3IgZXhhbXBsZSBgYm94LXNoYWRvdzogbm9uZSwgMXB4IDFweCBibGFjaztgXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkc2hhZG93KSB7XG4gICAgICAgIEBpZiBudGgoJHNoYWRvdywgJGkpICE9IFwibm9uZVwiIHtcbiAgICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRzaGFkb3csICRpKSwgXCJjb21tYVwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaWYgKGxlbmd0aCgkcmVzdWx0KSA+IDApIHtcbiAgICAgIGJveC1zaGFkb3c6ICRyZXN1bHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AbWl4aW4gZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtbGVmdGAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbkBtaXhpbiBmbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZsb2F0LXJpZ2h0YCBtaXhpblwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuQG1peGluIGZsb2F0LW5vbmUge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZsb2F0LW5vbmVgIG1peGluXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLW5vLXZlbmRvci1wcmVmaXgsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA1XG59XG5cbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG4vLyBUT0RPOiByZW1vdmUgaW4gdjVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2Vcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbn1cblxuLy8gU3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmUgb24gZWxlbWVudHMgdGhhdCBjYW5ub3QgYmUgYWNjZXNzZWQgdmlhIGtleWJvYXJkLlxuLy8gVGhpcyBwcmV2ZW50cyBhbiB1bndhbnRlZCBmb2N1cyBvdXRsaW5lIGZyb20gYXBwZWFyaW5nIGFyb3VuZCBlbGVtZW50cyB0aGF0XG4vLyBtaWdodCBzdGlsbCByZXNwb25kIHRvIHBvaW50ZXIgZXZlbnRzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZVxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZilcbi8vIHdoaWNoIGhhdmUgbm90IGJlZW4gbWFkZSBleHBsaWNpdGx5IGtleWJvYXJkLWZvY3VzYWJsZSAod2l0aG91dCB0YWJpbmRleCkuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2ZyB7XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBTVkcgb3ZlcmZsb3cgYnVnIGluIElFMTAvMTEgaXMgc3RpbGwgcmVxdWlyZWQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI2ODc4XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbnRoIHtcbiAgLy8gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBmcm9tIHRoZSBgPGJvZHk+YCwgb3IgdGhlXG4gIC8vIGNsb3Nlc3QgcGFyZW50IHdpdGggYSBzZXQgYHRleHQtYWxpZ25gLlxuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206ICRsYWJlbC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcbi8vIHJlc3VsdHMgaW4gYSBsb3NzIG9mIHRoZSBkZWZhdWx0IGBidXR0b25gIGZvY3VzIHN0eWxlcy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAxcHggZG90dGVkO1xuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5AaWYgJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucyB7XG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICBwYWRkaW5nOiAwOyAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtXG59XG5cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCBhcHBlYXJhbmNlIG9mIHRlbXBvcmFsIGlucHV0cyB0byBhdm9pZCBhIE1vYmlsZSBTYWZhcmlcbiAgLy8gYnVnIHdoZXJlIHNldHRpbmcgYSBjdXN0b20gbGluZS1oZWlnaHQgcHJldmVudHMgdGV4dCBmcm9tIGJlaW5nIHZlcnRpY2FsbHlcbiAgLy8gY2VudGVyZWQgd2l0aGluIHRoZSBpbnB1dC5cbiAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbiAgLy8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTEyNjZcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBmb250LXNpemUoMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTsgfVxuaDIsIC5oMiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTsgfVxuaDMsIC5oMyB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTsgfVxuaDQsIC5oNCB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTsgfVxuaDUsIC5oNSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTsgfVxuaDYsIC5oNiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTsgfVxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5MS1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkyLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5NC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg5MCUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyIC8gMjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMDAlKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cbn1cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aCAxMDAlIHdpZHRoIGZvclxuLy8gZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxufVxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgY29sb3I6ICR0YWJsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnOyAvLyBSZXNldCBmb3IgbmVzdGluZyB3aXRoaW4gcGFyZW50cyB3aXRoIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItdG9wOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyICogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoLFxuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjY2VudC1iZztcbiAgfVxufVxuXG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgdGJvZHkgdHIge1xuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIFRleHR1YWwgZm9ybSBjb250cm9sc1xuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoKTtcblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXl9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPi88bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktbGd9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktc219ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmW3NpemVdLFxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xufVxuXG5cbi8vIEZvcm0gZ3JpZFxuLy9cbi8vIFNwZWNpYWwgcmVwbGFjZW1lbnQgZm9yIG91ciBncmlkIHN5c3RlbSdzIGAucm93YCBmb3IgdGlnaHRlciBmb3JtIGxheW91dHMuXG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBlYWNoICRzdGF0ZSwgJGRhdGEgaW4gJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMge1xuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCBtYXAtZ2V0KCRkYXRhLCBjb2xvciksIG1hcC1nZXQoJGRhdGEsIGljb24pKTtcbn1cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gUHJldmVudCBzaG9ydGVyIGVsZW1lbnRzIGZyb20gZ3Jvd2luZyB0byBzYW1lIGhlaWdodCBhcyBvdGhlcnMgKGUuZy4sIHNtYWxsIGJ1dHRvbnMgZ3Jvd2luZyB0byBub3JtYWwgc2l6ZWQgYnV0dG9uIGhlaWdodClcblxuICAvLyBCZWNhdXNlIHdlIHVzZSBmbGV4LCB0aGUgaW5pdGlhbCBzaXppbmcgb2YgY2hlY2tib3hlcyBpcyBjb2xsYXBzZWQgYW5kXG4gIC8vIGRvZXNuJ3Qgb2NjdXB5IHRoZSBmdWxsLXdpZHRoICh3aGljaCBpcyB3aGF0IHdlIHdhbnQgZm9yIHhzIGdyaWQgdGllciksXG4gIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cbiAgLmZvcm0tY2hlY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAsXG4gICAgLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tbGluZS1oZWlnaHQtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gZW5hYmxlZCBQb3BwZXIuanMsIHJlc2V0IGJhc2ljIGRyb3Bkb3duIHBvc2l0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmRyb3Bkb3duLW1lbnUge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sXG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnLCAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BsZWZ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAvLyBBZGQgd2lkdGggMSUgYW5kIGZsZXgtYmFzaXMgYXV0byB0byBlbnN1cmUgdGhhdCBidXR0b24gd2lsbCBub3Qgd3JhcCBvdXRcbiAgICAvLyB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFIEVkZ2UrIGFuZCBGaXJlZm94LiBDaHJvbWUgZG9lcyBub3QgcmVxdWlyZSB0aGlzLlxuICAgIHdpZHRoOiAxJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ3VzdG9tIGNvbnRyb2wgaW5kaWNhdG9yc1xuLy9cbi8vIEJ1aWxkIHRoZSBjdXN0b20gY29udHJvbHMgb3V0IG9mIHBzZXVkby1lbGVtZW50cy5cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogY2FsYygjeygoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMil9ICsgI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDJ9KTtcbiAgICAgIGxlZnQ6IGNhbGMoI3stKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcil9ICsgI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDJ9KTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWJnO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygjeyRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0fSArICN7JGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMn0pO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tcy10aHVtYiAgICAgICAgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQgLSAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCkgLyAyOyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gRWRnZSBzcGVjaWZpY1xuICAgIG1hcmdpbi1yaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBtYXJnaW4tbGVmdDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgLyAyO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IC8vIGFyYml0cmFyeT9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbXMtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcyBvciBgPHVsPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgPiAuY29udGFpbmVyLFxuICA+IC5jb250YWluZXItZmx1aWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZztcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNvbG9yO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0kY2FyZC1zcGFjZXIteSAvIDI7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAwIDApO1xuICB9XG5cbiAgKyAubGlzdC1ncm91cCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG59XG5cbi5jYXJkLWltZyB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENhcmQgaW1hZ2UgY2Fwc1xuLmNhcmQtaW1nLXRvcCB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBkZWZhdWx0XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDb2x1bW5zXG4vL1xuXG4uY2FyZC1jb2x1bW5zIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGNvbHVtbi1jb3VudDogJGNhcmQtY29sdW1ucy1jb3VudDtcbiAgICBjb2x1bW4tZ2FwOiAkY2FyZC1jb2x1bW5zLWdhcDtcbiAgICBvcnBoYW5zOiAxO1xuICAgIHdpZG93czogMTtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBEb24ndCBsZXQgdGhlaXIgd2lkdGggY2hhbmdlXG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIEFjY29yZGlvblxuLy9cblxuLmFjY29yZGlvbiB7XG4gID4gLmNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBTdXBwcmVzcyB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yIGluIG1vZGVybiBicm93c2Vyc1xuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgICBjb250ZW50OiAkYnJlYWRjcnVtYi1kaXZpZGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIElFOS0xMSBoYWNrIHRvIHByb3Blcmx5IGhhbmRsZSBoeXBlcmxpbmsgdW5kZXJsaW5lcyBmb3IgYnJlYWRjcnVtYnMgYnVpbHRcbiAgLy8gd2l0aG91dCBgPHVsPmBzLiBUaGUgYDo6YmVmb3JlYCBwc2V1ZG8tZWxlbWVudCBnZW5lcmF0ZXMgYW4gZWxlbWVudFxuICAvLyAqd2l0aGluKiB0aGUgLmJyZWFkY3J1bWItaXRlbSBhbmQgdGhlcmVieSBpbmhlcml0cyB0aGUgYHRleHQtZGVjb3JhdGlvbmAuXG4gIC8vXG4gIC8vIFRvIHRyaWNrIElFIGludG8gc3VwcHJlc3NpbmcgdGhlIHVuZGVybGluZSwgd2UgZ2l2ZSB0aGUgcHNldWRvLWVsZW1lbnQgYW5cbiAgLy8gdW5kZXJsaW5lIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHJlbW92ZSBpdC5cbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLXBhZGRpbmcteSAkcGFnaW5hdGlvbi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJGJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYmFkZ2UtdHJhbnNpdGlvbik7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmFsZXJ0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJvcmRlci1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWNvbG9yLWxldmVsKSk7XG4gIH1cbn1cbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gICAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbiAgfVxufVxuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZztcblxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg7XG4gIC8vIFBsYWNlIHRoZSBib3JkZXIgb24gdGhlIGxpc3QgaXRlbXMgYW5kIG5lZ2F0aXZlIG1hcmdpbiB1cCBmb3IgYmV0dGVyIHN0eWxpbmdcbiAgbWFyZ2luLWJvdHRvbTogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi50b2FzdCB7XG4gIG1heC13aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gY2hlYXAgcm91bmRlZCBjb3JuZXJzIG9uIG5lc3RlZCBpdGVtc1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvYXN0LWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkdG9hc3QtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJHRvYXN0LWJveC1zaGFkb3c7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9hc3QtYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy15ICR0b2FzdC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDsgLy8gSUUxMC8xMVxuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luICogMn0pO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDJ9KTsgLy8gSUUxMC8xMVxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luICogMn0pO1xuXG4gIC8vIEVuc3VyZSBgbW9kYWwtZGlhbG9nLWNlbnRlcmVkYCBleHRlbmRzIHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgdmlldyAoSUUxMC8xMSlcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gSUUxMFxuICAgIGhlaWdodDogY2FsYygxMDB2aCAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyfSk7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC8vIEVuc3VyZSBgLm1vZGFsLWJvZHlgIHNob3dzIHNjcm9sbGJhciAoSUUxMC8xMSlcbiAgJi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiBzaG91bGQgdGhlcmUgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gRWFzaWx5IHBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7IG1hcmdpbi1sZWZ0OiAuMjVyZW07IH1cbiAgPiA6bm90KDpsYXN0LWNoaWxkKSB7IG1hcmdpbi1yaWdodDogLjI1cmVtOyB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyfSk7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMn0pO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDJ9KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyfSk7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvb2x0aXAtZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3Age1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXJpZ2h0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWxlZnQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCIucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcG9wb3Zlci1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIG1hcmdpbjogMCAkYm9yZGVyLXJhZGl1cy1sZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBib3R0b206IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGxlZnQ6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJGJvcmRlci1yYWRpdXMtbGcgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICB0b3A6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAvIDI7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgcmlnaHQ6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJGJvcmRlci1yYWRpdXMtbGcgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICAkb2Zmc2V0LWJvcmRlci13aWR0aDogY2FsYygjeyRib3JkZXItcmFkaXVzLWxnfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSk7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRvZmZzZXQtYm9yZGVyLXdpZHRoKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tcmlnaHQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIG9wYWNpdHkpO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cblxuLy8gSWNvbnMgZm9yIHdpdGhpblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gMTAwJSAxMDAlO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBib3JkZXI6ICRzcGlubmVyLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHNwaW5uZXItYm9yZGVyIC43NXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogc3Bpbm5lci1ncm93IC43NXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbn1cbiIsIkBpbXBvcnQgXCJ1dGlsaXRpZXMvYWxpZ25cIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYmFja2dyb3VuZFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9ib3JkZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2Rpc3BsYXlcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZW1iZWRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZmxleFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9mbG9hdFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9vdmVyZmxvd1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9wb3NpdGlvblwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zY3JlZW5yZWFkZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NoYWRvd3NcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2l6aW5nXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3N0cmV0Y2hlZC1saW5rXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NwYWNpbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdGV4dFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy92aXNpYmlsaXR5XCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCIuY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAgIC5kI3skaW5maXh9LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAuZC1wcmludC0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teDogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMSk7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAyKTtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS0jeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14fWJ5I3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teX0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teSAvICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZmlsbCAgICAgICAgIHsgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMCAgICAgICB7IGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMCAgICAgeyBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTEgICAgIHsgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJG92ZXJmbG93cyB7XG4gIC5vdmVyZmxvdy0jeyR2YWx1ZX0geyBvdmVyZmxvdzogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb21tb24gdmFsdWVzXG5AZWFjaCAkcG9zaXRpb24gaW4gJHBvc2l0aW9ucyB7XG4gIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0geyBwb3NpdGlvbjogJHBvc2l0aW9uICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gIH1cbn1cbiIsIi8vXG4vLyBTY3JlZW5yZWFkZXJzXG4vL1xuXG4uc3Itb25seSB7XG4gIEBpbmNsdWRlIHNyLW9ubHkoKTtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGUoKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIC8vIEp1c3QgaW4gY2FzZSBgcG9pbnRlci1ldmVudHM6IG5vbmVgIGlzIHNldCBvbiBhIHBhcmVudFxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy8gSUUxMCBidWdmaXgsIHNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNjk0Nzk2Ny9pZTEwLWhvdmVyLXBzZXVkby1jbGFzcy1kb2VzbnQtd29yay13aXRob3V0LWJhY2tncm91bmQtY29sb3JcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gTWFyZ2luIGFuZCBQYWRkaW5nXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICRwcm9wLCAkYWJicmV2IGluIChtYXJnaW46IG0sIHBhZGRpbmc6IHApIHtcbiAgICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fXIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1sI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbnMgKGUuZy4sIHdoZXJlIGAubWItbjFgIGlzIG5lZ2F0aXZlIHZlcnNpb24gb2YgYC5tYi0xYClcbiAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICBAaWYgJHNpemUgIT0gMCB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlOyB9XG5cbi8vIFJlc3BvbnNpdmUgYWxpZ25tZW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC50ZXh0I3skaW5maXh9LWxlZnQgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LXJpZ2h0ICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG5cbi50ZXh0LWxvd2VyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXVwcGVyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LWNhcGl0YWxpemUgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG5cbi8vIFdlaWdodCBhbmQgaXRhbGljc1xuXG4uZm9udC13ZWlnaHQtbGlnaHQgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LW5vcm1hbCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZGVyICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgIHsgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcblxuLnRleHQtd2hpdGUgeyBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG4udGV4dC1ib2R5IHsgY29sb3I6ICRib2R5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW11dGVkIHsgY29sb3I6ICR0ZXh0LW11dGVkICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgkYmxhY2ssIC41KSAhaW1wb3J0YW50OyB9XG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBJRSAmIDwgRWRnZSAxOFxuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgLy9cblxuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuL3BhbGV0dGVcIjtcbkBpbXBvcnQgXCIuL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi9jb2xvci1jb250cmFzdFwiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG4iLCIvKipcbiAqIFRoZSBjb21wbGV0ZSBtYXRlcmlhbCBwYWxldHRlXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHVibGljXG4gKiBAdHlwZSBtYXBcbiAqIEBncm91cCB0aGVtZXNcbiAqL1xuXG4kbWQtcGFsZXR0ZTogKFxuICByZWQ6IChcbiAgICA1MDogI2ZmZWJlZSxcbiAgICAxMDA6ICNmZmNkZDIsXG4gICAgMjAwOiAjZWY5YTlhLFxuICAgIDMwMDogI2U1NzM3MyxcbiAgICA0MDA6ICNlZjUzNTAsXG4gICAgNTAwOiAjZjQ0MzM2LFxuICAgIDYwMDogI2U1MzkzNSxcbiAgICA3MDA6ICNkMzJmMmYsXG4gICAgODAwOiAjYzYyODI4LFxuICAgIDkwMDogI2I3MWMxYyxcbiAgICBBMTAwOiAjZmY4YTgwLFxuICAgIEEyMDA6ICNmZjUyNTIsXG4gICAgQTQwMDogI2ZmMTc0NCxcbiAgICBBNzAwOiAjZDUwMDAwXG4gICksXG4gIHBpbms6IChcbiAgICA1MDogI2ZjZTRlYyxcbiAgICAxMDA6ICNmOGJiZDAsXG4gICAgMjAwOiAjZjQ4ZmIxLFxuICAgIDMwMDogI2YwNjI5MixcbiAgICA0MDA6ICNlYzQwN2EsXG4gICAgNTAwOiAjZTkxZTYzLFxuICAgIDYwMDogI2Q4MWI2MCxcbiAgICA3MDA6ICNjMjE4NWIsXG4gICAgODAwOiAjYWQxNDU3LFxuICAgIDkwMDogIzg4MGU0ZixcbiAgICBBMTAwOiAjZmY4MGFiLFxuICAgIEEyMDA6ICNmZjQwODEsXG4gICAgQTQwMDogI2Y1MDA1NyxcbiAgICBBNzAwOiAjYzUxMTYyXG4gICksXG4gIHB1cnBsZTogKFxuICAgIDUwOiAjZjNlNWY1LFxuICAgIDEwMDogI2UxYmVlNyxcbiAgICAyMDA6ICNjZTkzZDgsXG4gICAgMzAwOiAjYmE2OGM4LFxuICAgIDQwMDogI2FiNDdiYyxcbiAgICA1MDA6ICM5YzI3YjAsXG4gICAgNjAwOiAjOGUyNGFhLFxuICAgIDcwMDogIzdiMWZhMixcbiAgICA4MDA6ICM2YTFiOWEsXG4gICAgOTAwOiAjNGExNDhjLFxuICAgIEExMDA6ICNlYTgwZmMsXG4gICAgQTIwMDogI2UwNDBmYixcbiAgICBBNDAwOiAjZDUwMGY5LFxuICAgIEE3MDA6ICNhYTAwZmZcbiAgKSxcbiAgZGVlcHB1cnBsZTogKFxuICAgIDUwOiAjZWRlN2Y2LFxuICAgIDEwMDogI2QxYzRlOSxcbiAgICAyMDA6ICNiMzlkZGIsXG4gICAgMzAwOiAjOTU3NWNkLFxuICAgIDQwMDogIzdlNTdjMixcbiAgICA1MDA6ICM2NzNhYjcsXG4gICAgNjAwOiAjNWUzNWIxLFxuICAgIDcwMDogIzUxMmRhOCxcbiAgICA4MDA6ICM0NTI3YTAsXG4gICAgOTAwOiAjMzExYjkyLFxuICAgIEExMDA6ICNiMzg4ZmYsXG4gICAgQTIwMDogIzdjNGRmZixcbiAgICBBNDAwOiAjNjUxZmZmLFxuICAgIEE3MDA6ICM2MjAwZWFcbiAgKSxcbiAgaW5kaWdvOiAoXG4gICAgNTA6ICNlOGVhZjYsXG4gICAgMTAwOiAjYzVjYWU5LFxuICAgIDIwMDogIzlmYThkYSxcbiAgICAzMDA6ICM3OTg2Y2IsXG4gICAgNDAwOiAjNWM2YmMwLFxuICAgIDUwMDogIzNmNTFiNSxcbiAgICA2MDA6ICMzOTQ5YWIsXG4gICAgNzAwOiAjMzAzZjlmLFxuICAgIDgwMDogIzI4MzU5MyxcbiAgICA5MDA6ICMxYTIzN2UsXG4gICAgQTEwMDogIzhjOWVmZixcbiAgICBBMjAwOiAjNTM2ZGZlLFxuICAgIEE0MDA6ICMzZDVhZmUsXG4gICAgQTcwMDogIzMwNGZmZVxuICApLFxuICBibHVlOiAoXG4gICAgNTA6ICNlM2YyZmQsXG4gICAgMTAwOiAjYmJkZWZiLFxuICAgIDIwMDogIzkwY2FmOSxcbiAgICAzMDA6ICM2NGI1ZjYsXG4gICAgNDAwOiAjNDJhNWY1LFxuICAgIDUwMDogIzIxOTZmMyxcbiAgICA2MDA6ICMxZTg4ZTUsXG4gICAgNzAwOiAjMTk3NmQyLFxuICAgIDgwMDogIzE1NjVjMCxcbiAgICA5MDA6ICMwZDQ3YTEsXG4gICAgQTEwMDogIzgyYjFmZixcbiAgICBBMjAwOiAjNDQ4YWZmLFxuICAgIEE0MDA6ICMyOTc5ZmYsXG4gICAgQTcwMDogIzI5NjJmZlxuICApLFxuICBsaWdodGJsdWU6IChcbiAgICA1MDogI2UxZjVmZSxcbiAgICAxMDA6ICNiM2U1ZmMsXG4gICAgMjAwOiAjODFkNGZhLFxuICAgIDMwMDogIzRmYzNmNyxcbiAgICA0MDA6ICMyOWI2ZjYsXG4gICAgNTAwOiAjMDNhOWY0LFxuICAgIDYwMDogIzAzOWJlNSxcbiAgICA3MDA6ICMwMjg4ZDEsXG4gICAgODAwOiAjMDI3N2JkLFxuICAgIDkwMDogIzAxNTc5YixcbiAgICBBMTAwOiAjODBkOGZmLFxuICAgIEEyMDA6ICM0MGM0ZmYsXG4gICAgQTQwMDogIzAwYjBmZixcbiAgICBBNzAwOiAjMDA5MWVhXG4gICksXG4gIGN5YW46IChcbiAgICA1MDogI2UwZjdmYSxcbiAgICAxMDA6ICNiMmViZjIsXG4gICAgMjAwOiAjODBkZWVhLFxuICAgIDMwMDogIzRkZDBlMSxcbiAgICA0MDA6ICMyNmM2ZGEsXG4gICAgNTAwOiAjMDBiY2Q0LFxuICAgIDYwMDogIzAwYWNjMSxcbiAgICA3MDA6ICMwMDk3YTcsXG4gICAgODAwOiAjMDA4MzhmLFxuICAgIDkwMDogIzAwNjA2NCxcbiAgICBBMTAwOiAjODRmZmZmLFxuICAgIEEyMDA6ICMxOGZmZmYsXG4gICAgQTQwMDogIzAwZTVmZixcbiAgICBBNzAwOiAjMDBiOGQ0XG4gICksXG4gIHRlYWw6IChcbiAgICA1MDogI2UwZjJmMSxcbiAgICAxMDA6ICNiMmRmZGIsXG4gICAgMjAwOiAjODBjYmM0LFxuICAgIDMwMDogIzRkYjZhYyxcbiAgICA0MDA6ICMyNmE2OWEsXG4gICAgNTAwOiAjMDA5Njg4LFxuICAgIDYwMDogIzAwODk3YixcbiAgICA3MDA6ICMwMDc5NmIsXG4gICAgODAwOiAjMDA2OTVjLFxuICAgIDkwMDogIzAwNGQ0MCxcbiAgICBBMTAwOiAjYTdmZmViLFxuICAgIEEyMDA6ICM2NGZmZGEsXG4gICAgQTQwMDogIzFkZTliNixcbiAgICBBNzAwOiAjMDBiZmE1XG4gICksXG4gIGdyZWVuOiAoXG4gICAgNTA6ICNlOGY1ZTksXG4gICAgMTAwOiAjYzhlNmM5LFxuICAgIDIwMDogI2E1ZDZhNyxcbiAgICAzMDA6ICM4MWM3ODQsXG4gICAgNDAwOiAjNjZiYjZhLFxuICAgIDUwMDogIzRjYWY1MCxcbiAgICA2MDA6ICM0M2EwNDcsXG4gICAgNzAwOiAjMzg4ZTNjLFxuICAgIDgwMDogIzJlN2QzMixcbiAgICA5MDA6ICMxYjVlMjAsXG4gICAgQTEwMDogI2I5ZjZjYSxcbiAgICBBMjAwOiAjNjlmMGFlLFxuICAgIEE0MDA6ICMwMGU2NzYsXG4gICAgQTcwMDogIzAwYzg1M1xuICApLFxuICBsaWdodGdyZWVuOiAoXG4gICAgNTA6ICNmMWY4ZTksXG4gICAgMTAwOiAjZGNlZGM4LFxuICAgIDIwMDogI2M1ZTFhNSxcbiAgICAzMDA6ICNhZWQ1ODEsXG4gICAgNDAwOiAjOWNjYzY1LFxuICAgIDUwMDogIzhiYzM0YSxcbiAgICA2MDA6ICM3Y2IzNDIsXG4gICAgNzAwOiAjNjg5ZjM4LFxuICAgIDgwMDogIzU1OGIyZixcbiAgICA5MDA6ICMzMzY5MWUsXG4gICAgQTEwMDogI2NjZmY5MCxcbiAgICBBMjAwOiAjYjJmZjU5LFxuICAgIEE0MDA6ICM3NmZmMDMsXG4gICAgQTcwMDogIzY0ZGQxN1xuICApLFxuICBsaW1lOiAoXG4gICAgNTA6ICNmOWZiZTcsXG4gICAgMTAwOiAjZjBmNGMzLFxuICAgIDIwMDogI2U2ZWU5YyxcbiAgICAzMDA6ICNkY2U3NzUsXG4gICAgNDAwOiAjZDRlMTU3LFxuICAgIDUwMDogI2NkZGMzOSxcbiAgICA2MDA6ICNjMGNhMzMsXG4gICAgNzAwOiAjYWZiNDJiLFxuICAgIDgwMDogIzllOWQyNCxcbiAgICA5MDA6ICM4Mjc3MTcsXG4gICAgQTEwMDogI2Y0ZmY4MSxcbiAgICBBMjAwOiAjZWVmZjQxLFxuICAgIEE0MDA6ICNjNmZmMDAsXG4gICAgQTcwMDogI2FlZWEwMFxuICApLFxuICB5ZWxsb3c6IChcbiAgICA1MDogI2ZmZmRlNyxcbiAgICAxMDA6ICNmZmY5YzQsXG4gICAgMjAwOiAjZmZmNTlkLFxuICAgIDMwMDogI2ZmZjE3NixcbiAgICA0MDA6ICNmZmVlNTgsXG4gICAgNTAwOiAjZmZlYjNiLFxuICAgIDYwMDogI2ZkZDgzNSxcbiAgICA3MDA6ICNmYmMwMmQsXG4gICAgODAwOiAjZjlhODI1LFxuICAgIDkwMDogI2Y1N2YxNyxcbiAgICBBMTAwOiAjZmZmZjhkLFxuICAgIEEyMDA6ICNmZmZmMDAsXG4gICAgQTQwMDogI2ZmZWEwMCxcbiAgICBBNzAwOiAjZmZkNjAwXG4gICksXG4gIGFtYmVyOiAoXG4gICAgNTA6ICNmZmY4ZTEsXG4gICAgMTAwOiAjZmZlY2IzLFxuICAgIDIwMDogI2ZmZTA4MixcbiAgICAzMDA6ICNmZmQ1NGYsXG4gICAgNDAwOiAjZmZjYTI4LFxuICAgIDUwMDogI2ZmYzEwNyxcbiAgICA2MDA6ICNmZmIzMDAsXG4gICAgNzAwOiAjZmZhMDAwLFxuICAgIDgwMDogI2ZmOGYwMCxcbiAgICA5MDA6ICNmZjZmMDAsXG4gICAgQTEwMDogI2ZmZTU3ZixcbiAgICBBMjAwOiAjZmZkNzQwLFxuICAgIEE0MDA6ICNmZmM0MDAsXG4gICAgQTcwMDogI2ZmYWIwMFxuICApLFxuICBvcmFuZ2U6IChcbiAgICA1MDogI2ZmZjNlMCxcbiAgICAxMDA6ICNmZmUwYjIsXG4gICAgMjAwOiAjZmZjYzgwLFxuICAgIDMwMDogI2ZmYjc0ZCxcbiAgICA0MDA6ICNmZmE3MjYsXG4gICAgNTAwOiAjZmY5ODAwLFxuICAgIDYwMDogI2ZiOGMwMCxcbiAgICA3MDA6ICNmNTdjMDAsXG4gICAgODAwOiAjZWY2YzAwLFxuICAgIDkwMDogI2U2NTEwMCxcbiAgICBBMTAwOiAjZmZkMTgwLFxuICAgIEEyMDA6ICNmZmFiNDAsXG4gICAgQTQwMDogI2ZmOTEwMCxcbiAgICBBNzAwOiAjZmY2ZDAwXG4gICksXG4gIGRlZXBvcmFuZ2U6IChcbiAgICA1MDogI2ZiZTllNyxcbiAgICAxMDA6ICNmZmNjYmMsXG4gICAgMjAwOiAjZmZhYjkxLFxuICAgIDMwMDogI2ZmOGE2NSxcbiAgICA0MDA6ICNmZjcwNDMsXG4gICAgNTAwOiAjZmY1NzIyLFxuICAgIDYwMDogI2Y0NTExZSxcbiAgICA3MDA6ICNlNjRhMTksXG4gICAgODAwOiAjZDg0MzE1LFxuICAgIDkwMDogI2JmMzYwYyxcbiAgICBBMTAwOiAjZmY5ZTgwLFxuICAgIEEyMDA6ICNmZjZlNDAsXG4gICAgQTQwMDogI2ZmM2QwMCxcbiAgICBBNzAwOiAjZGQyYzAwXG4gICksXG4gIGJyb3duOiAoXG4gICAgNTA6ICNlZmViZTksXG4gICAgMTAwOiAjZDdjY2M4LFxuICAgIDIwMDogI2JjYWFhNCxcbiAgICAzMDA6ICNhMTg4N2YsXG4gICAgNDAwOiAjOGQ2ZTYzLFxuICAgIDUwMDogIzc5NTU0OCxcbiAgICA2MDA6ICM2ZDRjNDEsXG4gICAgNzAwOiAjNWQ0MDM3LFxuICAgIDgwMDogIzRlMzQyZSxcbiAgICA5MDA6ICMzZTI3MjMsXG4gICAgQTEwMDogI2Q3Y2NjOCxcbiAgICBBMjAwOiAjYmNhYWE0LFxuICAgIEE0MDA6ICM4ZDZlNjMsXG4gICAgQTcwMDogIzVkNDAzN1xuICApLFxuICBncmV5OiAoXG4gICAgNTA6ICNmYWZhZmEsXG4gICAgMTAwOiAjZjVmNWY1LFxuICAgIDIwMDogI2VlZWVlZSxcbiAgICAzMDA6ICNlMGUwZTAsXG4gICAgNDAwOiAjYmRiZGJkLFxuICAgIDUwMDogIzllOWU5ZSxcbiAgICA2MDA6ICM3NTc1NzUsXG4gICAgNzAwOiAjNjE2MTYxLFxuICAgIDgwMDogIzQyNDI0MixcbiAgICA5MDA6ICMyMTIxMjEsXG4gICAgQTEwMDogI2ZmZixcbiAgICBBMjAwOiAjMDAwMDAwLFxuICAgIEE0MDA6ICMzMDMwMzAsXG4gICAgQTcwMDogIzYxNjE2MVxuICApLFxuICBibHVlZ3JleTogKFxuICAgIDUwOiAjZWNlZmYxLFxuICAgIDEwMDogI2NmZDhkYyxcbiAgICAyMDA6ICNiMGJlYzUsXG4gICAgMzAwOiAjOTBhNGFlLFxuICAgIDQwMDogIzc4OTA5YyxcbiAgICA1MDA6ICM2MDdkOGIsXG4gICAgNjAwOiAjNTQ2ZTdhLFxuICAgIDcwMDogIzQ1NWE2NCxcbiAgICA4MDA6ICMzNzQ3NGYsXG4gICAgOTAwOiAjMjYzMjM4LFxuICAgIEExMDA6ICNjZmQ4ZGMsXG4gICAgQTIwMDogI2IwYmVjNSxcbiAgICBBNDAwOiAjNzg5MDljLFxuICAgIEE3MDA6ICM0NTVhNjRcbiAgKSxcbiAgd2hpdGU6IChcbiAgICA1MDogI2ZmZixcbiAgICAxMDA6ICNmZmYsXG4gICAgMjAwOiAjZmZmLFxuICAgIDMwMDogI2ZmZixcbiAgICA0MDA6ICNmZmYsXG4gICAgNTAwOiAjZmZmLFxuICAgIDYwMDogI2ZmZixcbiAgICA3MDA6ICNmZmYsXG4gICAgODAwOiAjZmZmLFxuICAgIDkwMDogI2ZmZixcbiAgICBBMTAwOiAjZmZmLFxuICAgIEEyMDA6ICNmZmYsXG4gICAgQTQwMDogI2ZmZixcbiAgICBBNzAwOiAjZmZmXG4gICksXG4gIGJsYWNrOiAoXG4gICAgNTA6ICMwMDAsXG4gICAgMTAwOiAjMDAwLFxuICAgIDIwMDogIzAwMCxcbiAgICAzMDA6ICMwMDAsXG4gICAgNDAwOiAjMDAwLFxuICAgIDUwMDogIzAwMCxcbiAgICA2MDA6ICMwMDAsXG4gICAgNzAwOiAjMDAwLFxuICAgIDgwMDogIzAwMCxcbiAgICA5MDA6ICMwMDAsXG4gICAgQTEwMDogIzAwMCxcbiAgICBBMjAwOiAjMDAwLFxuICAgIEE0MDA6ICMwMDAsXG4gICAgQTcwMDogIzAwMFxuICApXG4pO1xuIiwiLyoqXG4gKiBUaGVtZSBhbnkgY3NzIHByb3BlcnR5IGJhc2VkIG9uIHRoZSBjdXJyZW50IHBhbGV0dGUsIGFjY2VwdGluZyBhIHRoZW1hYmxlXG4gKiB2YWx1ZSB0aGF0IHdpbGwgZ2l2ZSBhbiBjb250cmFzdGVkXG4gKiAtLS1cbiAqIFVzYWdlIGV4YW1wbGU6XG4gKlxuICogJGZvby1wYWxldHRlOiAoXG4gKiAgIHByaW1hcnk6IG1kLWdldC1wYWxldHRlLWNvbG9yKGluZGlnbywgNTAwKSxcbiAqICAgYWNjZW50OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcihwaW5rLCA1MDApLFxuICogICB0aGVtZTogXCJsaWdodFwiXG4gKiApO1xuICpcbiAqIC0tLVxuICogQGFjY2VzcyBwdWJsaWNcbiAqIC0tLVxuICogQHBhcmFtIHtjb2xvcn0gJHR5cGUg4oCU4oCKIFRoZSBkZXNpcmVkIGNvbG9yIGJhc2VkIG9uIG1hdGVyaWFsIHBhbGV0dGVcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSB2YWxpZCBodWVcbiAqL1xuXG5AZnVuY3Rpb24gbWQtZ2V0LXBhbGV0dGUtY29sb3IoJGNvbG9yLCAkaHVlKSB7XG4gIEByZXR1cm4gbWFwLWdldChtYXAtZ2V0KCRtZC1wYWxldHRlLCAkY29sb3IpLCAkaHVlKTtcbn1cblxuXG4vKipcbiAqIEdldCB0aGUgY3VycmVudCB0aGVtZSBtb2RlIGZyb20gdGhlIGN1cnJlbnQgdGhlbWVcbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiAkdGhlbWUtbW9kZTogbWQtZ2V0LXRoZW1lLW1vZGUoKVxuICpcbiAqIC0tLVxuICogQGFjY2VzcyBwcml2YXRlXG4gKi9cblxuQGZ1bmN0aW9uIG1kLWdldC10aGVtZS1tb2RlKCkge1xuICBAcmV0dXJuIG1hcC1nZXQoJG1kLXRoZW1lLXBhbGV0dGUsIHRoZW1lKTtcbn1cblxuXG4vKipcbiAqIFRoZW1lIGFueSBjc3MgcHJvcGVydHkgYmFzZWQgb24gdGhlIGN1cnJlbnQgcGFsZXR0ZSwgYWNjZXB0aW5nIGEgdGhlbWFibGVcbiAqIHZhbHVlIHRoYXQgd2lsbCBnaXZlIGFuIGNvbnRyYXN0ZWRcbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiAubWQtZm9vIHtcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xuICogICBoZWlnaHQ6IDQwcHg7XG4gKiAgIGJhY2tncm91bmQ6IG1kLXRoZW1lKHByaW1hcnkpO1xuICogfVxuICpcbiAqIC0tLVxuICogQGFjY2VzcyBwdWJsaWNcbiAqIC0tLVxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgdGhlbWFibGUgdmFsdWVcbiAqL1xuXG5AZnVuY3Rpb24gbWQtdGhlbWUoJHR5cGUsICRiYWNrZ3JvdW5kOiBcIlwiKSB7XG4gICRjb2xvci10aGVtZTogbnVsbDtcblxuICBAaWYgJHR5cGUgPT0gXCJwcmltYXJ5XCIgb3IgJHR5cGUgPT0gXCJhY2NlbnRcIiB7XG4gICAgQHJldHVybiBtZC1nZXQtY29sb3ItYnktdHlwZSgkdHlwZSwgbnVsbCk7XG4gIH0gQGVsc2Uge1xuICAgICRjb2xvci10aGVtZTogbWFwLWdldCgkbWQtdGhlbWUtcGFsZXR0ZSwgdGhlbWUpO1xuXG4gICAgQGlmICRiYWNrZ3JvdW5kICE9IFwiXCIge1xuICAgICAgJGNvbG9yLXRoZW1lOiBtZC1waWNrLWNvbnRyYXN0KG1kLWdldC1jb2xvci1ieS10eXBlKCRiYWNrZ3JvdW5kLCAkY29sb3ItdGhlbWUpKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuIG1kLWdldC1jb2xvci1ieS10aGVtZSgkY29sb3ItdGhlbWUsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8qKlxuICogR2V0IGEgY29sb3IgYmFzZWQgb24gdHlwZSBieSB0aGVtZVxuICogLS0tXG4gKiBVc2FnZSBleGFtcGxlOlxuICpcbiAqICRjb2xvcjogbWQtZ2V0LWNvbG9yLWJ5LXRoZW1lKGRhcmssIHByaW1hcnkpXG4gKlxuICogLS0tXG4gKiBAYWNjZXNzIHB1YmxpY1xuICogLS0tXG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yLXRoZW1lIOKAlOKAiiBUaGUgdGhlbWUgY29sb3IgfCBBY2NlcHRzIGRhcmsgb3IgbGlnaHRcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogVGhlIGNvbG9yIHR5cGVcbiAqL1xuXG5AZnVuY3Rpb24gbWQtZ2V0LWNvbG9yLWJ5LXRoZW1lKCRjb2xvci10aGVtZSwgJHR5cGUpIHtcbiAgJHRoZW1lOiBtYXAtZ2V0KCRtZC1jb2xvci1sZXZlbHMsICRjb2xvci10aGVtZSk7XG5cbiAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZSwgJHR5cGUpO1xufVxuXG5cbi8qKlxuICogR2V0IGEgY29sb3IgYmFzZWQgb24gdHlwZSBvbmx5XG4gKiAtLS1cbiAqIFVzYWdlIGV4YW1wbGU6XG4gKlxuICogJGNvbG9yMTogbWQtZ2V0LWNvbG9yLWJ5LXR5cGUoYmFja2dyb3VuZCwgZGFyaylcbiAqICRjb2xvcjE6IG1kLWdldC1jb2xvci1ieS10eXBlKGFjY2VudClcbiAqXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHVibGljXG4gKiAtLS1cbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogVGhlIGNvbG9yIHR5cGVcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdGhlbWUg4oCU4oCKIFRoZSBmYWxsYmFjayB0aGVtZVxuICovXG5cbkBmdW5jdGlvbiBtZC1nZXQtY29sb3ItYnktdHlwZSgkdHlwZSwgJHRoZW1lKSB7XG4gICRuZXdDb2xvcjogbWFwLWdldCgkbWQtdGhlbWUtcGFsZXR0ZSwgJHR5cGUpO1xuXG4gIEBpZiAkbmV3Q29sb3IgPT0gbnVsbCB7XG4gICAgJG5ld0NvbG9yOiBtZC1nZXQtY29sb3ItYnktdGhlbWUoJHRoZW1lLCAkdHlwZSk7XG4gIH1cblxuICBAcmV0dXJuICRuZXdDb2xvclxufVxuIiwiLyoqXG4gKiBUaGUgZGVmYXVsdCB0aGVtZSBwYWxldHRlXG4gKiBwcmltYXJ5OiBpbmRpZ28gNTAwICMzZjUxYjVcbiAqIGFjY2VudDogcGluayA1MDAgI2U5MWU2M1xuICogdGhlbWU6IGxpZ2h0XG4gKlxuICogSXQgY2FuIGJlIHVzZWQganVzdCBiZWZvcmUgaW1wb3J0aW5nIHRoZSBWdWUgTWF0ZXJpYWwgc3R5bGVzaGVldFxuICpcbiAqIC0tLVxuICogQGFjY2VzcyBwdWJsaWNcbiAqIEB0eXBlIGNvbG9ybWFwXG4gKiBAZ3JvdXAgdGhlbWVzXG4gKi9cblxuJG1kLWRlZmF1bHQtcGFsZXR0ZTogKFxuICBwcmltYXJ5OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcihibHVlLCBBMjAwKSxcbiAgYWNjZW50OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcihyZWQsIEEyMDApLFxuICB0aGVtZTogXCJsaWdodFwiXG4pICFkZWZhdWx0O1xuXG5cbi8qKlxuICogVGVtcG9yYXJ5IHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtYWJsZSB2YWx1ZXNcbiAqIC0tLVxuICogQGFjY2VzcyBwcml2YXRlXG4gKiBAdHlwZSBtYXBcbiAqIEBncm91cCB0aGVtZXNcbiAqL1xuJG1kLXRoZW1lLXBhbGV0dGU6ICgpO1xuXG5cbi8qKlxuICogTWFwIHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtZXMgdG8gYmUgcHJvY2Vzc2VkIGJ5IGVhY2ggY29tcG9uZW50XG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHJpdmF0ZVxuICogQHR5cGUgbWFwXG4gKiBAZ3JvdXAgdGhlbWVzXG4gKi9cbiRtZC10aGVtZXM6ICgpO1xuXG5cbi8qKlxuICogU3RvcmUgdGhlIGN1cnJlbnQgdGhlbWUgbmFtZVxuICogLS0tXG4gKiBAYWNjZXNzIHByaXZhdGVcbiAqIEB0eXBlIHN0cmluZ1xuICogQGdyb3VwIHRoZW1lc1xuICovXG5cbiRtZC1jdXJyZW50LXRoZW1lOiBudWxsO1xuXG5cbi8qKlxuICogVGhlIGNvbG9yIGNvbnRyYXN0IHZhbHVlc1xuICogLS0tXG4gKiBAYWNjZXNzIHByaXZhdGVcbiAqIEB0eXBlIG1hcFxuICogQGdyb3VwIHRoZW1lc1xuICovXG5cbiRtZC1jb2xvci1sZXZlbHM6IChcbiAgbGlnaHQ6IChcbiAgICBiYWNrZ3JvdW5kOiAjZmZmLFxuICAgIGJhY2tncm91bmQtdmFyaWFudDogI2ZhZmFmYSxcbiAgICB0ZXh0LXByaW1hcnk6IHJnYmEoIzAwMCwgLjg3KSxcbiAgICB0ZXh0LWFjY2VudDogcmdiYSgjMDAwLCAuNTQpLFxuICAgIHRleHQtaGludDogcmdiYSgjMDAwLCAuMzgpLFxuICAgIGRpc2FibGVkOiByZ2JhKCMwMDAsIC4yNiksXG4gICAgZGlzYWJsZWQtYmFja2dyb3VuZDogcmdiYSgjMDAwLCAuMTIpLFxuICAgIGhpZ2hsaWdodDogcmdiYSgjMDAwLCAuMTIpLFxuICAgIGljb246IHJnYmEoIzAwMCwgLjU0KSxcbiAgICBpY29uLWRpc2FibGVkOiByZ2JhKCMwMDAsIC4zOCksXG4gICAgZGl2aWRlcjogcmdiYSgjMDAwLCAuMTIpLFxuICAgIHNjcm9sbGJhcjogIzc1NzU3NSxcbiAgICBzY3JvbGxiYXItYmFja2dyb3VuZDogZGFya2VuKCNlZWUsIDUlKSxcbiAgICB0b29sdGlwOiAjNjE2MTYxXG4gICksXG4gIGRhcms6IChcbiAgICBiYWNrZ3JvdW5kOiAjNDI0MjQyLFxuICAgIGJhY2tncm91bmQtdmFyaWFudDogIzMwMzAzMCxcbiAgICB0ZXh0LXByaW1hcnk6ICNmZmYsXG4gICAgdGV4dC1hY2NlbnQ6IHJnYmEoI2ZmZiwgLjcpLFxuICAgIHRleHQtaGludDogcmdiYSgjZmZmLCAuNSksXG4gICAgZGlzYWJsZWQ6IHJnYmEoI2ZmZiwgLjMpLFxuICAgIGRpc2FibGVkLWJhY2tncm91bmQ6IHJnYmEoI2ZmZiwgLjEyKSxcbiAgICBoaWdobGlnaHQ6IHJnYmEoI2ZmZiwgLjEyKSxcbiAgICBpY29uOiAjZmZmLFxuICAgIGljb24tZGlzYWJsZWQ6IHJnYmEoI2ZmZiwgLjUpLFxuICAgIGRpdmlkZXI6IHJnYmEoI2ZmZiwgLjEyKSxcbiAgICBzY3JvbGxiYXI6ICM5RTlFOUUsXG4gICAgc2Nyb2xsYmFyLWJhY2tncm91bmQ6ICMyMTIxMjEsXG4gICAgdG9vbHRpcDogI2ZmZlxuICApXG4pO1xuIiwiLyoqXG4gKiBIaWdodGx5IGJhc2VkIG9uOiBcIlVzaW5nIFNhc3MgdG8gYXV0b21hdGljYWxseSBwaWNrIHRleHQgY29sb3JzXCJcbiAqIGh0dHBzOi8vbWVkaXVtLmNvbS9kZXYtY2hhbm5lbC91c2luZy1zYXNzLXRvLWF1dG9tYXRpY2FsbHktcGljay10ZXh0LWNvbG9ycy00YmE3NjQ1ZDI3OTZcbiAqL1xuXG4vKipcbiAqIFByZWNvbXB1dGVkIGxpbmVhciBjb2xvciBjaGFubmVsIHZhbHVlcywgZm9yIHVzZSBpbiBjb250cmFzdCBjYWxjdWxhdGlvbnMuXG4gKiBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC1URUNIUy9HMTcuaHRtbCNHMTctdGVzdHNcbiAqIC0tLVxuICpcbiAqICBBbGdvcml0aG0sIGZvciBjIGluIDAgdG8gMjU1OlxuICogIGYoYykge1xuICogICAgYyA9IGMgLyAyNTU7XG4gKiAgICByZXR1cm4gYyA8IDAuMDM5MjggPyBjIC8gMTIuOTIgOiBNYXRoLnBvdygoYyArIDAuMDU1KSAvIDEuMDU1LCAyLjQpO1xuICogIH1cbiAqXG4gKiAgVGhpcyBsb29rdXAgdGFibGUgaXMgbmVlZGVkIHNpbmNlIHRoZXJlIGlzIG5vIGBwb3dgIGluIFNBU1MuXG4gKlxuICogLS0tXG4gKiBAYWNjZXNzIHByaXZhdGVcbiAqIEB0eXBlIE1hcFxuICogQGdyb3VwIHRoZW1lc1xuICovXG5cbiRtZC1saW5lYXItY2hhbm5lbC12YWx1ZXM6XG4gIDBcbiAgLjAwMDMwMzUyNjk4MzU0ODgzNzVcbiAgLjAwMDYwNzA1Mzk2NzA5NzY3NVxuICAuMDAwOTEwNTgwOTUwNjQ2NTEyNVxuICAuMDAxMjE0MTA3OTM0MTk1MzVcbiAgLjAwMTUxNzYzNDkxNzc0NDE4NzRcbiAgLjAwMTgyMTE2MTkwMTI5MzAyNVxuICAuMDAyMTI0Njg4ODg0ODQxODYyNlxuICAuMDAyNDI4MjE1ODY4MzkwN1xuICAuMDAyNzMxNzQyODUxOTM5NTM3M1xuICAuMDAzMDM1MjY5ODM1NDg4Mzc1XG4gIC4wMDMzNDY1MzU3NjM4OTkxNjFcbiAgLjAwMzY3NjUwNzMyNDA0NzQzNlxuICAuMDA0MDI0NzE3MDE4NDk2MzA3XG4gIC4wMDQzOTE0NDIwMzc0MTAyOTNcbiAgLjAwNDc3Njk1MzQ4MDY5MzcyOVxuICAuMDA1MTgxNTE2NzAyMzM4Mzg2XG4gIC4wMDU2MDUzOTE2MjQyMDI3MjNcbiAgLjAwNjA0ODgzMzAyMjg1NzA1NFxuICAuMDA2NTEyMDkwNzkyNTk0NDc1XG4gIC4wMDY5OTU0MTAxODcyNjUzODdcbiAgLjAwNzQ5OTAzMjA0MzIyNjE3NVxuICAuMDA4MDIzMTkyOTg1Mzg0OTk0XG4gIC4wMDg1NjgxMjU2MTgwNjkzMDdcbiAgLjAwOTEzNDA1ODcwMjIyMDc4N1xuICAuMDA5NzIxMjE3MzIwMjM3ODVcbiAgLjAxMDMyOTgyMzAyOTYyNjkzNlxuICAuMDEwOTYwMDk0MDA2NDg4MjQ2XG4gIC4wMTE2MTIyNDUxNzk3NDM4ODVcbiAgLjAxMjI4NjQ4ODM1NjkxNTg3MlxuICAuMDEyOTgzMDMyMzQyMTczMDEyXG4gIC4wMTM3MDIwODMwNDcyODk2ODZcbiAgLjAxNDQ0Mzg0MzU5NjA5MjU0NVxuICAuMDE1MjA4NTE0NDIyOTEyNzFcbiAgLjAxNTk5NjI5MzM2NTUwOTYzXG4gIC4wMTY4MDczNzU3NTI4ODczODRcbiAgLjAxNzY0MTk1NDQ4ODM4NDA3OFxuICAuMDE4NTAwMjIwMTI4Mzc5Njk3XG4gIC4wMTkzODIzNjA5NTY5MzU3MjNcbiAgLjAyMDI4ODU2MzA1NjY1MjRcbiAgLjAyMTIxOTAxMDM3NjAwMzU1NVxuICAuMDIyMTczODg0NzkzMzg3Mzg1XG4gIC4wMjMxNTMzNjYxNzgxMTA0MVxuICAuMDI0MTU3NjMyNDQ4NTA0NzU2XG4gIC4wMjUxODY4NTk2MjczNjE2M1xuICAuMDI2MjQxMjIxODk0ODQ5ODk4XG4gIC4wMjczMjA4OTE2MzkwNzQ4OTRcbiAgLjAyODQyNjAzOTUwNDQyMDc5M1xuICAuMDI5NTU2ODM0NDM3ODA4OFxuICAuMDMwNzEzNDQzNzMyOTkzNjM1XG4gIC4wMzE4OTYwMzMwNzMwMTE1M1xuICAuMDMzMTA0NzY2NTcwODg1MDU1XG4gIC4wMzQzMzk4MDY4MDg2ODIxN1xuICAuMDM1NjAxMzE0ODc1MDIwMzRcbiAgLjAzNjg4OTQ1MDQwMTEwMDA0XG4gIC4wMzgyMDQzNzE1OTUzNDY1XG4gIC4wMzk1NDYyMzUyNzY3MzI4NFxuICAuMDQwOTE1MTk2OTA2ODUzMTlcbiAgLjA0MjMxMTQxMDYyMDgwOTY3NVxuICAuMDQzNzM1MDI5MjU2OTczNDY1XG4gIC4wNDUxODYyMDQzODU2NzU1NFxuICAuMDQ2NjY1MDg2MzM2ODgwMDk1XG4gIC4wNDgxNzE4MjQyMjY4ODk0MlxuICAuMDQ5NzA2NTY1OTg0MTI3MjNcbiAgLjA1MTI2OTQ1ODM3NDA0MzI0XG4gIC4wNTI4NjA2NDcwMjMxODAyNDZcbiAgLjA1NDQ4MDI3NjQ0MjQ0MjM3XG4gIC4wNTYxMjg0OTAwNDk2MDAwOVxuICAuMDU3ODA1NDMwMTkxMDY3MjNcbiAgLjA1OTUxMTIzODE2Mjk4MTJcbiAgLjA2MTI0NjA1NDIzMTYxNzYxXG4gIC4wNjMwMTAwMTc2NTMxNjc2N1xuICAuMDY0ODAzMjY2NjkyOTA1NzdcbiAgLjA2NjYyNTkzODY0Mzc3Mjg5XG4gIC4wNjg0NzgxNjk4NDQ0MDAxN1xuICAuMDcwMzYwMDk1Njk2NTk1ODhcbiAgLjA3MjI3MTg1MDY4MjMxNzQ4XG4gIC4wNzQyMTM1NjgzODAxNDk2M1xuICAuMDc2MTg1MzgxNDgxMzA3ODVcbiAgLjA3ODE4NzQyMTgwNTE4NjMzXG4gIC4wODAyMTk4MjAzMTQ0NjgzMlxuICAuMDgyMjgyNzA3MTI5ODE0OFxuICAuMDg0Mzc2MjExNTQ0MTQ4ODJcbiAgLjA4NjUwMDQ2MjAzNjU0OTc2XG4gIC4wODg2NTU1ODYyODU3NzI5NFxuICAuMDkwODQxNzExMTgzNDA3NjhcbiAgLjA5MzA1ODk2Mjg0NjY4NzQ1XG4gIC4wOTUzMDc0NjY2MzA5NjQ3XG4gIC4wOTc1ODczNDcxNDE4NjI0NlxuICAuMDk5ODk4NzI4MjQ3MTEzODlcbiAgLjEwMjI0MTczMzA4ODEwMTMyXG4gIC4xMDQ2MTY0ODQwOTExMDQxOVxuICAuMTA3MDIzMTAyOTc4MjY3NjFcbiAgLjEwOTQ2MTcxMDc3ODI5OTMzXG4gIC4xMTE5MzI0Mjc4MzY5MDU2XG4gIC4xMTQ0MzUzNzM4MjY5NzM3M1xuICAuMTE2OTcwNjY3NzU4NTEwODRcbiAgLjExOTUzODQyNzk4ODM0NTYyXG4gIC4xMjIxMzg3NzIyMjk2MDE4N1xuICAuMTI0NzcxODE3NTYwOTUwNDlcbiAgLjEyNzQzNzY4MDQzNTY0NzQzXG4gIC4xMzAxMzY0NzY2OTAzNjQzXG4gIC4xMzI4NjgzMjE1NTM4MTc5OFxuICAuMTM1NjMzMzI5NjU1MjA1NjZcbiAgLjEzODQzMTYxNTAzMjQ1MTgzXG4gIC4xNDEyNjMyOTExNDAyNzE2NFxuICAuMTQ0MTI4NDcwODU4MDU3NzdcbiAgLjE0NzAyNzI2NjQ5NzU5NDk4XG4gIC4xNDk5NTk3ODk4MTA2MDg1NlxuICAuMTUyOTI2MTUxOTk2MTUwMTdcbiAgLjE1NTkyNjQ2MzcwNzgyNzRcbiAgLjE1ODk2MDgzNTA2MDg4MDRcbiAgLjE2MjAyOTM3NTYzOTExMVxuICAuMTY1MTMyMTk0NTAxNjY3NlxuICAuMTY4MjY5NDAwMTg5NjkwNzVcbiAgLjE3MTQ0MTEwMDczMjgyMjZcbiAgLjE3NDY0NzQwMzY1NTU4NTA0XG4gIC4xNzc4ODg0MTU5ODM2MjkxMlxuICAuMTgxMTY0MjQ0MjQ5ODYwMjJcbiAgLjE4NDQ3NDk5NDUwMDQ0MVxuICAuMTg3ODIwNzcyMzAwNjc3ODdcbiAgLjE5MTIwMTY4Mjc0MDc5MTM4XG4gIC4xOTQ2MTc4MzA0NDE1NzU4XG4gIC4xOTgwNjkzMTk1NTk5NDg4NlxuICAuMjAxNTU2MjUzNzk0Mzk3MDdcbiAgLjIwNTA3ODczNjM5MDMxNjkzXG4gIC4yMDg2MzY4NzAxNDUyNTU3NVxuICAuMjEyMjMwNzU3NDE0MDU1MjNcbiAgLjIxNTg2MDUwMDExMzg5OTI2XG4gIC4yMTk1MjYxOTk3MjkyNjkyXG4gIC4yMjMyMjc5NTczMTY4MDg1XG4gIC4yMjY5NjU4NzM1MTAwOTgzNlxuICAuMjMwNzQwMDQ4NTI0MzQ5MTVcbiAgLjIzNDU1MDU4MjE2MTAwNTIyXG4gIC4yMzgzOTc1NzM4MTIyNzFcbiAgLjI0MjI4MTEyMjQ2NTU1NDg2XG4gIC4yNDYyMDEzMjY3MDc4MzU0OFxuICAuMjUwMTU4Mjg0NzI5OTUzNDRcbiAgLjI1NDE1MjA5NDMzMDgyNjc1XG4gIC4yNTgxODI4NTI5MjE1OTU4XG4gIC4yNjIyNTA2NTc1Mjk2OTYyM1xuICAuMjY2MzU1NjA0ODAyODYyNDdcbiAgLjI3MDQ5Nzc5MTAxMzA2NThcbiAgLjI3NDY3NzMxMjA2MDM4NDY1XG4gIC4yNzg4OTQyNjM0NzY4MTA0XG4gIC4yODMxNDg3NDA0Mjk5OTIxXG4gIC4yODc0NDA4Mzc3MjY5MTc1XG4gIC4yOTE3NzA2NDk4MTc1MzU4N1xuICAuMjk2MTM4MjcwNzk4MzIxMVxuICAuMzAwNTQzNzk0NDE1Nzc2NVxuICAuMzA0OTg3MzE0MDY5ODg2M1xuICAuMzA5NDY4OTIyODE3NTA4NTRcbiAgLjMxMzk4ODcxMzM3NTcxNzU0XG4gIC4zMTg1NDY3NzgxMjUwOTE4NlxuICAuMzIzMTQzMjA5MTEyOTUwNzVcbiAgLjMyNzc3ODA5ODA1NjU0MjJcbiAgLjMzMjQ1MTUzNjM0NjE3OTM1XG4gIC4zMzcxNjM2MTUwNDgzMzAzN1xuICAuMzQxOTE0NDI0OTA4NjYwOVxuICAuMzQ2NzA0MDU2MzU1MDI5NlxuICAuMzUxNTMyNTk5NTAwNDM5MzZcbiAgLjM1NjQwMDE0NDE0NTk0MzVcbiAgLjM2MTMwNjc3OTc4MzUwOTVcbiAgLjM2NjI1MjU5NTU5ODgzOTVcbiAgLjM3MTIzNzY4MDQ3NDE0OTFcbiAgLjM3NjI2MjEyMjk5MDkwNjVcbiAgLjM4MTMyNjAxMTQzMjUzMDE0XG4gIC4zODY0Mjk0MzM3ODcwNDlcbiAgLjM5MTU3MjQ3Nzc0OTcyMzI2XG4gIC4zOTY3NTUyMzA3MjU2MjY4NVxuICAuNDAxOTc3Nzc5ODMyMTk1OFxuICAuNDA3MjQwMjExOTAxNzM2N1xuICAuNDEyNTQyNjEzNDgzOTAzNzVcbiAgLjQxNzg4NTA3MDg0ODEzNzVcbiAgLjQyMzI2NzY2OTk4NjA3MTdcbiAgLjQyODY5MDQ5NjYxMzkwNjZcbiAgLjQzNDE1MzYzNjE3NDc0ODk1XG4gIC40Mzk2NTcxNzM4NDA5MTg4XG4gIC40NDUyMDExOTQ1MTYyMjc4NlxuICAuNDUwNzg1NzgyODM4MjIzNDZcbiAgLjQ1NjQxMTAyMzE4MDQwNDY2XG4gIC40NjIwNzY5OTk2NTQ0MDcxXG4gIC40Njc3ODM3OTYxMTIxNTlcbiAgLjQ3MzUzMTQ5NjE0ODAwOTU1XG4gIC40NzkzMjAxODMxMDA4MjY4XG4gIC40ODUxNDk5NDAwNTYwNzA0XG4gIC40OTEwMjA4NDk4NDc4MzU2XG4gIC40OTY5MzI5OTUwNjA4NzA0XG4gIC41MDI4ODY0NTgwMzI1Njg3XG4gIC41MDg4ODEzMjA4NTQ5MzM4XG4gIC41MTQ5MTc2NjUzNzY1MjE0XG4gIC41MjA5OTU1NzMyMDQzNTQzXG4gIC41MjcxMTUxMjU3MDU4MTMxXG4gIC41MzMyNzY0MDQwMTA1MDUyXG4gIC41Mzk0Nzk0ODkwMTIxMDcyXG4gIC41NDU3MjQ0NjEzNzAxODY2XG4gIC41NTIwMTE0MDE1MTIwMDAxXG4gIC41NTgzNDAzODk2MzQyNjc5XG4gIC41NjQ3MTE1MDU3MDQ5MjkyXG4gIC41NzExMjQ4Mjk0NjQ4NzMxXG4gIC41Nzc1ODA0NDA0Mjk2NTA2XG4gIC41ODQwNzg0MTc4OTExNjQxXG4gIC41OTA2MTg4NDA5MTkzMzY5XG4gIC41OTcyMDE3ODgzNjM3NjM0XG4gIC42MDM4MjczMzg4NTUzMzc4XG4gIC42MTA0OTU1NzA4MDc4NjQ4XG4gIC42MTcyMDY1NjI0MTk2NTExXG4gIC42MjM5NjAzOTE2NzUwNzYxXG4gIC42MzA3NTcxMzYzNDYxNDY4XG4gIC42Mzc1OTY4NzM5OTQwMzI2XG4gIC42NDQ0Nzk2ODE5NzA1ODIxXG4gIC42NTE0MDU2Mzc0MTk4MjQyXG4gIC42NTgzNzQ4MTcyNzk0NDg1XG4gIC42NjUzODcyOTgyODIyNzJcbiAgLjY3MjQ0MzE1Njk1NzY4NzVcbiAgLjY3OTU0MjQ2OTYzMzA5MzhcbiAgLjY4NjY4NTMxMjQzNTMxMzVcbiAgLjY5Mzg3MTc2MTI5MTk4OTlcbiAgLjcwMTEwMTg5MTkzMjk3MzFcbiAgLjcwODM3NTc3OTg5MTY4NjhcbiAgLjcxNTY5MzUwMDUwNjQ4MDdcbiAgLjcyMzA1NTEyODkyMTk2OTNcbiAgLjczMDQ2MDc0MDA5MDM1MzdcbiAgLjczNzkxMDQwODc3MjczMDhcbiAgLjc0NTQwNDIwOTU0MDM4NzRcbiAgLjc1Mjk0MjIxNjc3NjA3NzlcbiAgLjc2MDUyNDUwNDY3NTI5MjRcbiAgLjc2ODE1MTE0NzI0NzUwN1xuICAuNzc1ODIyMjE4MzE3NDIzNlxuICAuNzgzNTM3NzkxNTI2MTkzNVxuICAuNzkxMjk3OTQwMzMyNjMwMlxuICAuNzk5MTAyNzM4MDE0NDA5XG4gIC44MDY5NTIyNTc2NjkyNTE2XG4gIC44MTQ4NDY1NzIyMTYxMDEyXG4gIC44MjI3ODU3NTQzOTYyODM1XG4gIC44MzA3Njk4NzY3NzQ2NTQ2XG4gIC44Mzg3OTkwMTE3NDA3NFxuICAuODQ2ODczMjMxNTA5ODU4XG4gIC44NTQ5OTI2MDgxMjQyMzM4XG4gIC44NjMxNTcyMTM0NTQxMDIzXG4gIC44NzEzNjcxMTkxOTg3OTcyXG4gIC44Nzk2MjIzOTY4ODc4MzE3XG4gIC44ODc5MjMxMTc4ODE5NjYzXG4gIC44OTYyNjkzNTMzNzQyNjY0XG4gIC45MDQ2NjExNzQzOTExNDk2XG4gIC45MTMwOTg2NTE3OTM0MTkyXG4gIC45MjE1ODE4NTYyNzcyOTQ2XG4gIC45MzAxMTA4NTgzNzU0MjM3XG4gIC45Mzg2ODU3Mjg0NTc4ODhcbiAgLjk0NzMwNjUzNjczMzE5OTlcbiAgLjk1NTk3MzM1MzI0OTI4NjFcbiAgLjk2NDY4NjI0Nzg5NDQ2NTFcbiAgLjk3MzQ0NTI5MDM5ODQxMjVcbiAgLjk4MjI1MDU1MDMzMzExNzFcbiAgLjk5MTEwMjA5NzExMzgyOThcbiAgMTtcblxuXG4vKipcbiAqIENhbGN1bGF0ZSB0aGUgbHVtaW5hbmNlIGZvciBhIGNvbG9yLlxuICogLS0tXG4gKiBAYWNjZXNzIHByaXZhdGVcbiAqIC0tLVxuICogQHBhcmFtIHtzdHJpbmd9ICRjb2xvciDigJTigIogVGhlIGNvbG9yIHRvIGJlIGFuYWx5c2VkXG4gKi9cblxuQGZ1bmN0aW9uIG1kLWNoZWNrLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgJHJlZDogbnRoKCRtZC1saW5lYXItY2hhbm5lbC12YWx1ZXMsIHJlZCgkY29sb3IpICsgMSk7XG4gICRncmVlbjogbnRoKCRtZC1saW5lYXItY2hhbm5lbC12YWx1ZXMsIGdyZWVuKCRjb2xvcikgKyAxKTtcbiAgJGJsdWU6IG50aCgkbWQtbGluZWFyLWNoYW5uZWwtdmFsdWVzLCBibHVlKCRjb2xvcikgKyAxKTtcblxuICBAcmV0dXJuIC4yMTI2ICogJHJlZCArIC43MTUyICogJGdyZWVuICsgLjA3MjIgKiAkYmx1ZTtcbn1cblxuXG4vKipcbiAqIENhbGN1bGF0ZSB0aGUgY29udHJhc3QgcmF0aW8gYmV0d2VlbiB0d28gY29sb3JzLlxuICogLS0tXG4gKiBAYWNjZXNzIHByaXZhdGVcbiAqIC0tLVxuICogQHBhcmFtIHtzdHJpbmd9ICRiZyDigJTigIogVGhlIGJnIGNvbG9yXG4gKiBAcGFyYW0ge3N0cmluZ30gJGZnIOKAlOKAiiBUaGUgZmcgY29sb3IgdG8gYmUgY29tcGFyZWRcbiAqL1xuXG5AZnVuY3Rpb24gbWQtY2FsY3VsYXRlLWNvbnRyYXN0KCRiZywgJGZnKSB7XG4gICRiZ0x1bTogbWQtY2hlY2stbHVtaW5hbmNlKCRiZykgKyAuMjtcbiAgJGZnTHVtOiBtZC1jaGVjay1sdW1pbmFuY2UoJGZnKSArIC4yO1xuXG4gIEByZXR1cm4gbWF4KCRiZ0x1bSwgJGZnTHVtKSAvIG1pbigkYmdMdW0sICRmZ0x1bSk7XG59XG5cblxuLyoqXG4gKiBEZXRlcm1pbmUgd2hldGhlciB0byB1c2UgZGFyayBvciBsaWdodCB0ZXh0IG9uIHRvcCBvZiBnaXZlbiBjb2xvci5cbiAqIFJldHVybnMgZGFyayBvciBsaWdodCBkZXBlbmRpbmcgb24gdGhlIGNvbnRyYXN0IHJhdGlvLlxuICogLS0tXG4gKiBAYWNjZXNzIHByaXZhdGVcbiAqIC0tLVxuICogQHBhcmFtIHtzdHJpbmd9ICRjb2xvciDigJTigIogVGhlIGRlc2lyZWQgY29sb3IgdG8gYmUgY29tcGFyZWRcbiAqL1xuXG5AZnVuY3Rpb24gbWQtcGljay1jb250cmFzdCgkY29sb3IpIHtcbiAgJGxpZ2h0Q29sb3I6IG1hcC1nZXQobWFwLWdldCgkbWQtY29sb3ItbGV2ZWxzLCBkYXJrKSwgdGV4dC1wcmltYXJ5KTtcbiAgJGxpZ2h0Q29udHJhc3Q6IG1kLWNhbGN1bGF0ZS1jb250cmFzdCgkY29sb3IsICRsaWdodENvbG9yKTtcbiAgJGRhcmtDb2xvcjogbWFwLWdldChtYXAtZ2V0KCRtZC1jb2xvci1sZXZlbHMsIGxpZ2h0KSwgdGV4dC1wcmltYXJ5KTtcbiAgJGRhcmtDb250cmFzdDogbWQtY2FsY3VsYXRlLWNvbnRyYXN0KCRjb2xvciwgJGRhcmtDb2xvcik7XG5cbiAgQGlmICgkbGlnaHRDb250cmFzdCA+ICRkYXJrQ29udHJhc3QpIHtcbiAgICBAcmV0dXJuIFwiZGFya1wiO1xuICB9XG5cbiAgQHJldHVybiBcImxpZ2h0XCI7XG59XG4iLCJAaW1wb3J0ICcuLi9iYXNlL3RoZW1lLnNjc3MnO1xuXG4vKipcbiAqIE92ZXJyaWRlIGV4dGVuZGluZyB0aGUgZGVmYXVsdCBwYWxldHRlIGdpdmluZyBuZXcgdmFsdWVzLiBJdCB3aWxsIGV4dGVuZFxuICogdGhlIGRlZmF1bHQgdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXG4gKiAtLS1cbiAqIFVzYWdlIGV4YW1wbGU6XG4gKlxuICogQGluY2x1ZGUgbWQtb3ZlcnJpZGUtcGFsZXR0ZSAoKFxuICogICBhY2NlbnQ6IGJsdWUsXG4gKiAgIHRoZW1lOiBcImRhcmtcIlxuICogKSlcbiAqXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHVibGljXG4gKiBAcGFyYW0ge21hcH0gJHBhbGV0dGUg4oCU4oCKIFRoZSBuZXcgcGFsZXR0ZVxuICovXG5cbkBtaXhpbiBtZC1vdmVycmlkZS1wYWxldHRlICgkcGFsZXR0ZSkge1xuICAkbWQtZGVmYXVsdC1wYWxldHRlOiBtYXAtbWVyZ2UoJG1kLWRlZmF1bHQtcGFsZXR0ZSwgJHBhbGV0dGUpICFnbG9iYWw7XG59XG5cblxuLyoqXG4gKiBDcmVhdGUgYSBuZXcgdGhlbWUgYmFzZWQgb24gYSBnaXZlbiBwYWxldHRlLiBJdCB3aWxsIGV4dGVuZCB0aGUgZGVmYXVsdFxuICogdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXG4gKiAtLS1cbiAqIFVzYWdlIGV4YW1wbGU6XG4gKlxuICogQGluY2x1ZGUgbWQtcmVnaXN0ZXItdGhlbWUoXCJhbHRlcm5hdGl2ZVwiLCAoXG4gKiAgIHByaW1hcnk6ICMyMTIxMjEsXG4gKiAgIGFjY2VudDogI0NEREMzOSxcbiAqICAgdGhlbWU6IGRhcmtcbiAqICkpO1xuICpcbiAqIC0tLVxuICogQGFjY2VzcyBwdWJsaWNcbiAqIEBwYXJhbSB7c3RyaW5nfSAkbmFtZSDigJTigIogVGhlIHRoZW1lIG5hbWUgdG8gYmUgdXNlZCB3aXRoIHRoZSBWdWUgTWF0ZXJpYWxcbiAqIEBwYXJhbSB7bWFwfSAkcGFsZXR0ZSBbJG1kLWRlZmF1bHQtcGFsZXR0ZV0g4oCU4oCKIFRoZSB0aGVtZSBwYWxldHRlXG4gKi9cblxuQG1peGluIG1kLXJlZ2lzdGVyLXRoZW1lICgkbmFtZSwgJHBhbGV0dGU6ICRtZC1kZWZhdWx0LXBhbGV0dGUpIHtcbiAgJHBhbGV0dGU6IG1hcC1tZXJnZSgkbWQtZGVmYXVsdC1wYWxldHRlLCAkcGFsZXR0ZSk7XG4gICR0aGVtZTogbWFwLW1lcmdlKCRtZC10aGVtZXMsIChcbiAgICAjeyRuYW1lfTogJHBhbGV0dGVcbiAgKSk7XG5cbiAgOnJvb3Qge1xuICAgIEBlYWNoICR0eXBlLCAkdmFsdWUgaW4gJHBhbGV0dGUge1xuICAgICAgLS1tZC10aGVtZS0jeyRuYW1lfS0jeyR0eXBlfTogI3skdmFsdWV9XG4gICAgfVxuICB9XG5cbiAgJG1kLXRoZW1lczogJHRoZW1lICFnbG9iYWw7XG5cbiAgQGluY2x1ZGUgbWQtYmFzZS10aGVtZTtcbn1cblxuXG4vKipcbiAqIFRoZW1lIHBpZWNlcyBvZiBhIGdpdmVuIHNjc3MgY29kZSBmb3IgYWxsIHByZSByZWdpc3RlcmVkIHRoZW1lcy5cbiAqIC0tLVxuICogVXNhZ2UgZXhhbXBsZTpcbiAqXG4gKiAubWQtYnV0dG9uIHtcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xuICogICBoZWlnaHQ6IDQwcHg7XG4gKiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICogICB0cmFuc2l0aW9uOiAuM3MgZWFzZTtcbiAqXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAqICAgICBiYWNrZ3JvdW5kOiBtZC10aGVtZShwcmltYXJ5KTtcbiAqICAgICBjb2xvcjogbWQtdGhlbWUodGV4dC1wcmltYXJ5KTtcbiAqICAgfVxuICpcbiAqICAgJi5tZC1hY2NlbnQge1xuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAqICAgICAgIGJhY2tncm91bmQ6IG1kLXRoZW1lKGFjY2VudCk7XG4gKiAgICAgICBjb2xvcjogbWQtdGhlbWUodGV4dC1hY2NlbnQpO1xuICogICAgIH07XG4gKiAgIH1cbiAqIH1cbiAqL1xuXG5AbWl4aW4gbWQtdGhlbWUtY29tcG9uZW50ICgpIHtcbiAgQGVhY2ggJHRoZW1lLCAkcGFsZXR0ZSBpbiAkbWQtdGhlbWVzIHtcbiAgICAkbWQtdGhlbWUtcGFsZXR0ZTogbWFwLW1lcmdlKCRtZC10aGVtZS1wYWxldHRlLCAkcGFsZXR0ZSkgIWdsb2JhbDtcbiAgICAkbWQtY3VycmVudC10aGVtZTogJHRoZW1lICFnbG9iYWw7XG5cbiAgICAmLm1kLXRoZW1lLSN7JHRoZW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKipcbiAqIFRoZW1lIHBpZWNlcyBvZiBhIGdpdmVuIHNjc3MgY29kZSBmb3IgYWxsIHByZSByZWdpc3RlcmVkIHRoZW1lcyBiYXNlZCBvbiBwYXJlbnQuXG4gKiAtLS1cbiAqIFVzYWdlIGV4YW1wbGU6XG4gKlxuICogLm1kLWZvbyB7XG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudC1yZWxhdGl2ZSgpIHtcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBwcmltYXJ5KTtcbiAqICAgfVxuICogfVxuICovXG5cbkBtaXhpbiBtZC10aGVtZS1jb21wb25lbnQtcmVsYXRpdmUgKCkge1xuICBAZWFjaCAkdGhlbWUsICRwYWxldHRlIGluICRtZC10aGVtZXMge1xuICAgICRtZC10aGVtZS1wYWxldHRlOiBtYXAtbWVyZ2UoJG1kLXRoZW1lLXBhbGV0dGUsICRwYWxldHRlKSAhZ2xvYmFsO1xuICAgICRtZC1jdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcblxuICAgIC5tZC10aGVtZS0jeyR0aGVtZX0gJiB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKipcbiAqIFRoZW1lIGEgc2luZ2xlIGNzcyBwcm9wZXJ0eVxuICogLS0tXG4gKiBVc2FnZSBleGFtcGxlOlxuICpcbiAqIC5tZC1idXR0b24ge1xuICogICBtaW4td2lkdGg6IDg4cHg7XG4gKiAgIGhlaWdodDogNDBweDtcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICogICBib3JkZXItcmFkaXVzOiAycHg7XG4gKiAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xuICpcbiAqICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQsIHByaW1hcnkpO1xuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICogICB9XG4gKlxuICogICAmLm1kLWFjY2VudCB7XG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICogICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgYWNjZW50KTtcbiAqICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XG4gKiAgICAgfVxuICogICB9XG4gKiB9XG4gKlxuICogLS0tXG4gKiBAYWNjZXNzIHB1YmxpY1xuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBBIHBhbGV0dGUgdHlwZVxuICogQHBhcmFtIHtzdHJpbmd9ICRiYWNrZ3JvdW5kIOKAlOKAiiBUaGUgYmFja2dyb3VuZCBjb2xvciB0byBhbmFseXNlIGNvbnRyYXN0XG4gKiBAcGFyYW0ge251bWJlcn0gJG9wYWNpdHkg4oCU4oCKIFRoZSBvcGFjaXR5IGFtb3VudFxuICovXG5cbkBtaXhpbiBtZC10aGVtZS1wcm9wZXJ0eSAoJHByb3BlcnR5LCAkdHlwZSwgJGJhY2tncm91bmQ6IFwiXCIsICRvcGFjaXR5OiBcIlwiKSB7XG4gICR2YWx1ZTogbWQtdGhlbWUoJHR5cGUsICRiYWNrZ3JvdW5kKTtcbiAgJHZhcmlhbnQ6IG51bGw7XG5cbiAgQGlmICRiYWNrZ3JvdW5kICE9IFwiXCIge1xuICAgICR2YXJpYW50OiAtb24tI3skYmFja2dyb3VuZH07XG4gIH1cblxuICBAaWYgJG9wYWNpdHkgIT0gXCJcIiB7XG4gICAgJHZhbHVlOiByZ2JhKCR2YWx1ZSwgJG9wYWNpdHkpO1xuICB9XG5cbiAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICN7JHByb3BlcnR5fTogdmFyKC0tbWQtdGhlbWUtI3skbWQtY3VycmVudC10aGVtZX0tI3skdHlwZX0jeyR2YXJpYW50fSwgJHZhbHVlKTtcbn1cblxuLyoqXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHkgZGFya2VuaW5nIHRoZSBjb2xvciBieSBhIGNlcnRhaW4gYW1vdW50XG4gKiAtLS1cbiAqIFVzYWdlIGV4YW1wbGU6XG4gKlxuICogLm1kLWJ1dHRvbiB7XG4gKiAgIG1pbi13aWR0aDogODhweDtcbiAqICAgaGVpZ2h0OiA0MHB4O1xuICogICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gKiAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XG4gKlxuICogICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktZGFya2VuKGJhY2tncm91bmQsIHByaW1hcnksIGJhY2tncm91bmQsIDEwJSk7XG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gKiAgIH1cbiAqIH1cbiAqXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHVibGljXG4gKiBAcGFyYW0ge3N0cmluZ30gJHByb3BlcnR5IOKAlOKAiiBUaGUgY3NzIHByb3BlcnR5XG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIEEgcGFsZXR0ZSB0eXBlXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcbiAqIEBwYXJhbSB7c3RyaW5nfSAkZGFya2VuIOKAlOKAiiBUaGUgZGFya2VuIGFtb3VudCB0byBhcHBseSB0byB0aGUgY29sb3JcbiAqL1xuXG5AbWl4aW4gbWQtdGhlbWUtcHJvcGVydHktZGFya2VuICgkcHJvcGVydHksICR0eXBlLCAkYmFja2dyb3VuZDogXCJcIiwgJGRhcmtlbjogXCJcIikge1xuICAkdmFsdWU6IG1kLXRoZW1lKCR0eXBlLCAkYmFja2dyb3VuZCk7XG4gICR2YXJpYW50OiBudWxsO1xuXG4gIEBpZiAkYmFja2dyb3VuZCAhPSBcIlwiIHtcbiAgICAkdmFyaWFudDogLW9uLSN7JGJhY2tncm91bmR9O1xuICB9XG5cbiAgQGlmICRkYXJrZW4gIT0gXCJcIiB7XG4gICAgJHZhbHVlOiBkYXJrZW4oJHZhbHVlLCAkZGFya2VuKTtcbiAgfVxuXG4gICN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAjeyRwcm9wZXJ0eX06IHZhcigtLW1kLXRoZW1lLSN7JG1kLWN1cnJlbnQtdGhlbWV9LSN7JHR5cGV9I3skdmFyaWFudH0sICR2YWx1ZSk7XG59XG5cbi8qKlxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5IGJ5XG4gKiAtLS1cbiAqIFVzYWdlIGV4YW1wbGU6XG4gKlxuICogLm1kLWJ1dHRvbiB7XG4gKiAgIG1pbi13aWR0aDogODhweDtcbiAqICAgaGVpZ2h0OiA0MHB4O1xuICogICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gKiAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XG4gKlxuICogICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQsIGdyZXksIDEwMCwgdG9vbGJhciwgYmFja2dyb3VuZCk7XG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gKiAgIH1cbiAqIH1cbiAqXG4gKiAtLS1cbiAqIEBhY2Nlc3MgcHVibGljXG4gKiBAcGFyYW0ge3N0cmluZ30gJHByb3BlcnR5IOKAlOKAiiBUaGUgY3NzIHByb3BlcnR5XG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yIOKAlOKAiiBBIHZhbGlkIG1hdGVyaWFsIHBhbGV0dGUgY29sb3IgbmFtZVxuICogQHBhcmFtIHtzdHJpbmd9ICRodWUg4oCU4oCKIFRoZSBodWUgYW1vdW50IHRvIGdldCB0aGUgaGV4IGNvbG9yXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSB0eXBlIG9mIHZhcmlhYmxlXG4gKiBAcGFyYW0ge3N0cmluZ30gJHZhcmlhbnQg4oCU4oCKIFRoZSB0eXBlIG9mIGNvbnN0cmFzdGVkIHZhcmlhYmxlXG4gKi9cblxuQG1peGluIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZSAoJHByb3BlcnR5LCAkY29sb3IsICRodWUsICR0eXBlLCAkc2Vjb25kYXJ5KSB7XG4gICRoZXg6IG1kLWdldC1wYWxldHRlLWNvbG9yKCRjb2xvciwgJGh1ZSk7XG4gICR2YXJpYW50OiBudWxsO1xuXG4gIEBpZiAkc2Vjb25kYXJ5ICE9IFwiXCIge1xuICAgICR2YXJpYW50OiAtI3skc2Vjb25kYXJ5fTtcbiAgfVxuXG4gICN7JHByb3BlcnR5fTogJGhleDtcbiAgI3skcHJvcGVydHl9OiB2YXIoLS1tZC10aGVtZS0jeyRtZC1jdXJyZW50LXRoZW1lfS0jeyR0eXBlfSN7dmFyaWFudH0sICRoZXgpO1xufVxuIiwiQG1peGluIG1kLWJhc2UtdGhlbWUgKCkge1xuICA6bm90KGlucHV0KTpub3QodGV4dGFyZWEpOjpzZWxlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudC1yZWxhdGl2ZSgpIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCwgYmFja2dyb3VuZCk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuICAgIH1cbiAgfVxuXG4gIGE6bm90KC5tZC1idXR0b24pIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQtcmVsYXRpdmUoKSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCwgLjgpO1xuICAgICAgfVxuXG4gICAgICAmLm1kLWFjY2VudCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBhY2NlbnQsIGJhY2tncm91bmQpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBhY2NlbnQsIGJhY2tncm91bmQsIC44KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGh0bWwge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQtdmFyaWFudCk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kLXZhcmlhbnQpO1xuICAgIH1cbiAgfVxuXG4gIC5tZC1jYXB0aW9uLFxuICAubWQtZGlzcGxheS0xLFxuICAubWQtZGlzcGxheS0yLFxuICAubWQtZGlzcGxheS0zLFxuICAubWQtZGlzcGxheS00IHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQtcmVsYXRpdmUoKSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQtdmFyaWFudCk7XG4gICAgfVxuICB9XG5cbiAgLm1kLXNjcm9sbGJhciB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyLFxuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBzY3JvbGxiYXItYmFja2dyb3VuZCwgYmFja2dyb3VuZC12YXJpYW50KTtcbiAgICAgIH1cblxuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBzY3JvbGxiYXIsIGJhY2tncm91bmQtdmFyaWFudCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZEFwcC90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRBdXRvY29tcGxldGUvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kQXZhdGFyL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZEJvdHRvbUJhci90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRCdXR0b24vdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kQ2FyZC90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRDaGVja2JveC90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRDaGlwcy90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRDb250ZW50L3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZERhdGVwaWNrZXIvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kRGlhbG9nL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZERpdmlkZXIvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kRHJhd2VyL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZEVtcHR5U3RhdGUvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kRmllbGQvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kSWNvbi90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRJbWFnZS90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRMaXN0L3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZE1lbnUvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kUHJvZ3Jlc3MvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kUmFkaW8vdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kU25hY2tiYXIvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kU3BlZWREaWFsL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZFN0ZXBwZXJzL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZFN1YmhlYWRlci90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRTd2l0Y2gvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kVGFibGUvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kVGFicy90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRUYWJzL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9NZFRvb2xiYXIvdGhlbWVcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL01kVG9vbHRpcC90aGVtZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvTWRCYWRnZS90aGVtZVwiOyIsIi5tZC1hcHA6bm90KC5tZC1vdmVybGFwKSB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcbiAgfVxufVxuIiwiLm1kLWxpc3Qge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgLm1kLWF1dG9jb21wbGV0ZS1pdGVtcyB7XG4gICAgICAubWQtaGlnaGxpZ2h0LXRleHQtbWF0Y2gge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLWF1dG9jb21wbGV0ZS1sb2FkaW5nIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQsIFwiXCIsIC41NCk7XG4gICAgfVxuICB9XG59XG5cbi5tZC1hdXRvY29tcGxldGUge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgJi5tZC1hdXRvY29tcGxldGUtYm94IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuXG4gICAgICAmLm1kLWZvY3VzZWQge1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1kLXRvb2xiYXIgJiB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQsIFwiXCIsIC4xMik7XG5cbiAgICAgICAgbGFiZWwsXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eSgtd2Via2l0LXRleHQtZmlsbC1jb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubWQtZm9jdXNlZCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG5cbiAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1oaW50LCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KC13ZWJraXQtdGV4dC1maWxsLWNvbG9yLCB0ZXh0LWhpbnQsIGJhY2tncm91bmQpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LWhpbnQsIGJhY2tncm91bmQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWQtYXV0b2NvbXBsZXRlLWJveC1jb250ZW50IHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItYm90dG9tLWNvbG9yLCBkaXZpZGVyKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBtZC1hdmF0YXItaWNvbi1zcGVjICgkY29sb3IpIHtcbiAgJi5tZC1hdmF0YXItaWNvbiB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yKTtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkY29sb3IpO1xuXG4gICAgLm1kLWljb24ge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJGNvbG9yKTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgJGNvbG9yKTtcbiAgICB9XG4gIH1cbn1cblxuLm1kLWF2YXRhciB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC1hdmF0YXItaWNvbi1zcGVjKGljb24tZGlzYWJsZWQpO1xuXG4gICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgQGluY2x1ZGUgbWQtYXZhdGFyLWljb24tc3BlYyhwcmltYXJ5KTtcbiAgICB9XG5cbiAgICAmLm1kLWFjY2VudCB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xuICAgICAgQGluY2x1ZGUgbWQtYXZhdGFyLWljb24tc3BlYyhhY2NlbnQpO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIG1kLWJvdHRvbS1iYXItc3BlYyAoJHByaW1hcnkpIHtcbiAgJi5tZC10eXBlLWZpeGVkIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcblxuICAgIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAgIC5tZC1pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsICRwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubWQtdHlwZS1zaGlmdCB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJHByaW1hcnkpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5LCAuNyk7XG5cbiAgICA+IC5tZC1yaXBwbGUge1xuICAgICAgLm1kLXJpcHBsZS13YXZlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktZGFya2VuKGJhY2tncm91bmQtY29sb3IsICRwcmltYXJ5LCAkcHJpbWFyeSwgMTAlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtaWNvbiB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgJHByaW1hcnkpO1xuXG4gICAgICBzdmcge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCBpY29uLCAkcHJpbWFyeSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLWJvdHRvbS1iYXItaXRlbSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSk7XG5cbiAgICAgIC5tZC1hY3RpdmUge1xuICAgICAgICAubWQtaWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJHByaW1hcnkpO1xuXG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgJHByaW1hcnkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWQtYm90dG9tLWJhciB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC1ib3R0b20tYmFyLXNwZWMocHJpbWFyeSk7XG5cbiAgICAmLm1kLWFjY2VudCB7XG4gICAgICBAaW5jbHVkZSBtZC1ib3R0b20tYmFyLXNwZWMoYWNjZW50KTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBtZC1pY29uLW9uLWJ1dHRvbnMgKCRzdGF0ZSwgJHR5cGUpIHtcbiAgLm1kLWljb24tZm9udCB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRzdGF0ZSwgJHR5cGUpO1xuICB9XG5cbiAgLm1kLWljb24taW1hZ2Uge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsICRzdGF0ZSwgJHR5cGUpO1xuICB9XG59XG5cbi5tZC1idXR0b24ge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAmLm1kLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgIH1cblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBhY2NlbnQsIGJhY2tncm91bmQpO1xuICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKGFjY2VudCwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgJi5tZC1yYWlzZWQge1xuICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXNhYmxlZC1iYWNrZ3JvdW5kLCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGRpc2FibGVkKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoW2Rpc2FibGVkXSkge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAgICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcbiAgICAgICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnModGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubWQtYWNjZW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCk7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHRleHQtcHJpbWFyeSwgYWNjZW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtZmFiIHtcbiAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQtYmFja2dyb3VuZCwgYmFja2dyb3VuZCk7XG4gICAgICB9XG5cbiAgICAgICY6bm90KFtkaXNhYmxlZF0pIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcbiAgICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHRleHQtcHJpbWFyeSwgYWNjZW50KTtcblxuICAgICAgICAmLm1kLXByaW1hcnkge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLWljb24tb24tYnV0dG9ucyh0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGRpc2FibGVkLCBiYWNrZ3JvdW5kKTtcbiAgICAgIEBpbmNsdWRlIG1kLWljb24tb24tYnV0dG9ucyhpY29uLWRpc2FibGVkLCBiYWNrZ3JvdW5kKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBtZC1jYXJkKCRiYXNlKSB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRiYXNlKTtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJGJhc2UpO1xuXG4gIC5tZC1jYXJkLWV4cGFuZCAubWQtY2FyZC1hY3Rpb25zIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkYmFzZSk7XG4gIH1cblxuICAubWQtY2FyZC1oZWFkZXIsXG4gIC5tZC1jYXJkLWFjdGlvbnMge1xuICAgIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJGJhc2UpO1xuXG4gICAgICAmLm1kLWljb24tYnV0dG9uIHtcbiAgICAgICAgLm1kLWljb24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRiYXNlLCAuNTQpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgJGJhc2UsIC41NCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5tZC1jYXJkLWFyZWEge1xuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGl2aWRlciwgJGJhc2UpO1xuICAgIH1cbiAgfVxufVxuXG4ubWQtY2FyZCB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC1jYXJkKGJhY2tncm91bmQpO1xuXG4gICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLWNhcmQocHJpbWFyeSk7XG4gICAgfVxuXG4gICAgJi5tZC1hY2NlbnQge1xuICAgICAgQGluY2x1ZGUgbWQtY2FyZChhY2NlbnQpO1xuICAgIH1cbiAgfVxufVxuIiwiLm1kLWNoZWNrYm94IHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgICYubWQtY2hlY2tlZCB7XG4gICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBhY2NlbnQpO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgYmFja2dyb3VuZCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1kLXJpcHBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBhY2NlbnQpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtaW5kZXRlcm1pbmF0ZSB7XG4gICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjU0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1kLXJpcHBsZSB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1jaGVja2VkLm1kLXByaW1hcnkge1xuICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIHByaW1hcnkpO1xuICAgICAgfVxuXG4gICAgICAubWQtcmlwcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgICYubWQtaW5kZXRlcm1pbmF0ZSB7XG4gICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuNTQpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tZC1yaXBwbGUge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjU0KTtcbiAgICAgIH1cblxuICAgICAgJi5tZC1kaXNhYmxlZCB7XG4gICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tZC1jaGVja2VkIHtcbiAgICAgICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgJi5tZC1pbmRldGVybWluYXRlIHtcbiAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC43KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjZmZmLCAuNyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tZC1yaXBwbGUge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCNmZmYsIC43KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC43KTtcbiAgICAgIH1cblxuICAgICAgJi5tZC1kaXNhYmxlZCB7XG4gICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjZmZmLCAuMyk7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1kLWNoZWNrZWQge1xuICAgICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1kLWNoaXAge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaGlnaGxpZ2h0KTtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5KTtcblxuICAgIC5tZC1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcbiAgICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgdGV4dC1wcmltYXJ5KTtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCB0ZXh0LXByaW1hcnkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnkpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtZGVsZXRhYmxlLFxuICAgICYubWQtY2xpY2thYmxlIHtcbiAgICAgICY6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBpY29uKTtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgaWNvbik7XG5cbiAgICAgICAgLm1kLWljb24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgaWNvbik7XG4gICAgICAgIH1cblxuICAgICAgICAubWQtaW5wdXQtYWN0aW9uIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kLCAnJywgLjg3KTtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgYmFja2dyb3VuZCk7XG5cbiAgICAgICAgICAubWQtaWNvbiBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgaWNvbiwgYmFja2dyb3VuZCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgYmFja2dyb3VuZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG5cbiAgICAgIC5tZC1pbnB1dC1hY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgZGlzYWJsZWQpO1xuXG4gICAgICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXNhYmxlZCk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkLCBkaXNhYmxlZCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1kZWxldGFibGUsXG4gICAgICAmLm1kLWNsaWNrYWJsZSB7XG4gICAgICAgICY6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGljb24pO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGljb24pO1xuXG4gICAgICAgICAgLm1kLWlucHV0LWFjdGlvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kLCAnJywgLjg3KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWFjY2VudCxcbiAgICAmLm1kLWR1cGxpY2F0ZWQge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XG5cbiAgICAgIC5tZC1pbnB1dC1hY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgZGlzYWJsZWQpO1xuXG4gICAgICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXNhYmxlZCk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkLCBkaXNhYmxlZCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1kZWxldGFibGUsXG4gICAgICAmLm1kLWNsaWNrYWJsZSB7XG4gICAgICAgICY6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGljb24pO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGljb24pO1xuXG4gICAgICAgICAgLm1kLWlucHV0LWFjdGlvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kLCAnJywgLjg3KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGhpZ2hsaWdodCwgJycsIC4xKTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCk7XG4gICAgfVxuICB9XG59XG5cbi5tZC1jaGlwcyB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaWYgbWQtZ2V0LXRoZW1lLW1vZGUoKSA9PSBsaWdodCB7XG4gICAgICAubWQtY2xlYXIgIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMik7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAubWQtY2xlYXIgIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuMik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWQtY29udGVudCB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcblxuICAgICYubWQtcHJpbWFyeSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgIH1cblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuICAgIH1cblxuICAgIC5tZC1hcHAgJiB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItbGVmdC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItcmlnaHQtY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xuICAgIH1cbiAgfVxufVxuIiwiLm1kLWRhdGVwaWNrZXItZGlhbG9nIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuXG4gICAgLm1kLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHRleHQtcHJpbWFyeSwgJycsIC4wNik7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyIHtcbiAgICAgICY6YWZ0ZXIsXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZC1kYXRlcGlja2VyLWJvZHktZm9vdGVyIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLm1kLWRhdGVwaWNrZXItd2VlayB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5tZC1kYXRlcGlja2VyLWRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBkaXNhYmxlZCwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLm1kLWRhdGVwaWNrZXItdG9kYXkge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5tZC1kYXRlcGlja2VyLWRheS1idXR0b24sXG4gICAgLm1kLWRhdGVwaWNrZXItbW9udGgtYnV0dG9uLFxuICAgIC5tZC1kYXRlcGlja2VyLXllYXItYnV0dG9uIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtZGF0ZXBpY2tlci1kYXktYnV0dG9uIHtcbiAgICAgICYubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24sXG4gICAgLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b24ge1xuICAgICAgJi5tZC1kYXRlcGlja2VyLXNlbGVjdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZC1kYXRlcGlja2VyLXllYXItc2VsZWN0b3Ige1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWJvdHRvbS1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG59XG4iLCIubWQtZGlhbG9nIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuICB9XG59XG4iLCIubWQtZGl2aWRlciB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyKTtcbiAgfVxufVxuIiwiLm1kLWRyYXdlciB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcblxuICAgICYubWQtcGVyc2lzdGVudC1taW5pIHtcbiAgICAgICYubWQtbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1yaWdodC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgICB9XG5cbiAgICAgICYubWQtcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItbGVmdC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gbWQtZW1wdHktc3RhdGUtc3BlYyAoJGNvbG9yKSB7XG4gIC5tZC1lbXB0eS1zdGF0ZS1pY29uIHtcbiAgICAmLm1kLWljb24taW1hZ2Uge1xuICAgICAgc3ZnIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJGNvbG9yLCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWljb24tZm9udCB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJGNvbG9yLCBiYWNrZ3JvdW5kKTtcbiAgICB9XG4gIH1cbn1cblxuLm1kLWVtcHR5LXN0YXRlIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLWVtcHR5LXN0YXRlLXNwZWMoZGlzYWJsZWQpO1xuXG4gICAgJi5tZC1yb3VuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkLCBcIlwiLCAuMDYpO1xuICAgIH1cblxuICAgICYubWQtcHJpbWFyeSB7XG4gICAgICBAaW5jbHVkZSBtZC1lbXB0eS1zdGF0ZS1zcGVjKHByaW1hcnkpO1xuICAgIH1cblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLWVtcHR5LXN0YXRlLXNwZWMoYWNjZW50KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5tZC1maWVsZCB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaWYgbWQtZ2V0LXRoZW1lLW1vZGUoKSA9PSBsaWdodCB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuNDIpO1xuICAgICAgfVxuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xuICAgICAgfVxuXG4gICAgICAubWQtaGVscGVyLXRleHQsXG4gICAgICAubWQtY291bnQsXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1zdWZmaXgsIC5tZC1wcmVmaXgge1xuICAgICAgICBjb2xvcjogcmdiYSgjMDAwLCAuNTQpO1xuICAgICAgfVxuXG4gICAgICAubWQtaW5wdXQsXG4gICAgICAubWQtdGV4dGFyZWEge1xuICAgICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSgjMDAwLCAuNTQpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubWQtZm9jdXNlZCxcbiAgICAgICYubWQtaGFzLXZhbHVlIHtcbiAgICAgICAgLm1kLWlucHV0LFxuICAgICAgICAubWQtdGV4dGFyZWEge1xuICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiByZ2JhKCMwMDAsIC44Nyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdykge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjQyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIHByaW1hcnkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubWQtZGlzYWJsZWQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoIzAwMCwgLjM4KSAwJSwgcmdiYSgjMDAwLCAuMzgpIDMzJSwgdHJhbnNwYXJlbnQgMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwsXG4gICAgICAgIC5tZC1pbnB1dCxcbiAgICAgICAgLm1kLXRleHRhcmVhIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSgjMDAwLCAuNDIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuNyk7XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1oZWxwZXItdGV4dCxcbiAgICAgIC5tZC1jb3VudCxcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xuICAgICAgfVxuXG4gICAgICAubWQtc3VmZml4LCAubWQtcHJlZml4IHtcbiAgICAgICAgY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xuICAgICAgfVxuXG4gICAgICAubWQtaW5wdXQsXG4gICAgICAubWQtdGV4dGFyZWEge1xuICAgICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSgjZmZmLCAuNyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1mb2N1c2VkLFxuICAgICAgJi5tZC1oYXMtdmFsdWUge1xuICAgICAgICAubWQtaW5wdXQsXG4gICAgICAgIC5tZC10ZXh0YXJlYSB7XG4gICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdykge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBwcmltYXJ5KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWRpc2FibGVkIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKCNmZmYsIC43KSAwJSwgcmdiYSgjZmZmLCAuNykgMzMlLCB0cmFuc3BhcmVudCAwJSk7XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCxcbiAgICAgICAgLm1kLWlucHV0LFxuICAgICAgICAubWQtdGV4dGFyZWEge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCNmZmYsIC41KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgID4gLm1kLWljb24ge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQtdmFyaWFudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1pbnZhbGlkIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgcmVkLCBBNDAwLCBmaWVsZCwgZXJyb3IpO1xuICAgICAgfVxuXG4gICAgICAmLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYm9yZGVyLWNvbG9yLCByZWQsIEE0MDAsIGZpZWxkLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgZmllbGQsIGVycm9yKTtcbiAgICAgIH1cblxuICAgICAgLm1kLWVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGNvbG9yLCByZWQsIEE0MDAsIGZpZWxkLCBlcnJvcik7XG4gICAgICB9XG5cbiAgICAgIC5tZC1kYXRlLWljb24sXG4gICAgICAubWQtZGF0ZS1pY29uIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShjb2xvciwgcmVkLCBBNDAwLCBmaWVsZCwgZXJyb3IpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoZmlsbCwgcmVkLCBBNDAwLCBmaWVsZCwgZXJyb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtZm9jdXNlZCxcbiAgICAmLm1kLWhpZ2hsaWdodCB7XG4gICAgICAubWQtaW5wdXQsXG4gICAgICAubWQtdGV4dGFyZWEge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICB9XG5cbiAgICAgID4gLm1kLWljb24ge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtZm9jdXNlZCB7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWRpc2FibGVkIHtcbiAgICAgIC5tZC1pY29uIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGRpc2FibGVkLCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tZC1pY29uIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgICYubWQtaWNvbi1pbWFnZSB7XG4gICAgICBzdmcge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCBpY29uLCBiYWNrZ3JvdW5kKTtcblxuICAgICAgICAmLm1kLXByaW1hcnkge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tZC1hY2NlbnQge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGFjY2VudCwgYmFja2dyb3VuZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWljb24tZm9udCB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgYmFja2dyb3VuZCk7XG5cbiAgICAgICYubWQtcHJpbWFyeSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cblxuICAgICAgJi5tZC1hY2NlbnQge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiIsIi5tZC1saXN0IHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuXG4gICAgJi5tZC1kb3VibGUtbGluZSAubWQtbGlzdC1pdGVtLXRleHQgOm50aC1jaGlsZCgyKSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQpO1xuICAgIH1cblxuICAgICYubWQtdHJpcGxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMykge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtYWNjZW50LCBiYWNrZ3JvdW5kKTtcbiAgICB9XG5cbiAgICAubWQtaGlnaGxpZ2h0IC5tZC1saXN0LWl0ZW0tY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5tZC1saXN0LWl0ZW0tY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuXG4gICAgICAmOm5vdCgubWQtbGlzdC1pdGVtLWRlZmF1bHQpOm5vdChbZGlzYWJsZWRdKTpob3ZlciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBkaXNhYmxlZCwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLm1kLXNlbGVjdGVkLFxuICAgIC5yb3V0ZXItbGluay1leGFjdC1hY3RpdmUge1xuICAgICAgLm1kLWxpc3QtaXRlbS1jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZC1saXN0LWl0ZW0tZXhwYW5kLm1kLWFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIG1kLW1lbnUtaXRlbS1zcGVjICgkY29sb3IpIHtcbiAgLm1kLWxpc3QtaXRlbS1saW5rLFxuICAubWQtbGlzdC1pdGVtLXJvdXRlcixcbiAgLm1kLWxpc3QtaXRlbS1idXR0b24ge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkY29sb3IsIGJhY2tncm91bmQpO1xuICB9XG59XG5cbi5tZC1tZW51LWl0ZW0ge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLW1lbnUtaXRlbS1zcGVjKHByaW1hcnkpO1xuICAgIH1cblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLW1lbnUtaXRlbS1zcGVjKGFjY2VudCk7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gbWQtcHJvZ3Jlc3MtYmFyLWluZGV0ZXJtaW5hdGUgKCRodWUpIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGh1ZSwgbnVsbCwgLjM4KTtcblxuICAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrLFxuICAubWQtcHJvZ3Jlc3MtYmFyLWZpbGwge1xuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGh1ZSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZC1wcm9ncmVzcy1iYXItZGV0ZXJtaW5hdGUgKCRodWUpIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGh1ZSwgbnVsbCwgLjM4KTtcblxuICAubWQtcHJvZ3Jlc3MtYmFyLWZpbGwge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUpO1xuICB9XG59XG5cbkBtaXhpbiBtZC1wcm9ncmVzcy1iYXItYnVmZmVyICgkaHVlKSB7XG4gIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGh1ZSk7XG4gIH1cblxuICAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaHVlLCBudWxsLCAuMzgpO1xuICB9XG5cbiAgLm1kLXByb2dyZXNzLWJhci1idWZmZXIge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgJGh1ZSwgbnVsbCwgLjM4KTtcbiAgfVxufVxuXG5AbWl4aW4gbWQtcHJvZ3Jlc3Mtc3Bpbm5lci1zcGVjICgkaHVlKSB7XG4gIC5tZC1wcm9ncmVzcy1zcGlubmVyLWNpcmNsZSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoc3Ryb2tlLCAkaHVlKTtcbiAgfVxufVxuXG4ubWQtcHJvZ3Jlc3MtYmFyIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgICYubWQtaW5kZXRlcm1pbmF0ZSxcbiAgICAmLm1kLXF1ZXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLXByb2dyZXNzLWJhci1pbmRldGVybWluYXRlKHByaW1hcnkpO1xuXG4gICAgICAmLm1kLWFjY2VudCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXByb2dyZXNzLWJhci1pbmRldGVybWluYXRlKGFjY2VudClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWRldGVybWluYXRlIHtcbiAgICAgIEBpbmNsdWRlIG1kLXByb2dyZXNzLWJhci1kZXRlcm1pbmF0ZShwcmltYXJ5KTtcblxuICAgICAgJi5tZC1hY2NlbnQge1xuICAgICAgICBAaW5jbHVkZSBtZC1wcm9ncmVzcy1iYXItZGV0ZXJtaW5hdGUoYWNjZW50KVxuICAgICAgfVxuICAgIH1cblxuICAgICYubWQtYnVmZmVyIHtcbiAgICAgIEBpbmNsdWRlIG1kLXByb2dyZXNzLWJhci1idWZmZXIocHJpbWFyeSk7XG5cbiAgICAgICYubWQtYWNjZW50IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlcihhY2NlbnQpXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tZC1wcm9ncmVzcy1zcGlubmVyIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIEBpbmNsdWRlIG1kLXByb2dyZXNzLXNwaW5uZXItc3BlYyhwcmltYXJ5KTtcblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLXByb2dyZXNzLXNwaW5uZXItc3BlYyhhY2NlbnQpXG4gICAgfVxuICB9XG59XG4iLCIubWQtcmFkaW8ge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgJi5tZC1jaGVja2VkIHtcbiAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIGFjY2VudCk7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWQtcmlwcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGFjY2VudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tZC1jaGVja2VkLm1kLXByaW1hcnkge1xuICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgcHJpbWFyeSk7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1kLXJpcHBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgbWQtZ2V0LXRoZW1lLW1vZGUoKSA9PSBsaWdodCB7XG4gICAgICAubWQtcmFkaW8tY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XG4gICAgICB9XG5cbiAgICAgICYubWQtZGlzYWJsZWQge1xuICAgICAgICAubWQtcmFkaW8tY29udGFpbmVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjI2KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubWQtY2hlY2tlZCB7XG4gICAgICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjI2KTtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMCwgLjI2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xuICAgICAgfVxuXG4gICAgICAmLm1kLWRpc2FibGVkIHtcbiAgICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubWQtY2hlY2tlZCB7XG4gICAgICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWQtc25hY2tiYXIge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgdGV4dC1wcmltYXJ5KTtcblxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMjMyMzI7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuIiwiLm1kLXNwZWVkLWRpYWwge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG5cbiAgfVxufSIsIi5tZC1zdGVwcGVycyB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcblxuXG4gICAgLm1kLXN0ZXBwZXItaWNvbixcbiAgICAubWQtc3RlcHBlci1udW1iZXIsXG4gICAgLm1kLXN0ZXBwZXIge1xuICAgICAgJjphZnRlcixcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLXN0ZXBwZXItbnVtYmVyIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCB0ZXh0LWhpbnQpO1xuXG4gICAgICBzdmcge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCB0ZXh0LWhpbnQpO1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnksIHRleHQtaGludCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLXN0ZXBwZXItaGVhZGVyIHtcbiAgICAgIC5tZC1idXR0b24tY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWhpbnQsIGJhY2tncm91bmQpO1xuXG4gICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1kLWFjdGl2ZSxcbiAgICAgICYubWQtZG9uZSB7XG4gICAgICAgIC5tZC1idXR0b24tY29udGVudCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgICAgIH1cblxuICAgICAgICAubWQtc3RlcHBlci1udW1iZXIge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuXG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1lcnJvciB7XG4gICAgICAgIC5tZC1idXR0b24tY29udGVudCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGNvbG9yLCByZWQsIEE0MDAsIHN0ZXBwZXIsIGVycm9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZC1pY29uIHN2ZyB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGNvbG9yLCByZWQsIEE0MDAsIHN0ZXBwZXIsIGVycm9yKTtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoZmlsbCwgcmVkLCBBNDAwLCBzdGVwcGVyLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tZC1zdWJoZWFkZXIge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtYWNjZW50LCBiYWNrZ3JvdW5kKTtcblxuICAgICYubWQtcHJpbWFyeSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG59XG4iLCIubWQtc3dpdGNoIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgICYubWQtY2hlY2tlZCB7XG4gICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCwgbnVsbCwgLjM4KTtcbiAgICAgIH1cblxuICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1yaXBwbGUge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1kLWNoZWNrZWQubWQtcHJpbWFyeSB7XG4gICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnksIG51bGwsIC4zOCk7XG4gICAgICB9XG5cbiAgICAgIC5tZC1zd2l0Y2gtdGh1bWIge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcbiAgICAgIH1cblxuICAgICAgLm1kLXJpcHBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgbWQtZ2V0LXRoZW1lLW1vZGUoKSA9PSBsaWdodCB7XG4gICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMCwgLjM4KTtcbiAgICAgIH1cblxuICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCAxMDAsIHN3aXRjaCwgdGh1bWIpO1xuICAgICAgfVxuXG4gICAgICAmLm1kLWRpc2FibGVkIHtcbiAgICAgICAgLm1kLXN3aXRjaC1jb250YWluZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMCwgLjEyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZC1zd2l0Y2gtdGh1bWIge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCA0MDAsIHN3aXRjaCwgdGh1bWIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xuICAgICAgfVxuXG4gICAgICAubWQtc3dpdGNoLXRodW1iIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQtY29sb3IsIGdyZXksIDQwMCwgc3dpdGNoLCB0aHVtYik7XG4gICAgICB9XG5cbiAgICAgICYubWQtZGlzYWJsZWQge1xuICAgICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuMSk7XG4gICAgICAgIH1cblxuICAgICAgICAubWQtc3dpdGNoLXRodW1iIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgODAwLCBzd2l0Y2gsIHRodW1iKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1kLXRhYmxlIHtcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xuICAgIC5tZC10YWJsZS1jb250ZW50LFxuICAgIC5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyIC5tZC10YWJsZS10b29sYmFyIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50LCBudWxsLCAuMik7XG4gICAgfVxuXG4gICAgLm1kLXRhYmxlLXJvdyB7XG4gICAgICAmOmhvdmVyOm5vdCgubWQtaGVhZGVyLXJvdykgLm1kLXRhYmxlLWNlbGwge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBoaWdobGlnaHQsIGJhY2tncm91bmQsIC4wOCk7XG4gICAgICB9XG5cbiAgICAgICYubWQtc2VsZWN0ZWQsXG4gICAgICAmLm1kLXNlbGVjdGVkLXNpbmdsZSB7XG4gICAgICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgMTAwLCByb3csIGJhY2tncm91bmQpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgNzAwLCByb3csIGJhY2tncm91bmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcblxuICAgICAgICAgIC5tZC1yaXBwbGUge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBwcmltYXJ5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm1kLWFjY2VudCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuXG4gICAgICAgICAgLm1kLXJpcHBsZSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIGFjY2VudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRkIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLXRvcC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLXRhYmxlLWhlYWQge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtYWNjZW50LCBiYWNrZ3JvdW5kKTtcbiAgICB9XG5cbiAgICAubWQtdGFibGUtZml4ZWQtaGVhZGVyLWFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItYm90dG9tLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcbiAgICB9XG5cbiAgICAubWQtc29ydGFibGUge1xuICAgICAgJjpob3ZlcixcbiAgICAgICYubWQtc29ydGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kLXRhYmxlLXBhZ2luYXRpb24ge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLXRvcC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gbWQtdGFicy1zcGVjICgkcHJpbWFyeSwgJGluZGljYXRvciwgJHRleHQpIHtcbiAgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJHByaW1hcnksIGJhY2tncm91bmQpO1xuXG4gICAgLm1kLWJ1dHRvbiB7XG4gICAgICBAaWYgJHRleHQgPT0gdGV4dC1wcmltYXJ5IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICR0ZXh0LCAkcHJpbWFyeSwgLjcpO1xuXG4gICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5LCAuMzgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1kLWljb24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnksIC43KTtcblxuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkdGV4dCwgJHByaW1hcnksIC43KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xuXG4gICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjM4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZC1pY29uIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xuXG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgJHByaW1hcnksIC43KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5KTtcblxuICAgICAgICAubWQtaWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICR0ZXh0LCAkcHJpbWFyeSk7XG5cbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJHRleHQsICRwcmltYXJ5KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWQtdGFicy1pbmRpY2F0b3Ige1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRpbmRpY2F0b3IsICRwcmltYXJ5KTtcbiAgfVxufVxuXG4ubWQtdGFicyB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10YWJzLXNwZWMoYmFja2dyb3VuZCwgcHJpbWFyeSwgcHJpbWFyeSk7XG5cbiAgICAmLm1kLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWQtdGFicy1zcGVjKHByaW1hcnksIHRleHQtcHJpbWFyeSwgdGV4dC1wcmltYXJ5KTtcbiAgICB9XG5cbiAgICAmLm1kLWFjY2VudCB7XG4gICAgICBAaW5jbHVkZSBtZC10YWJzLXNwZWMoYWNjZW50LCB0ZXh0LXByaW1hcnksIHRleHQtcHJpbWFyeSk7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gbWQtdGFicy1zcGVjICgkcHJpbWFyeSwgJGluZGljYXRvciwgJHRleHQpIHtcbiAgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJHByaW1hcnksIGJhY2tncm91bmQpO1xuXG4gICAgLm1kLWJ1dHRvbiB7XG4gICAgICBAaWYgJHRleHQgPT0gdGV4dC1wcmltYXJ5IHtcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICR0ZXh0LCAkcHJpbWFyeSwgLjcpO1xuXG4gICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5LCAuMzgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1kLWljb24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnksIC43KTtcblxuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkdGV4dCwgJHByaW1hcnksIC43KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xuXG4gICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjM4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZC1pY29uIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xuXG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgJHByaW1hcnksIC43KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZC1hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5KTtcblxuICAgICAgICAubWQtaWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICR0ZXh0LCAkcHJpbWFyeSk7XG5cbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJHRleHQsICRwcmltYXJ5KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWQtdGFicy1pbmRpY2F0b3Ige1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRpbmRpY2F0b3IsICRwcmltYXJ5KTtcbiAgfVxufVxuXG4ubWQtdGFicyB7XG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcbiAgICBAaW5jbHVkZSBtZC10YWJzLXNwZWMoYmFja2dyb3VuZCwgcHJpbWFyeSwgcHJpbWFyeSk7XG5cbiAgICAmLm1kLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWQtdGFicy1zcGVjKHByaW1hcnksIHRleHQtcHJpbWFyeSwgdGV4dC1wcmltYXJ5KTtcbiAgICB9XG5cbiAgICAmLm1kLWFjY2VudCB7XG4gICAgICBAaW5jbHVkZSBtZC10YWJzLXNwZWMoYWNjZW50LCB0ZXh0LXByaW1hcnksIHRleHQtcHJpbWFyeSk7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gbWQtdG9vbGJhci1pY29uKCRwcmltYXJ5LCAkc2Vjb25kYXJ5KSB7XG4gIC5tZC1pY29uIHtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHByaW1hcnksICRzZWNvbmRhcnkpO1xuXG4gICAgc3ZnIHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsICRwcmltYXJ5LCAkc2Vjb25kYXJ5KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kLXRvb2xiYXItYnV0dG9uKCRwcmltYXJ5LCAkc2Vjb25kYXJ5KSB7XG4gIC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pIHtcbiAgICAmOm5vdCgubWQtcmFpc2VkKSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHByaW1hcnksICRzZWNvbmRhcnkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWQtdG9vbGJhci10aXRsZSgkcHJpbWFyeSwgJHNlY29uZGFyeSkge1xuICAubWQtdGl0bGUsXG4gIC5tZC1kaXNwbGF5LTEsXG4gIC5tZC1kaXNwbGF5LTIge1xuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkcHJpbWFyeSwgJHNlY29uZGFyeSk7XG4gIH1cbn1cblxuLm1kLXRvb2xiYXIge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZC12YXJpYW50KTtcblxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCAxMDAsIHRvb2xiYXIsIGJhY2tncm91bmQpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQtY29sb3IsIGdyZXksIDkwMCwgdG9vbGJhciwgYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWQtdG9vbGJhci1pY29uKHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZC12YXJpYW50KTtcbiAgICBAaW5jbHVkZSBtZC10b29sYmFyLXRpdGxlKHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZC12YXJpYW50KTtcblxuICAgICYubWQtcHJpbWFyeSB7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgQGluY2x1ZGUgbWQtdG9vbGJhci1pY29uKHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XG4gICAgICBAaW5jbHVkZSBtZC10b29sYmFyLWJ1dHRvbih0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgQGluY2x1ZGUgbWQtdG9vbGJhci10aXRsZSh0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgIH1cblxuICAgICYubWQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCk7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuICAgICAgQGluY2x1ZGUgbWQtdG9vbGJhci1pY29uKHRleHQtcHJpbWFyeSwgYWNjZW50KTtcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItYnV0dG9uKHRleHQtcHJpbWFyeSwgYWNjZW50KTtcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItdGl0bGUodGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xuICAgIH1cblxuICAgICYubWQtdHJhbnNwYXJlbnQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItaWNvbih0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuICAgICAgQGluY2x1ZGUgbWQtdG9vbGJhci10aXRsZSh0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xuICAgIH1cbiAgfVxufVxuIiwiLm1kLXRvb2x0aXAge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgdG9vbHRpcCk7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgdG9vbHRpcCwgYmFja2dyb3VuZCwgLjkpO1xuICB9XG59XG4iLCIubWQtYmFkZ2Uge1xuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYWNjZW50KTtcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xuXG4gICAgJi5tZC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQzBEQSxnSUFBZ0k7QUUxRGhJOzs7OztHQUtHO0FvQ0xILEFBQUEsS0FBSyxDQUFDO0VBR0YsTUFBVyxDQUFFLFFBQUM7RUFBZCxRQUFXLENBQUUsUUFBQztFQUFkLFFBQVcsQ0FBRSxRQUFDO0VBQWQsTUFBVyxDQUFFLFFBQUM7RUFBZCxLQUFXLENBQUUsUUFBQztFQUFkLFFBQVcsQ0FBRSxRQUFDO0VBQWQsUUFBVyxDQUFFLFFBQUM7RUFBZCxPQUFXLENBQUUsUUFBQztFQUFkLE1BQVcsQ0FBRSxRQUFDO0VBQWQsTUFBVyxDQUFFLFFBQUM7RUFBZCxPQUFXLENBQUUsS0FBQztFQUFkLE1BQVcsQ0FBRSxRQUFDO0VBQWQsV0FBVyxDQUFFLFFBQUM7RUFJZCxTQUFXLENBQUUsUUFBQztFQUFkLFdBQVcsQ0FBRSxRQUFDO0VBQWQsU0FBVyxDQUFFLFFBQUM7RUFBZCxNQUFXLENBQUUsUUFBQztFQUFkLFNBQVcsQ0FBRSxRQUFDO0VBQWQsUUFBVyxDQUFFLFFBQUM7RUFBZCxPQUFXLENBQUUsUUFBQztFQUFkLE1BQVcsQ0FBRSxRQUFDO0VBSWQsZ0JBQW1CLENBQWEsRUFBQztFQUFqQyxlQUFtQixDQUFhLE1BQUM7RUFBakMsZUFBbUIsQ0FBYSxNQUFDO0VBQWpDLGVBQW1CLENBQWEsTUFBQztFQUFqQyxlQUFtQixDQUFhLE1BQUM7RUFBakMsZUFBbUIsQ0FBYSxPQUFDO0VBS25DLHdCQUF3QixDQUFBLDRCQUFDO0VBQ3pCLHVCQUF1QixDQUFBLHFGQUFDLEdBQ3pCOztBQ0FELEFBQUEsQ0FBQztBQUNELENBQUMsQUFBQSxRQUFRO0FBQ1QsQ0FBQyxBQUFBLE9BQU8sQ0FBQztFQUNQLFVBQVUsRUFBRSxVQUFVLEdBQ3ZCOztBQUVELEFBQUEsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFFLFVBQVU7RUFDdkIsV0FBVyxFQUFFLElBQUk7RUFDakIsd0JBQXdCLEVBQUUsSUFBSTtFQUM5QiwyQkFBMkIsRXZDbEJyQixtQkFBTyxHdUNtQmQ7O0FBS0QsQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxPQUFPLENBQUM7RUFDN0UsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFTRCxBQUFBLElBQUksQ0FBQztFQUNILE1BQU0sRUFBRSxDQUFDO0VBQ1QsV0FBVyxFdkNSYSxJQUFJLEVBQUUsVUFBVSxDQUFDLFVBQVU7RU13Ri9DLFNBQVMsRUF0Q0UsSUFBQztFaUN4Q2hCLFdBQVcsRW5DME9pQixHQUFHO0VtQ3pPL0IsV0FBVyxFbkM4T2lCLEdBQUc7RW1DN08vQixLQUFLLEVuQ25DSSxPQUFPO0VtQ29DaEIsVUFBVSxFQUFFLElBQUk7RUFDaEIsZ0JBQWdCLEV2Q2pDVixJQUFJLEd1Q2tDWDs7Q0FPRCxBQUFBLEFBQUEsUUFBQyxDQUFTLElBQUksQUFBYixDQUFjLE1BQU0sQ0FBQztFQUNwQixPQUFPLEVBQUUsWUFBWSxHQUN0Qjs7QUFRRCxBQUFBLEVBQUUsQ0FBQztFQUNELFVBQVUsRUFBRSxXQUFXO0VBQ3ZCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsUUFBUSxFQUFFLE9BQU8sR0FDbEI7O0FBWUQsQUFBQSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztFQUNyQixVQUFVLEVBQUUsQ0FBQztFQUNiLGFBQWEsRW5DZ05lLE1BQVcsR21DL014Qzs7QUFNRCxBQUFBLENBQUMsQ0FBQztFQUNBLFVBQVUsRUFBRSxDQUFDO0VBQ2IsYUFBYSxFbkNvRmEsSUFBSSxHbUNuRi9COztBQVVELEFBQUEsSUFBSSxDQUFBLEFBQUEsS0FBQyxBQUFBO0FBQ0wsSUFBSSxDQUFBLEFBQUEsbUJBQUMsQUFBQSxFQUFxQjtFQUN4QixlQUFlLEVBQUUsU0FBUztFQUMxQixlQUFlLEVBQUUsZ0JBQWdCO0VBQ2pDLE1BQU0sRUFBRSxJQUFJO0VBQ1osYUFBYSxFQUFFLENBQUM7RUFDaEIsd0JBQXdCLEVBQUUsSUFBSSxHQUMvQjs7QUFFRCxBQUFBLE9BQU8sQ0FBQztFQUNOLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFdBQVcsRUFBRSxPQUFPLEdBQ3JCOztBQUVELEFBQUEsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFLENBQUM7RUFDRCxVQUFVLEVBQUUsQ0FBQztFQUNiLGFBQWEsRUFBRSxJQUFJLEdBQ3BCOztBQUVELEFBQUEsRUFBRSxDQUFDLEVBQUU7QUFDTCxFQUFFLENBQUMsRUFBRTtBQUNMLEVBQUUsQ0FBQyxFQUFFO0FBQ0wsRUFBRSxDQUFDLEVBQUUsQ0FBQztFQUNKLGFBQWEsRUFBRSxDQUFDLEdBQ2pCOztBQUVELEFBQUEsRUFBRSxDQUFDO0VBQ0QsV0FBVyxFbkNpSmlCLEdBQUcsR21DaEpoQzs7QUFFRCxBQUFBLEVBQUUsQ0FBQztFQUNELGFBQWEsRUFBRSxLQUFLO0VBQ3BCLFdBQVcsRUFBRSxDQUFDLEdBQ2Y7O0FBRUQsQUFBQSxVQUFVLENBQUM7RUFDVCxNQUFNLEVBQUUsUUFBUSxHQUNqQjs7QUFFRCxBQUFBLENBQUM7QUFDRCxNQUFNLENBQUM7RUFDTCxXQUFXLEVuQ29JaUIsTUFBTSxHbUNuSW5DOztBQUVELEFBQUEsS0FBSyxDQUFDO0VqQ3BGRixTQUFTLEVBQUMsR0FBQyxHaUNzRmQ7O0FBT0QsQUFBQSxHQUFHO0FBQ0gsR0FBRyxDQUFDO0VBQ0YsUUFBUSxFQUFFLFFBQVE7RWpDL0ZoQixTQUFTLEVBQUMsR0FBQztFaUNpR2IsV0FBVyxFQUFFLENBQUM7RUFDZCxjQUFjLEVBQUUsUUFBUSxHQUN6Qjs7QUFFRCxBQUFBLEdBQUcsQ0FBQztFQUFFLE1BQU0sRUFBRSxNQUFNLEdBQUk7O0FBQ3hCLEFBQUEsR0FBRyxDQUFDO0VBQUUsR0FBRyxFQUFFLEtBQUssR0FBSTs7QUFPcEIsQUFBQSxDQUFDLENBQUM7RUFDQSxLQUFLLEV0Q3RMRyxPQUFPO0VzQ3VMZixlQUFlLEVuQ1h5QixJQUFJO0VtQ1k1QyxnQkFBZ0IsRUFBRSxXQUFXLEdBTTlCO0VBVEQsQTlCektFLEM4QnlLRCxBOUJ6S0UsTUFBTSxDQUFDO0k4QitLTixLQUFLLEVuQ2RpQyxPQUF3QjtJbUNlOUQsZUFBZSxFdkMvS0ssSUFBSSxHU0RKOztBOEIwTHhCLEFBQUEsQ0FBQyxBQUFBLElBQUssRUFBQSxBQUFBLElBQUMsQUFBQSxFQUFNLElBQUssRUFBQSxBQUFBLFFBQUMsQUFBQSxHQUFXO0VBQzVCLEtBQUssRUFBRSxPQUFPO0VBQ2QsZUFBZSxFQUFFLElBQUksR0FVdEI7RUFaRCxBOUJ0TEUsQzhCc0xELEFBQUEsSUFBSyxFQUFBLEFBQUEsSUFBQyxBQUFBLEVBQU0sSUFBSyxFQUFBLEFBQUEsUUFBQyxBQUFBLEU5QnRMaEIsTUFBTSxFOEJzTFQsQ0FBQyxBQUFBLElBQUssRUFBQSxBQUFBLElBQUMsQUFBQSxFQUFNLElBQUssRUFBQSxBQUFBLFFBQUMsQUFBQSxFOUJyTGhCLE1BQU0sQ0FBQztJOEIwTE4sS0FBSyxFQUFFLE9BQU87SUFDZCxlQUFlLEVBQUUsSUFBSSxHOUJ6THRCO0U4Qm1MSCxBQVNFLENBVEQsQUFBQSxJQUFLLEVBQUEsQUFBQSxJQUFDLEFBQUEsRUFBTSxJQUFLLEVBQUEsQUFBQSxRQUFDLEFBQUEsRUFTaEIsTUFBTSxDQUFDO0lBQ04sT0FBTyxFQUFFLENBQUMsR0FDWDs7QUFRSCxBQUFBLEdBQUc7QUFDSCxJQUFJO0FBQ0osR0FBRztBQUNILElBQUksQ0FBQztFQUNILFdBQVcsRW5Db0RpQixjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLFNBQVM7RUV6TTlHLFNBQVMsRUFBQyxHQUFDLEdpQ3VKZDs7QUFFRCxBQUFBLEdBQUcsQ0FBQztFQUVGLFVBQVUsRUFBRSxDQUFDO0VBRWIsYUFBYSxFQUFFLElBQUk7RUFFbkIsUUFBUSxFQUFFLElBQUksR0FDZjs7QUFPRCxBQUFBLE1BQU0sQ0FBQztFQUVMLE1BQU0sRUFBRSxRQUFRLEdBQ2pCOztBQU9ELEFBQUEsR0FBRyxDQUFDO0VBQ0YsY0FBYyxFQUFFLE1BQU07RUFDdEIsWUFBWSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSxHQUFHLENBQUM7RUFHRixRQUFRLEVBQUUsTUFBTTtFQUNoQixjQUFjLEVBQUUsTUFBTSxHQUN2Qjs7QUFPRCxBQUFBLEtBQUssQ0FBQztFQUNKLGVBQWUsRUFBRSxRQUFRLEdBQzFCOztBQUVELEFBQUEsT0FBTyxDQUFDO0VBQ04sV0FBVyxFbkMyRWlCLE9BQU07RW1DMUVsQyxjQUFjLEVuQzBFYyxPQUFNO0VtQ3pFbEMsS0FBSyxFdkNyUUssT0FBTztFdUNzUWpCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFlBQVksRUFBRSxNQUFNLEdBQ3JCOztBQUVELEFBQUEsRUFBRSxDQUFDO0VBR0QsVUFBVSxFQUFFLE9BQU8sR0FDcEI7O0FBT0QsQUFBQSxLQUFLLENBQUM7RUFFSixPQUFPLEVBQUUsWUFBWTtFQUNyQixhQUFhLEVuQzRKeUIsTUFBSyxHbUMzSjVDOztBQUtELEFBQUEsTUFBTSxDQUFDO0VBRUwsYUFBYSxFQUFFLENBQUMsR0FDakI7O0FBTUQsQUFBQSxNQUFNLEFBQUEsTUFBTSxDQUFDO0VBQ1gsT0FBTyxFQUFFLFVBQVU7RUFDbkIsT0FBTyxFQUFFLGlDQUFpQyxHQUMzQzs7QUFFRCxBQUFBLEtBQUs7QUFDTCxNQUFNO0FBQ04sTUFBTTtBQUNOLFFBQVE7QUFDUixRQUFRLENBQUM7RUFDUCxNQUFNLEVBQUUsQ0FBQztFQUNULFdBQVcsRUFBRSxPQUFPO0VqQ3RQbEIsU0FBUyxFQUFDLE9BQUM7RWlDd1BiLFdBQVcsRUFBRSxPQUFPLEdBQ3JCOztBQUVELEFBQUEsTUFBTTtBQUNOLEtBQUssQ0FBQztFQUNKLFFBQVEsRUFBRSxPQUFPLEdBQ2xCOztBQUVELEFBQUEsTUFBTTtBQUNOLE1BQU0sQ0FBQztFQUNMLGNBQWMsRUFBRSxJQUFJLEdBQ3JCOztBQUtELEFBQUEsTUFBTSxDQUFDO0VBQ0wsU0FBUyxFQUFFLE1BQU0sR0FDbEI7O0FBTUQsQUFBQSxNQUFNO0NBQ04sQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiO0NBQ0QsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaO0NBQ0QsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLEVBQWU7RUFDZCxrQkFBa0IsRUFBRSxNQUFNLEdBQzNCOztBQUlDLEFBSUUsTUFKSSxBQUlILElBQUssQ0FBQSxTQUFTO0NBSGpCLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUdFLElBQUssQ0FBQSxTQUFTO0NBRmpCLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWixDQUVFLElBQUssQ0FBQSxTQUFTO0NBRGpCLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUNFLElBQUssQ0FBQSxTQUFTLEVBQUU7RUFDZixNQUFNLEVBQUUsT0FBTyxHQUNoQjs7QUFLTCxBQUFBLE1BQU0sQUFBQSxrQkFBa0I7Q0FDeEIsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLENBQWMsa0JBQWtCO0NBQ2pDLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWixDQUFhLGtCQUFrQjtDQUNoQyxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FBYyxrQkFBa0IsQ0FBQztFQUNoQyxPQUFPLEVBQUUsQ0FBQztFQUNWLFlBQVksRUFBRSxJQUFJLEdBQ25COztBQUVELEFBQUEsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWjtBQUNOLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxVQUFVLEFBQWYsRUFBaUI7RUFDckIsVUFBVSxFQUFFLFVBQVU7RUFDdEIsT0FBTyxFQUFFLENBQUMsR0FDWDs7QUFHRCxBQUFBLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVg7QUFDTixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYO0FBQ04sS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLGdCQUFnQixBQUFyQjtBQUNOLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVosRUFBYztFQU1sQixrQkFBa0IsRUFBRSxPQUFPLEdBQzVCOztBQUVELEFBQUEsUUFBUSxDQUFDO0VBQ1AsUUFBUSxFQUFFLElBQUk7RUFFZCxNQUFNLEVBQUUsUUFBUSxHQUNqQjs7QUFFRCxBQUFBLFFBQVEsQ0FBQztFQU1QLFNBQVMsRUFBRSxDQUFDO0VBRVosT0FBTyxFQUFFLENBQUM7RUFDVixNQUFNLEVBQUUsQ0FBQztFQUNULE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBSUQsQUFBQSxNQUFNLENBQUM7RUFDTCxPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxJQUFJO0VBQ1gsU0FBUyxFQUFFLElBQUk7RUFDZixPQUFPLEVBQUUsQ0FBQztFQUNWLGFBQWEsRUFBRSxLQUFLO0VqQ2xTaEIsU0FBUyxFQXRDRSxNQUFDO0VpQzBVaEIsV0FBVyxFQUFFLE9BQU87RUFDcEIsS0FBSyxFQUFFLE9BQU87RUFDZCxXQUFXLEVBQUUsTUFBTSxHQUNwQjs7QUFFRCxBQUFBLFFBQVEsQ0FBQztFQUNQLGNBQWMsRUFBRSxRQUFRLEdBQ3pCOztDQUdELEFBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLENBQWMsMkJBQTJCO0NBQzFDLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUFjLDJCQUEyQixDQUFDO0VBQ3pDLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0NBRUQsQUFBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsRUFBZTtFQUtkLGNBQWMsRUFBRSxJQUFJO0VBQ3BCLGtCQUFrQixFQUFFLElBQUksR0FDekI7O0NBTUQsQUFBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FBYywyQkFBMkIsQ0FBQztFQUN6QyxrQkFBa0IsRUFBRSxJQUFJLEdBQ3pCOztBQU9ELEFBQUEsNEJBQTRCLENBQUM7RUFDM0IsSUFBSSxFQUFFLE9BQU87RUFDYixrQkFBa0IsRUFBRSxNQUFNLEdBQzNCOztBQU1ELEFBQUEsTUFBTSxDQUFDO0VBQ0wsT0FBTyxFQUFFLFlBQVksR0FDdEI7O0FBRUQsQUFBQSxPQUFPLENBQUM7RUFDTixPQUFPLEVBQUUsU0FBUztFQUNsQixNQUFNLEVBQUUsT0FBTyxHQUNoQjs7QUFFRCxBQUFBLFFBQVEsQ0FBQztFQUNQLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0NBSUQsQUFBQSxBQUFBLE1BQUMsQUFBQSxFQUFRO0VBQ1AsT0FBTyxFQUFFLGVBQWUsR0FDekI7O0FDNWRELEFBQUEsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO0FBQ3RCLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDO0VBQzNCLGFBQWEsRXBDaVNlLE1BQVc7RW9DL1J2QyxXQUFXLEVwQ2lTaUIsR0FBRztFb0NoUy9CLFdBQVcsRXBDaVNpQixHQUFHLEdvQy9SaEM7O0FBRUQsQUFBQSxFQUFFLEVBQUUsR0FBRyxDQUFDO0VsQ2dIRixTQUFTLEVBdENFLE1BQUMsR2tDMUU2Qjs7QUFDL0MsQUFBQSxFQUFFLEVBQUUsR0FBRyxDQUFDO0VsQytHRixTQUFTLEVBdENFLElBQUMsR2tDekU2Qjs7QUFDL0MsQUFBQSxFQUFFLEVBQUUsR0FBRyxDQUFDO0VsQzhHRixTQUFTLEVBdENFLE9BQUMsR2tDeEU2Qjs7QUFDL0MsQUFBQSxFQUFFLEVBQUUsR0FBRyxDQUFDO0VsQzZHRixTQUFTLEVBdENFLE1BQUMsR2tDdkU2Qjs7QUFDL0MsQUFBQSxFQUFFLEVBQUUsR0FBRyxDQUFDO0VsQzRHRixTQUFTLEVBdENFLE9BQUMsR2tDdEU2Qjs7QUFDL0MsQUFBQSxFQUFFLEVBQUUsR0FBRyxDQUFDO0VsQzJHRixTQUFTLEVBdENFLElBQUMsR2tDckU2Qjs7QUFFL0MsQUFBQSxLQUFLLENBQUM7RWxDeUdBLFNBQVMsRUF0Q0UsT0FBQztFa0NqRWhCLFdBQVcsRXBDbVNpQixHQUFHLEdvQ2xTaEM7O0FBR0QsQUFBQSxVQUFVLENBQUM7RWxDbUdMLFNBQVMsRUF0Q0UsSUFBQztFa0MzRGhCLFdBQVcsRXBDc1JpQixHQUFHO0VvQ3JSL0IsV0FBVyxFcEM2UWlCLEdBQUcsR29DNVFoQzs7QUFDRCxBQUFBLFVBQVUsQ0FBQztFbEM4RkwsU0FBUyxFQXRDRSxNQUFDO0VrQ3REaEIsV0FBVyxFcENrUmlCLEdBQUc7RW9DalIvQixXQUFXLEVwQ3dRaUIsR0FBRyxHb0N2UWhDOztBQUNELEFBQUEsVUFBVSxDQUFDO0VsQ3lGTCxTQUFTLEVBdENFLE1BQUM7RWtDakRoQixXQUFXLEVwQzhRaUIsR0FBRztFb0M3US9CLFdBQVcsRXBDbVFpQixHQUFHLEdvQ2xRaEM7O0FBQ0QsQUFBQSxVQUFVLENBQUM7RWxDb0ZMLFNBQVMsRUF0Q0UsTUFBQztFa0M1Q2hCLFdBQVcsRXBDMFFpQixHQUFHO0VvQ3pRL0IsV0FBVyxFcEM4UGlCLEdBQUcsR29DN1BoQzs7QUR3QkQsQUFBQSxFQUFFLENDakJDO0VBQ0QsVUFBVSxFcEMwRUgsSUFBSTtFb0N6RVgsYUFBYSxFcEN5RU4sSUFBSTtFb0N4RVgsTUFBTSxFQUFFLENBQUM7RUFDVCxVQUFVLEVwQzZLa0IsR0FBRyxDb0M3S0YsS0FBSyxDeENoRDVCLHFCQUFPLEd3Q2lEZDs7QUFPRCxBQUFBLEtBQUs7QUFDTCxNQUFNLENBQUM7RWxDS0gsU0FBUyxFQUFDLEdBQUM7RWtDSGIsV0FBVyxFcENzTmlCLEdBQUcsR29Dck5oQzs7QUFFRCxBQUFBLElBQUk7QUFDSixLQUFLLENBQUM7RUFDSixPQUFPLEVwQzhQcUIsS0FBSTtFb0M3UGhDLGdCQUFnQixFcENzUVksT0FBTyxHb0NyUXBDOztBQU9ELEFBQUEsY0FBYyxDQUFDO0VoQi9FYixZQUFZLEVBQUUsQ0FBQztFQUNmLFVBQVUsRUFBRSxJQUFJLEdnQmdGakI7O0FBR0QsQUFBQSxZQUFZLENBQUM7RWhCcEZYLFlBQVksRUFBRSxDQUFDO0VBQ2YsVUFBVSxFQUFFLElBQUksR2dCcUZqQjs7QUFDRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLE9BQU8sRUFBRSxZQUFZLEdBS3RCO0VBTkQsQUFHRSxpQkFIZSxBQUdkLElBQUssQ0FBQSxXQUFXLEVBQUU7SUFDakIsWUFBWSxFcENnUGMsTUFBSyxHb0MvT2hDOztBQVNILEFBQUEsV0FBVyxDQUFDO0VsQ2pDUixTQUFTLEVBQUMsR0FBQztFa0NtQ2IsY0FBYyxFQUFFLFNBQVMsR0FDMUI7O0FBR0QsQUFBQSxXQUFXLENBQUM7RUFDVixhQUFhLEVwQ2lCTixJQUFJO0VFRlAsU0FBUyxFQXRDRSxPQUFDLEdrQ3lCakI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixPQUFPLEVBQUUsS0FBSztFbEM3Q1osU0FBUyxFQUFDLEdBQUM7RWtDK0NiLEtBQUssRXBDMUdJLE9BQU8sR29DK0dqQjtFQVJELEFBS0Usa0JBTGdCLEFBS2YsUUFBUSxDQUFDO0lBQ1IsT0FBTyxFQUFFLFlBQVksR0FDdEI7O0FDcEhILEFBQUEsVUFBVSxDQUFDO0UvQklULFNBQVMsRUFBRSxJQUFJO0VBR2YsTUFBTSxFQUFFLElBQUksRytCTGI7O0FBSUQsQUFBQSxjQUFjLENBQUM7RUFDYixPQUFPLEVyQysrQjJCLE9BQU07RXFDOStCeEMsZ0JBQWdCLEV6Q0tWLElBQUk7RXlDSlYsTUFBTSxFckN1TnNCLEdBQUcsQ3FDdk5DLEtBQUssQ3JDTjVCLE9BQU87RTBCTGQsYUFBYSxFMUJxT2EsT0FBTTtFTS9ObEMsU0FBUyxFQUFFLElBQUk7RUFHZixNQUFNLEVBQUUsSUFBSSxHK0JRYjs7QUFNRCxBQUFBLE9BQU8sQ0FBQztFQUVOLE9BQU8sRUFBRSxZQUFZLEdBQ3RCOztBQUVELEFBQUEsV0FBVyxDQUFDO0VBQ1YsYUFBYSxFQUFFLE1BQVc7RUFDMUIsV0FBVyxFQUFFLENBQUMsR0FDZjs7QUFFRCxBQUFBLGVBQWUsQ0FBQztFbkNrQ1osU0FBUyxFQUFDLEdBQUM7RW1DaENiLEtBQUssRXJDM0JJLE9BQU8sR3FDNEJqQjs7QUN4Q0QsQUFBQSxJQUFJLENBQUM7RXBDdUVELFNBQVMsRUFBQyxLQUFDO0VvQ3JFYixLQUFLLEV0Q29DRyxPQUFPO0VzQ25DZixVQUFVLEVBQUUsVUFBVSxHQU12QjtFQUhDLEFBQUEsQ0FBQyxHQU5ILElBQUksQ0FNSTtJQUNKLEtBQUssRUFBRSxPQUFPLEdBQ2Y7O0FBSUgsQUFBQSxHQUFHLENBQUM7RUFDRixPQUFPLEV0Q2drQzJCLE1BQUssQ0FDTCxNQUFLO0VFdmdDckMsU0FBUyxFQUFDLEtBQUM7RW9DeERiLEtBQUssRTFDSUMsSUFBSTtFMENIVixnQkFBZ0IsRXRDRFAsT0FBTztFMEJYZCxhQUFhLEUxQnVPYSxNQUFLLEdzQ2pObEM7RUFkRCxBQVFFLEdBUkMsQ0FRRCxHQUFHLENBQUM7SUFDRixPQUFPLEVBQUUsQ0FBQztJcENrRFYsU0FBUyxFQUFDLElBQUM7SW9DaERYLFdBQVcsRXRDb1FlLEdBQUcsR3NDbFE5Qjs7QUh1TUgsQUFBQSxHQUFHLENHbk1DO0VBQ0YsT0FBTyxFQUFFLEtBQUs7RXBDeUNaLFNBQVMsRUFBQyxLQUFDO0VvQ3ZDYixLQUFLLEV0Q2pCSSxPQUFPLEdzQ3lCakI7RUFYRCxBQU1FLEdBTkMsQ0FNRCxJQUFJLENBQUM7SXBDb0NILFNBQVMsRUFBQyxPQUFDO0lvQ2xDWCxLQUFLLEVBQUUsT0FBTztJQUNkLFVBQVUsRUFBRSxNQUFNLEdBQ25COztBQUlILEFBQUEsZUFBZSxDQUFDO0VBQ2QsVUFBVSxFdEN3aUN3QixLQUFLO0VzQ3ZpQ3ZDLFVBQVUsRUFBRSxNQUFNLEdBQ25COztBQzFDQyxBQUFBLFVBQVUsQ0FBQztFUEFYLEtBQUssRUFBRSxJQUFJO0VBQ1gsYUFBYSxFQUFFLElBQVc7RUFDMUIsWUFBWSxFQUFFLElBQVc7RUFDekIsWUFBWSxFQUFFLElBQUk7RUFDbEIsV0FBVyxFQUFFLElBQUksR09EaEI7RW5Db0RDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJbUN2RDFCLEFBQUEsVUFBVSxDQUFDO01QWVAsU0FBUyxFaEM4TFQsS0FBSyxHdUN2TVI7RW5Db0RDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJbUN2RDFCLEFBQUEsVUFBVSxDQUFDO01QWVAsU0FBUyxFaEMrTFQsS0FBSyxHdUN4TVI7RW5Db0RDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJbUN2RDFCLEFBQUEsVUFBVSxDQUFDO01QWVAsU0FBUyxFaENnTVQsS0FBSyxHdUN6TVI7RW5Db0RDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJbUN2RDNCLEFBQUEsVUFBVSxDQUFDO01QWVAsU0FBUyxFaENpTVQsTUFBTSxHdUMxTVQ7O0FBU0QsQUFBQSxnQkFBZ0IsQ0FBQztFUFpqQixLQUFLLEVBQUUsSUFBSTtFQUNYLGFBQWEsRUFBRSxJQUFXO0VBQzFCLFlBQVksRUFBRSxJQUFXO0VBQ3pCLFlBQVksRUFBRSxJQUFJO0VBQ2xCLFdBQVcsRUFBRSxJQUFJLEdPVWhCOztBQVFELEFBQUEsSUFBSSxDQUFDO0VQSkwsT0FBTyxFQUFFLElBQUk7RUFDYixTQUFTLEVBQUUsSUFBSTtFQUNmLFlBQVksRUFBRSxLQUFZO0VBQzFCLFdBQVcsRUFBRSxLQUFZLEdPR3hCOztBQUlELEFBQUEsV0FBVyxDQUFDO0VBQ1YsWUFBWSxFQUFFLENBQUM7RUFDZixXQUFXLEVBQUUsQ0FBQyxHQU9mO0VBVEQsQUFJRSxXQUpTLEdBSVAsSUFBSTtFQUpSLFdBQVcsSUFLUCxBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsRUFBZTtJQUNoQixhQUFhLEVBQUUsQ0FBQztJQUNoQixZQUFZLEVBQUUsQ0FBQyxHQUNoQjs7QVJ0QkMsQUFaSixNQVlVLEVBQU4sTUFBTSxFQUFOLE1BQU0sRUFBTixNQUFNLEVBQU4sTUFBTSxFQUFOLE1BQU0sRUFBTixNQUFNLEVBQU4sTUFBTSxFQUFOLE1BQU0sRUFBTixPQUFPLEVBQVAsT0FBTyxFQUFQLE9BQU8sRUFJVCxJQUFJO0FBQ0osU0FBUyxFQUxQLFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFVBQVUsRUFBVixVQUFVLEVBQVYsVUFBVSxFQUlaLE9BQU87QUFDUCxZQUFZLEVBTFYsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsVUFBVSxFQUFWLFVBQVUsRUFBVixVQUFVLEVBSVosT0FBTztBQUNQLFlBQVksRUFMVixTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxVQUFVLEVBQVYsVUFBVSxFQUFWLFVBQVUsRUFJWixPQUFPO0FBQ1AsWUFBWSxFQUxWLFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFVBQVUsRUFBVixVQUFVLEVBQVYsVUFBVSxFQUlaLE9BQU87QUFDUCxZQUFZLEVBTFYsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsU0FBUyxFQUFULFNBQVMsRUFBVCxTQUFTLEVBQVQsVUFBVSxFQUFWLFVBQVUsRUFBVixVQUFVLEVBSVosT0FBTztBQUNQLFlBQVksQ0FqQkQ7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLGFBQWEsRUFBRSxJQUFXO0VBQzFCLFlBQVksRUFBRSxJQUFXLEdBQzFCOztBQWtCRyxBQUFBLElBQUksQ0FBVTtFQUNaLFVBQVUsRUFBRSxDQUFDO0VBQ2IsU0FBUyxFQUFFLENBQUM7RUFDWixTQUFTLEVBQUUsSUFBSSxHQUNoQjs7QUFDRCxBQUFBLFNBQVMsQ0FBVTtFQUNqQixJQUFJLEVBQUUsUUFBUTtFQUNkLEtBQUssRUFBRSxJQUFJO0VBQ1gsU0FBUyxFQUFFLElBQUksR0FDaEI7O0FBR0MsQUFBQSxNQUFNLENBQWM7RUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBNEI7RUFJdEMsU0FBUyxFQUFFLFFBQTRCLEdEQWhDOztBQUZELEFBQUEsTUFBTSxDQUFjO0VDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0VBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtFQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7O0FBRkQsQUFBQSxNQUFNLENBQWM7RUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7RUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdEQWhDOztBQUZELEFBQUEsTUFBTSxDQUFjO0VDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0VBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtFQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7O0FBRkQsQUFBQSxNQUFNLENBQWM7RUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7RUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdEQWhDOztBQUZELEFBQUEsTUFBTSxDQUFjO0VDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0VBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtFQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7O0FBRkQsQUFBQSxPQUFPLENBQWE7RUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7RUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdEQWhDOztBQUZELEFBQUEsT0FBTyxDQUFhO0VDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0VBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQzs7QUFGRCxBQUFBLE9BQU8sQ0FBYTtFQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUE0QjtFQUl0QyxTQUFTLEVBQUUsSUFBNEIsR0RBaEM7O0FBR0gsQUFBQSxZQUFZLENBQVU7RUFBRSxLQUFLLEVBQUUsRUFBRSxHQUFJOztBQUVyQyxBQUFBLFdBQVcsQ0FBVTtFQUFFLEtBQUssRS9CMktKLEVBQUUsRytCM0tvQjs7QUFHNUMsQUFBQSxRQUFRLENBQWM7RUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7O0FBQXJDLEFBQUEsUUFBUSxDQUFjO0VBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCOztBQUFyQyxBQUFBLFFBQVEsQ0FBYztFQUFFLEtBQUssRUFEbEIsQ0FBQyxHQUN5Qjs7QUFBckMsQUFBQSxRQUFRLENBQWM7RUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7O0FBQXJDLEFBQUEsUUFBUSxDQUFjO0VBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCOztBQUFyQyxBQUFBLFFBQVEsQ0FBYztFQUFFLEtBQUssRUFEbEIsQ0FBQyxHQUN5Qjs7QUFBckMsQUFBQSxRQUFRLENBQWM7RUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7O0FBQXJDLEFBQUEsUUFBUSxDQUFjO0VBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCOztBQUFyQyxBQUFBLFFBQVEsQ0FBYztFQUFFLEtBQUssRUFEbEIsQ0FBQyxHQUN5Qjs7QUFBckMsQUFBQSxRQUFRLENBQWM7RUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7O0FBQXJDLEFBQUEsU0FBUyxDQUFhO0VBQUUsS0FBSyxFQURsQixFQUFDLEdBQ3lCOztBQUFyQyxBQUFBLFNBQVMsQ0FBYTtFQUFFLEtBQUssRUFEbEIsRUFBQyxHQUN5Qjs7QUFBckMsQUFBQSxTQUFTLENBQWE7RUFBRSxLQUFLLEVBRGxCLEVBQUMsR0FDeUI7O0FBTW5DLEFBQUEsU0FBUyxDQUFjO0VDVC9CLFdBQVcsRUFBbUIsUUFBZ0IsR0RXckM7O0FBRkQsQUFBQSxTQUFTLENBQWM7RUNUL0IsV0FBVyxFQUFtQixTQUFnQixHRFdyQzs7QUFGRCxBQUFBLFNBQVMsQ0FBYztFQ1QvQixXQUFXLEVBQW1CLEdBQWdCLEdEV3JDOztBQUZELEFBQUEsU0FBUyxDQUFjO0VDVC9CLFdBQVcsRUFBbUIsU0FBZ0IsR0RXckM7O0FBRkQsQUFBQSxTQUFTLENBQWM7RUNUL0IsV0FBVyxFQUFtQixTQUFnQixHRFdyQzs7QUFGRCxBQUFBLFNBQVMsQ0FBYztFQ1QvQixXQUFXLEVBQW1CLEdBQWdCLEdEV3JDOztBQUZELEFBQUEsU0FBUyxDQUFjO0VDVC9CLFdBQVcsRUFBbUIsU0FBZ0IsR0RXckM7O0FBRkQsQUFBQSxTQUFTLENBQWM7RUNUL0IsV0FBVyxFQUFtQixTQUFnQixHRFdyQzs7QUFGRCxBQUFBLFNBQVMsQ0FBYztFQ1QvQixXQUFXLEVBQW1CLEdBQWdCLEdEV3JDOztBQUZELEFBQUEsVUFBVSxDQUFhO0VDVC9CLFdBQVcsRUFBbUIsU0FBZ0IsR0RXckM7O0FBRkQsQUFBQSxVQUFVLENBQWE7RUNUL0IsV0FBVyxFQUFtQixTQUFnQixHRFdyQzs7QTNCQVAsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0UyQjlCdEIsQUFBQSxPQUFPLENBQU87SUFDWixVQUFVLEVBQUUsQ0FBQztJQUNiLFNBQVMsRUFBRSxDQUFDO0lBQ1osU0FBUyxFQUFFLElBQUksR0FDaEI7RUFDRCxBQUFBLFlBQVksQ0FBTztJQUNqQixJQUFJLEVBQUUsUUFBUTtJQUNkLEtBQUssRUFBRSxJQUFJO0lBQ1gsU0FBUyxFQUFFLElBQUksR0FDaEI7RUFHQyxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUE0QjtJQUl0QyxTQUFTLEVBQUUsUUFBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUE0QjtJQUl0QyxTQUFTLEVBQUUsSUFBNEIsR0RBaEM7RUFHSCxBQUFBLGVBQWUsQ0FBTztJQUFFLEtBQUss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 */