/*  framework */
/* bootstrap start */
/*!
 * Bootstrap v4.0.0 (https://getbootstrap.com)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #e30613;
  --light: #f8f9fa;
  --dark: #4d5760;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --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%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: transparent;
}

@-ms-viewport {
  width: device-width;
}

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

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #f5f5f5;
}

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

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

dfn {
  font-style: italic;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

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

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

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: monospace, monospace;
  font-size: 1em;
}

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

figure {
  margin: 0 0 1rem;
}

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

svg:not(:root) {
  overflow: hidden;
}

table {
  border-collapse: collapse;
}

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

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: .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;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

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-cancel-button,
[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-family: inherit;
  font-weight: 500;
  line-height: 1.2;
  color: inherit;
}

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

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

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

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

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

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

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

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

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

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

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

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

small,
.small {
  font-size: 80%;
  font-weight: 400;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}

.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d;
}

.blockquote-footer::before {
  content: "\2014 \00A0";
}

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: #f5f5f5;
  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,
kbd,
pre,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

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-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%;
  min-height: 1px;
  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: none;
}

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

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

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

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

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

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

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

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

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

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

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

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

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .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: none;
  }
  .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: none;
  }
  .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: none;
  }
  .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%;
  max-width: 100%;
  margin-bottom: 1rem;
  background-color: transparent;
}

.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 .table {
  background-color: #f5f5f5;
}

.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-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.table .thead-dark th {
  color: #f5f5f5;
  background-color: #212529;
  border-color: #32383e;
}

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.table-dark {
  color: #f5f5f5;
  background-color: #212529;
}

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #32383e;
}

.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 {
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .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;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .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;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .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;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}

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

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

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  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;
}

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

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

select.form-control:not([size]):not([multiple]) {
  height: calc(2.25rem + 2px);
}

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;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-plaintext.form-control-sm, .input-group-sm > .form-control-plaintext.form-control,
.input-group-sm > .input-group-prepend > .form-control-plaintext.input-group-text,
.input-group-sm > .input-group-append > .form-control-plaintext.input-group-text,
.input-group-sm > .input-group-prepend > .form-control-plaintext.btn,
.input-group-sm > .input-group-append > .form-control-plaintext.btn, .form-control-plaintext.form-control-lg, .input-group-lg > .form-control-plaintext.form-control,
.input-group-lg > .input-group-prepend > .form-control-plaintext.input-group-text,
.input-group-lg > .input-group-append > .form-control-plaintext.input-group-text,
.input-group-lg > .input-group-prepend > .form-control-plaintext.btn,
.input-group-lg > .input-group-append > .form-control-plaintext.btn {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm, .input-group-sm > .form-control,
.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;
}

select.form-control-sm:not([size]):not([multiple]), .input-group-sm > select.form-control:not([size]):not([multiple]),
.input-group-sm > .input-group-prepend > select.input-group-text:not([size]):not([multiple]),
.input-group-sm > .input-group-append > select.input-group-text:not([size]):not([multiple]),
.input-group-sm > .input-group-prepend > select.btn:not([size]):not([multiple]),
.input-group-sm > .input-group-append > select.btn:not([size]):not([multiple]) {
  height: calc(1.8125rem + 2px);
}

.form-control-lg, .input-group-lg > .form-control,
.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;
}

select.form-control-lg:not([size]):not([multiple]), .input-group-lg > select.form-control:not([size]):not([multiple]),
.input-group-lg > .input-group-prepend > select.input-group-text:not([size]):not([multiple]),
.input-group-lg > .input-group-append > select.input-group-text:not([size]):not([multiple]),
.input-group-lg > .input-group-prepend > select.btn:not([size]):not([multiple]),
.input-group-lg > .input-group-append > select.btn:not([size]):not([multiple]) {
  height: calc(2.875rem + 2px);
}

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

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

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

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: .5rem;
  margin-top: .1rem;
  font-size: .875rem;
  line-height: 1;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.8);
  border-radius: .2rem;
}

.was-validated .form-control:valid, .form-control.is-valid, .was-validated
.custom-select:valid,
.custom-select.is-valid {
  border-color: #28a745;
}

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

.was-validated .form-control:valid ~ .valid-feedback,
.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,
.form-control.is-valid ~ .valid-tooltip, .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-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 {
  background-color: #71dd8a;
}

.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 {
  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 1px #f5f5f5, 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.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 ~ .custom-file-label::before, .custom-file-input.is-valid ~ .custom-file-label::before {
  border-color: inherit;
}

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

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: .5rem;
  margin-top: .1rem;
  font-size: .875rem;
  line-height: 1;
  color: #fff;
  background-color: rgba(227, 6, 19, 0.8);
  border-radius: .2rem;
}

.was-validated .form-control:invalid, .form-control.is-invalid, .was-validated
.custom-select:invalid,
.custom-select.is-invalid {
  border-color: #e30613;
}

.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus, .was-validated
.custom-select:invalid:focus,
.custom-select.is-invalid:focus {
  border-color: #e30613;
  box-shadow: 0 0 0 0.2rem rgba(227, 6, 19, 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, .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-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #e30613;
}

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

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

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

.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 1px #f5f5f5, 0 0 0 0.2rem rgba(227, 6, 19, 0.25);
}

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

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

.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 {
  box-shadow: 0 0 0 0.2rem rgba(227, 6, 19, 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 {
    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;
    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;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  user-select: none;
  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;
}

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

.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.btn.disabled, .btn:disabled {
  opacity: 0.65;
}

.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}

.btn:not(:disabled):not(.disabled):active, .btn:not(:disabled):not(.disabled).active {
  background-image: none;
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}

.btn-primary:focus, .btn-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

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

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}

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

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

.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}

.btn-secondary:focus, .btn-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

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

.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 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(40, 167, 69, 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(40, 167, 69, 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(23, 162, 184, 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(23, 162, 184, 0.5);
}

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

.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}

.btn-warning:focus, .btn-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

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

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

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

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

.btn-danger:hover {
  color: #fff;
  background-color: #be0510;
  border-color: #b1050f;
}

.btn-danger:focus, .btn-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(227, 6, 19, 0.5);
}

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

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

.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(227, 6, 19, 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(248, 249, 250, 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(248, 249, 250, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #4d5760;
  border-color: #4d5760;
}

.btn-dark:hover {
  color: #fff;
  background-color: #3c444b;
  border-color: #363d44;
}

.btn-dark:focus, .btn-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 87, 96, 0.5);
}

.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #4d5760;
  border-color: #4d5760;
}

.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #363d44;
  border-color: #31373d;
}

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

.btn-outline-primary {
  color: #007bff;
  background-color: transparent;
  background-image: none;
  border-color: #007bff;
}

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

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

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}

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

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

.btn-outline-secondary {
  color: #6c757d;
  background-color: transparent;
  background-image: none;
  border-color: #6c757d;
}

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

.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

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

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

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

.btn-outline-success {
  color: #28a745;
  background-color: transparent;
  background-image: none;
  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;
  background-color: transparent;
  background-image: none;
  border-color: #17a2b8;
}

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

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

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

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

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

.btn-outline-warning {
  color: #ffc107;
  background-color: transparent;
  background-image: none;
  border-color: #ffc107;
}

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

.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

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

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

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

.btn-outline-danger {
  color: #e30613;
  background-color: transparent;
  background-image: none;
  border-color: #e30613;
}

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

.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(227, 6, 19, 0.5);
}

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

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

.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(227, 6, 19, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  background-color: transparent;
  background-image: none;
  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: #4d5760;
  background-color: transparent;
  background-image: none;
  border-color: #4d5760;
}

.btn-outline-dark:hover {
  color: #fff;
  background-color: #4d5760;
  border-color: #4d5760;
}

.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 87, 96, 0.5);
}

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

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

.btn-link {
  font-weight: 400;
  color: #007bff;
  background-color: transparent;
}

.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
  background-color: transparent;
  border-color: transparent;
}

.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
  border-color: transparent;
  box-shadow: none;
}

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

.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 {
  opacity: 0;
  transition: opacity 0.15s linear;
}

.fade.show {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.show {
  display: block;
}

tr.collapse.show {
  display: table-row;
}

tbody.collapse.show {
  display: table-row-group;
}

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

.dropup,
.dropdown {
  position: relative;
}

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

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

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

.dropup .dropdown-menu {
  margin-top: 0;
  margin-bottom: 0.125rem;
}

.dropup .dropdown-toggle::after {
  display: inline-block;
  width: 0;
  height: 0;
  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 {
  margin-top: 0;
  margin-left: 0.125rem;
}

.dropright .dropdown-toggle::after {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  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 {
  margin-top: 0;
  margin-right: 0.125rem;
}

.dropleft .dropdown-toggle::after {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}

.dropleft .dropdown-toggle::after {
  display: none;
}

.dropleft .dropdown-toggle::before {
  display: inline-block;
  width: 0;
  height: 0;
  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-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #f8f9fa;
}

.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}

.dropdown-item.disabled, .dropdown-item:disabled {
  color: #6c757d;
  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;
}

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

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 0 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-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group,
.btn-group-vertical .btn + .btn,
.btn-group-vertical .btn + .btn-group,
.btn-group-vertical .btn-group + .btn,
.btn-group-vertical .btn-group + .btn-group {
  margin-left: -1px;
}

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

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

.btn-group > .btn:first-child {
  margin-left: 0;
}

.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 {
  margin-left: 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 + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}

.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 > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}

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

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .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: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::before {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .custom-file:not(:first-child) .custom-file-label,
.input-group > .custom-file:not(:first-child) .custom-file-label::before {
  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 + .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 > .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;
  background-color: #007bff;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 1px #f5f5f5, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-control-input:active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b3d7ff;
}

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

.custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

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

.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: 0;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  user-select: none;
  background-color: #dee2e6;
}

.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: 0;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50% 50%;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-color: #007bff;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml;charset=utf8,%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 {
  background-color: #007bff;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  background-color: #007bff;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(2.25rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml;charset=utf8,%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;
  background-size: 8px 10px;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none;
}

.custom-select:focus {
  border-color: #80bdff;
  outline: 0;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075), 0 0 5px rgba(128, 189, 255, 0.5);
}

.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 {
  opacity: 0;
}

.custom-select-sm {
  height: calc(1.8125rem + 2px);
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  font-size: 75%;
}

.custom-select-lg {
  height: calc(2.875rem + 2px);
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  font-size: 125%;
}

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

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(2.25rem + 2px);
  margin: 0;
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-control {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-file-input:focus ~ .custom-file-control::before {
  border-color: #80bdff;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(2.25rem + 2px);
  padding: 0.375rem 0.75rem;
  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(calc(2.25rem + 2px) - 1px * 2);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: 1px solid #ced4da;
  border-radius: 0 0.25rem 0.25rem 0;
}

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

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

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

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

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

.nav-fill .nav-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:not(:disabled):not(.disabled) {
  cursor: pointer;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: no-repeat center center;
  background-size: 100% 100%;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid {
    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 .dropdown-menu-right {
    right: 0;
    left: auto;
  }
  .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;
  }
  .navbar-expand-sm .dropup .dropdown-menu {
    top: auto;
    bottom: 100%;
  }
}

@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 .dropdown-menu-right {
    right: 0;
    left: auto;
  }
  .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;
  }
  .navbar-expand-md .dropup .dropdown-menu {
    top: auto;
    bottom: 100%;
  }
}

@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 .dropdown-menu-right {
    right: 0;
    left: auto;
  }
  .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;
  }
  .navbar-expand-lg .dropup .dropdown-menu {
    top: auto;
    bottom: 100%;
  }
}

@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 .dropdown-menu-right {
    right: 0;
    left: auto;
  }
  .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-xl .dropup .dropdown-menu {
    top: auto;
    bottom: 100%;
  }
}

.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 .dropdown-menu-right {
  right: 0;
  left: auto;
}

.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-expand .dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}

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

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

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

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

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

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

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 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(0, 0, 0, 0.5);
}

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

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

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

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

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

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

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

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

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

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%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(0, 0, 0, 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(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-header + .list-group .list-group-item:first-child {
  border-top: 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}

.card-img {
  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:first-child {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:first-child .card-img-top,
  .card-group > .card:first-child .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:first-child .card-img-bottom,
  .card-group > .card:first-child .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:last-child {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:last-child .card-img-top,
  .card-group > .card:last-child .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:last-child .card-img-bottom,
  .card-group > .card:last-child .card-footer {
    border-bottom-left-radius: 0;
  }
  .card-group > .card:only-child {
    border-radius: 0.25rem;
  }
  .card-group > .card:only-child .card-img-top,
  .card-group > .card:only-child .card-header {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
  }
  .card-group > .card:only-child .card-img-bottom,
  .card-group > .card:only-child .card-footer {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .card-group > .card:not(:first-child):not(:last-child):not(:only-child) {
    border-radius: 0;
  }
  .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-top,
  .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,
  .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-header,
  .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-footer {
    border-radius: 0;
  }
}

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

@media (min-width: 576px) {
  .card-columns {
    column-count: 3;
    column-gap: 1.25rem;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.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::before {
  display: inline-block;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  color: #6c757d;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #6c757d;
}

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

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 2;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-link:not(:disabled):not(.disabled) {
  cursor: pointer;
}

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

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}

.badge:empty {
  display: none;
}

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

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

.badge-primary {
  color: #fff;
  background-color: #007bff;
}

.badge-primary[href]:hover, .badge-primary[href]:focus {
  color: #fff;
  text-decoration: none;
  background-color: #0062cc;
}

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

.badge-secondary[href]:hover, .badge-secondary[href]:focus {
  color: #fff;
  text-decoration: none;
  background-color: #545b62;
}

.badge-success {
  color: #fff;
  background-color: #28a745;
}

.badge-success[href]:hover, .badge-success[href]:focus {
  color: #fff;
  text-decoration: none;
  background-color: #1e7e34;
}

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

.badge-info[href]:hover, .badge-info[href]:focus {
  color: #fff;
  text-decoration: none;
  background-color: #117a8b;
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}

.badge-warning[href]:hover, .badge-warning[href]:focus {
  color: #212529;
  text-decoration: none;
  background-color: #d39e00;
}

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

.badge-danger[href]:hover, .badge-danger[href]:focus {
  color: #fff;
  text-decoration: none;
  background-color: #b1050f;
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}

.badge-light[href]:hover, .badge-light[href]:focus {
  color: #212529;
  text-decoration: none;
  background-color: #dae0e5;
}

.badge-dark {
  color: #fff;
  background-color: #4d5760;
}

.badge-dark[href]:hover, .badge-dark[href]:focus {
  color: #fff;
  text-decoration: none;
  background-color: #363d44;
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

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

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

.alert-heading {
  color: inherit;
}

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

.alert-dismissible {
  padding-right: 4rem;
}

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

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}

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

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

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}

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

.alert-secondary .alert-link {
  color: #202326;
}

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

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

.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}

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

.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

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

.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #76030a;
  background-color: #f9cdd0;
  border-color: #f7b9bd;
}

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

.alert-danger .alert-link {
  color: #440206;
}

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

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

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

.alert-dark {
  color: #282d32;
  background-color: #dbdddf;
  border-color: #cdd0d2;
}

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

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

@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;
  background-color: #007bff;
  transition: width 0.6s ease;
}

.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 {
  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 {
  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(0, 0, 0, 0.125);
}

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

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

.list-group-item:hover, .list-group-item:focus {
  z-index: 1;
  text-decoration: none;
}

.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  background-color: #fff;
}

.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

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

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

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

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff;
}

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

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

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db;
}

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

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

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

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

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

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb;
}

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

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

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba;
}

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

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

.list-group-item-danger {
  color: #76030a;
  background-color: #f7b9bd;
}

.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #76030a;
  background-color: #f4a2a7;
}

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

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

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

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

.list-group-item-dark {
  color: #282d32;
  background-color: #cdd0d2;
}

.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #282d32;
  background-color: #c0c3c6;
}

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

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

.close:hover, .close:focus {
  color: #000;
  text-decoration: none;
  opacity: .75;
}

.close:not(:disabled):not(.disabled) {
  cursor: pointer;
}

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

.modal-open {
  overflow: hidden;
}

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  outline: 0;
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

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

.modal.show .modal-dialog {
  transform: translate(0, 0);
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - (0.5rem * 2));
}

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

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem;
  border-bottom: 1px solid #e9ecef;
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
}

.modal-header .close {
  padding: 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 #e9ecef;
}

.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-centered {
    min-height: calc(100% - (1.75rem * 2));
  }
  .modal-sm {
    max-width: 300px;
  }
}

@media (min-width: 992px) {
  .modal-lg {
    max-width: 800px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0;
}

.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0;
}

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem;
}

.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0;
}

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem;
}

.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

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

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}

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

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

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

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

.bs-popover-top .arrow::before, .bs-popover-auto[x-placement^="top"] .arrow::before,
.bs-popover-top .arrow::after, .bs-popover-auto[x-placement^="top"] .arrow::after {
  border-width: 0.5rem 0.5rem 0;
}

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

.bs-popover-top .arrow::after, .bs-popover-auto[x-placement^="top"] .arrow::after {
  bottom: 1px;
  border-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,
.bs-popover-right .arrow::after, .bs-popover-auto[x-placement^="right"] .arrow::after {
  border-width: 0.5rem 0.5rem 0.5rem 0;
}

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

.bs-popover-right .arrow::after, .bs-popover-auto[x-placement^="right"] .arrow::after {
  left: 1px;
  border-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,
.bs-popover-bottom .arrow::after, .bs-popover-auto[x-placement^="bottom"] .arrow::after {
  border-width: 0 0.5rem 0.5rem 0.5rem;
}

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

.bs-popover-bottom .arrow::after, .bs-popover-auto[x-placement^="bottom"] .arrow::after {
  top: 1px;
  border-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,
.bs-popover-left .arrow::after, .bs-popover-auto[x-placement^="left"] .arrow::after {
  border-width: 0.5rem 0 0.5rem 0.5rem;
}

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

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

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  color: inherit;
  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-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-item {
  position: relative;
  display: none;
  align-items: center;
  width: 100%;
  transition: transform 0.6s ease;
  backface-visibility: hidden;
  perspective: 1000px;
}

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

.carousel-item-next,
.carousel-item-prev {
  position: absolute;
  top: 0;
}

.carousel-item-next.carousel-item-left,
.carousel-item-prev.carousel-item-right {
  transform: translateX(0);
}

@supports (transform-style: preserve-3d) {
  .carousel-item-next.carousel-item-left,
  .carousel-item-prev.carousel-item-right {
    transform: translate3d(0, 0, 0);
  }
}

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

@supports (transform-style: preserve-3d) {
  .carousel-item-next,
  .active.carousel-item-right {
    transform: translate3d(100%, 0, 0);
  }
}

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

@supports (transform-style: preserve-3d) {
  .carousel-item-prev,
  .active.carousel-item-left {
    transform: translate3d(-100%, 0, 0);
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
}

.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: .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: transparent no-repeat center center;
  background-size: 100% 100%;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%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;charset=utf8,%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: 10px;
  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 {
  position: relative;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  background-color: rgba(255, 255, 255, 0.5);
}

.carousel-indicators li::before {
  position: absolute;
  top: -10px;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 10px;
  content: "";
}

.carousel-indicators li::after {
  position: absolute;
  bottom: -10px;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 10px;
  content: "";
}

.carousel-indicators .active {
  background-color: #fff;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-right {
  border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
  border-left: 1px solid #dee2e6 !important;
}

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

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

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

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

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

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

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

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

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

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

.border-white {
  border-color: #fff !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-circle {
  border-radius: 50% !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, .card-item-wrap .capture span, .info-box address span {
  display: block !important;
}

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

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

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

.d-flex, .photo-collage {
  display: flex !important;
}

.d-inline-flex, .photo-collage .photo {
  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;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .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, .photo-collage {
    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;
  }
  .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;
  }
  .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;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}

.float-left {
  float: left !important;
}

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

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

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }
  .float-sm-right {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
}

@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }
  .float-md-right {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
}

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }
  .float-lg-right {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
}

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }
  .float-xl-right {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
}

.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;
  clip-path: inset(50%);
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
  clip-path: none;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.m-0 {
  margin: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important;
  }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important;
  }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important;
  }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important;
  }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important;
  }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important;
  }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important;
  }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important;
  }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important;
  }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important;
  }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important;
  }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important;
  }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important;
  }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important;
  }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important;
  }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important;
  }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important;
  }
  .m-sm-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-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-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-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-justify {
  text-align: justify !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, .card-item-wrap .capture span {
  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-normal {
  font-weight: 400 !important;
}

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

.font-italic {
  font-style: italic !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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 #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }
  .container {
    min-width: 992px !important;
  }
  .navbar {
    display: none;
  }
  .badge {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}

/* bootstrap end */
/* fonts start */
@font-face {
  font-family: 'Roboto';
  src: url(../fonts/Roboto-Light.woff);
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto';
  src: url(../fonts/Roboto-Regular.woff);
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto';
  src: url(../fonts/Roboto-Bold.woff);
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto';
  src: url(../fonts/Roboto-Black.woff);
  font-weight: 900;
  font-style: normal;
}

/* fonts end */
/* global start */
body {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  font-family: 'Roboto';
  font-weight: 300;
  /*15px*/
  font-size: 15px;
  background-color: #f5f5f5;
  color: #4d5760;
}

html,
body {
  min-height: 100vh;
  position: relative;
}

.nowrap {
  white-space: nowrap;
}

.ttu, .info-box address span {
  text-transform: uppercase;
}

.ttn, .info-box address span.ttn {
  text-transform: none;
}

ol, ul {
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
}

.card-list {
  list-style: none;
}

.card-list li {
  padding-left: 7px;
  position: relative;
}

.card-list li:before {
  content: '';
  display: block;
  position: absolute;
  top: 7px;
  left: 0;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #4d5760;
}

.card-list p {
  margin-bottom: 2px;
}

.page-wrap {
  padding-top: 25px;
  padding-bottom: 25px;
  overflow: hidden;
  min-height: calc(100vh - 110px - 120px);
  /*max-width: 991px END*/
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 991px) {
  .page-wrap {
    min-height: calc(100vh - 110px - 80px);
  }
}

@media print, screen and (max-width: 767px) {
  .page-wrap {
    padding-bottom: 30px;
  }
}

.aside {
  flex: 0 0 252px;
  width: 252px;
  padding-right: 16px;
  padding-left: 16px;
  z-index: 5;
  position: relative;
  /*max-width: 767px END*/
  /*max-width: 575px END*/
  /*min-width: 576px END*/
}

@media print, screen and (max-width: 767px) {
  .aside {
    flex: 0 0 220px;
    width: 220px;
  }
}

@media print, screen and (max-width: 575px) {
  .aside {
    max-width: 100%;
    width: auto;
  }
}

@media print, screen and (min-width: 576px) {
  .aside {
    order: 1;
  }
}

.main-content {
  width: calc(100% - 290px);
  padding-right: 16px;
  padding-left: 16px;
  padding-left: 56px;
  /*max-width: 991px END*/
  /*max-width: 767px END*/
  /*max-width: 575px END*/
  /*min-width: 576px END*/
}

@media print, screen and (max-width: 991px) {
  .main-content {
    padding-left: 16px;
  }
}

@media print, screen and (max-width: 767px) {
  .main-content {
    width: calc(105% - 220px);
    padding-left: 0;
  }
}

@media print, screen and (max-width: 575px) {
  .main-content {
    padding-left: 15px;
    display: block;
    width: 100%;
  }
}

@media print, screen and (min-width: 576px) {
  .main-content {
    order: 2;
  }
}

.white-wrap {
  background-color: #fff;
  padding-right: 25px;
  padding-left: 25px;
  padding-top: 20px;
  padding-bottom: 20px;
}

/* global end */
/* website comonents start */
/* articles start */
.post {
  color: #4d5760;
}

.post h3 small {
  display: block;
}

/* articles end */
/* buttons start */
.btn {
  position: relative;
  z-index: 1;
  /*16px*/
  font-size: 16px;
  font-family: 'Roboto';
  font-weight: 700;
  padding-right: 25px;
  padding-left: 25px;
  line-height: 1.2;
  padding-top: 8px;
  padding-bottom: 8px;
  border: none;
  border-radius: 0;
  text-align: center;
  text-transform: none;
  white-space: normal;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.btn:hover {
  text-decoration: none;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.btn:first-child {
  border: none;
  box-shadow: none;
  outline: none;
  border: none;
  box-shadow: none;
  outline: none;
}

.text-link {
  color: #4d5760;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.text-link:hover {
  color: #4d5760;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

/* buttons end */
/* section-team start */
.product-card-wrap {
  margin-right: -3px;
  margin-left: -3px;
}

.product-card-wrap:after {
  content: '';
  display: block;
  clear: both;
}

.product-card {
  padding-right: 3px;
  padding-left: 3px;
  float: left;
  margin-bottom: 6px;
}

.product-card .card-item-wrap {
  width: 140px;
  padding-top: 87%;
  height: 0;
}

.card-item-wrap {
  display: block;
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.card-item-wrap:hover {
  cursor: pointer;
}

.card-item-wrap:hover .product-card-img {
  background-color: #b4b4b4;
}

.card-item-wrap:hover .product-card-img:after {
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.card-item-wrap .product-card-img {
  position: absolute;
  z-index: 1;
  display: block;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
}

.card-item-wrap .product-card-img:after {
  content: '';
  display: block;
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.card-item-wrap .product-card-img img {
  display: block;
  min-width: 100%;
  min-height: 100%;
}

.card-item-wrap .capture {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 4;
  /*26px*/
  font-size: 26px;
  line-height: 1.2;
  font-family: 'Roboto';
  font-weight: 300;
  color: #fff;
  text-shadow: 0 0px 10px #000;
  padding-top: 5px;
  padding-right: 3px;
  padding-left: 3px;
}

.card-item-wrap .capture span {
  line-height: 1;
}

.product-card-large {
  width: 33.33%;
  /*max-width: 370px END*/
}

@media print, screen and (max-width: 370px) {
  .product-card-large {
    width: 100%;
  }
}

.product-card-large .card-item-wrap {
  width: 100%;
  padding-bottom: 112%;
  /*max-width: 370px END*/
}

@media print, screen and (max-width: 370px) {
  .product-card-large .card-item-wrap {
    padding-bottom: 40%;
  }
}

.product-card-large .capture {
  padding-top: 10px;
  /*38px*/
  font-size: 38px;
  letter-spacing: -0.02em;
  /*max-width: 991px END*/
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 991px) {
  .product-card-large .capture {
    /*30px*/
    font-size: 30px;
  }
}

@media print, screen and (max-width: 767px) {
  .product-card-large .capture {
    /*20px*/
    font-size: 20px;
  }
}

.solution-card {
  display: block;
  margin-bottom: 16px;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  /*max-width: 575px END*/
}

@media print, screen and (max-width: 575px) {
  .solution-card {
    margin-bottom: 30px;
    border: 1px solid #4d5760;
    padding-right: 10px;
    padding-left: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.solution-card h6 {
  border-bottom: 1px solid transparent;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.solution-card:hover {
  text-decoration: none;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.solution-card:hover h6 {
  border-color: #4d5760;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.solution-card:hover .solution-card-img {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.solution-card:hover .solution-card-img:after {
  display: block;
}

.solution-card-img {
  width: 100%;
  padding-top: 60%;
  overflow: hidden;
  position: relative;
  z-index: 0;
  background-color: #b4b4b4;
  margin-bottom: 5px;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.solution-card-img:after {
  content: '';
  display: block;
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background-color: rgba(77, 87, 96, 0.2);
  display: none;
}

.solution-card-img img {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/* card end */
/* footer start */
.footer {
  background-color: #4d5760;
  padding-top: 45px;
  padding-bottom: 45px;
  /*min-width: 992px END*/
  /*max-width: 991px END*/
  /*max-width: 575px END*/
}

@media print, screen and (min-width: 992px) {
  .footer {
    min-height: 120px;
  }
}

@media print, screen and (max-width: 991px) {
  .footer {
    padding-top: 25px;
    padding-bottom: 25px;
    min-height: 80px;
  }
}

@media print, screen and (max-width: 575px) {
  .footer {
    padding-top: 15px;
    padding-bottom: 15px;
    min-height: 1px;
  }
}

.footer-nav {
  padding: 0;
  margin: 0;
}

.footer-nav li {
  display: inline-flex;
  position: relative;
  padding-left: 7px;
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 767px) {
  .footer-nav li {
    display: block;
    text-align: center;
  }
}

.footer-nav li:after {
  content: '';
  display: block;
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1.2;
  background-color: #b4b4b4;
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 767px) {
  .footer-nav li:after {
    width: 50px;
    margin-right: auto;
    margin-left: auto;
    height: 1px;
    left: 50%;
    transform: translate(-50%, 0);
  }
}

.footer-nav li:first-child {
  padding-left: 0;
  padding-left: 0;
}

.footer-nav li:first-child:after {
  display: none;
}

.footer-nav li:first-child:after {
  display: none;
}

.footer-nav a {
  display: block;
  position: relative;
  padding-right: 25px;
  padding-left: 25px;
  padding-top: 9px;
  padding-bottom: 9px;
  font-weight: 400;
  /*10px*/
  font-size: 10px;
  line-height: 1.2;
  font-family: 'Roboto';
  color: #b4b4b4;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  /*max-width: 575px END*/
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 575px) {
  .footer-nav a {
    /*14px*/
    font-size: 14px;
  }
}

.footer-nav a:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 5px;
  left: 50%;
  right: 50%;
  height: 1px;
  background-color: transparent;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.footer-nav a:hover {
  color: #fff;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.footer-nav a:hover:after {
  right: 25px;
  left: 25px;
  background-color: #fff;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

@media print, screen and (max-width: 767px) {
  .footer-nav a {
    display: inline-block;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

/* footer end */
/* form start */
.form-group {
  margin-bottom: 5px;
}

.form-control {
  border-color: #000;
  border-radius: 0;
  padding-top: 3px;
  padding-bottom: 3px;
}

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #4d5760;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(77, 87, 96, 0.25);
}

textarea {
  min-height: 165px;
}

label {
  margin-bottom: 0;
}

.contact-page-form textarea {
  min-height: 125px;
}

/* form end */
/* margins start */
.mb0, .info-box address {
  margin-bottom: 0;
}

.mb5 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 767px) {
  .mb30 {
    margin-bottom: 20px;
  }
}

.mb35 {
  margin-bottom: 35px;
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 767px) {
  .mb35 {
    margin-bottom: 25px;
  }
}

.mb40 {
  margin-bottom: 40px;
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 767px) {
  .mb40 {
    margin-bottom: 30px;
  }
}

.mb45 {
  margin-bottom: 45px;
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 767px) {
  .mb45 {
    margin-bottom: 30px;
  }
}

.mb50 {
  margin-bottom: 50px;
  /*max-width: 991px END*/
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 991px) {
  .mb50 {
    margin-bottom: 40px;
  }
}

@media print, screen and (max-width: 767px) {
  .mb50 {
    margin-bottom: 30px;
  }
}

.mb60 {
  margin-bottom: 60px;
  /*max-width: 991px END*/
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 991px) {
  .mb60 {
    margin-bottom: 40px;
  }
}

@media print, screen and (max-width: 767px) {
  .mb60 {
    margin-bottom: 30px;
  }
}

.mt60 {
  margin-top: 60px;
  /*max-width: 991px END*/
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 991px) {
  .mt60 {
    margin-top: 50px;
  }
}

@media print, screen and (max-width: 767px) {
  .mt60 {
    margin-top: 30px;
  }
}

.pb50 {
  padding-bottom: 50px;
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 767px) {
  .pb50 {
    margin-top: 30px;
  }
}

.pt35 {
  padding-top: 35px;
}

.pb70 {
  padding-bottom: 70px;
  /*max-width: 1199pxEND*/
  /*max-width: 991px END*/
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 1199px) {
  .pb70 {
    padding-bottom: 50px;
  }
}

@media print, screen and (max-width: 991px) {
  .pb70 {
    padding-bottom: 40px;
  }
}

@media print, screen and (max-width: 767px) {
  .pb70 {
    padding-bottom: 30px;
  }
}

.pr-md-5 {
  /*min-width: 768px END*/
}

@media print, screen and (min-width: 768px) {
  .pr-md-5 {
    padding-right: 5px;
  }
}

/* margins end */
.w-sm-auto {
  /*min-width: 576px END*/
}

@media print, screen and (min-width: 576px) {
  .w-sm-auto {
    width: auto !important;
  }
}

.w480 {
  max-width: 480px;
}

/* main gap styles */
.container {
  margin-right: auto;
  margin-left: auto;
  padding-right: 16px;
  padding-left: 16px;
  width: 100%;
  max-width: 976px;
}

@media (max-width: 991px) {
  .container {
    padding-right: 16px;
    padding-left: 16px;
  }
}

@media (max-width: 767px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 320px) {
  .container {
    width: 100%;
    max-width: 976px;
  }
}

.row-user {
  margin-right: -8px;
  margin-left: -8px;
}

@media (max-width: 991px) {
  .row-user {
    margin-right: -8px;
    margin-left: -8px;
  }
}

@media (max-width: 767px) {
  .row-user {
    margin-right: -8px;
    margin-left: -8px;
  }
}

.col-user {
  padding-right: 8px;
  padding-left: 8px;
}

@media (max-width: 991px) {
  .col-user {
    padding-right: 8px;
    padding-left: 8px;
  }
}

@media (max-width: 767px) {
  .col-user {
    padding-right: 8px;
    padding-left: 8px;
  }
}

/* main gap styles end */
/* header start */
.header {
  background-color: #fff;
  padding-top: 20px;
  padding-bottom: 15px;
  /*min-width: 768px END*/
}

@media print, screen and (min-width: 768px) {
  .header {
    min-height: 110px;
  }
}

.logo {
  display: block;
  height: auto;
  width: 230px;
  /*max-width: 1199pxEND*/
  /*max-width: 991px END*/
  /*max-width: 767px END*/
  /*max-width: 575px END*/
}

@media print, screen and (max-width: 1199px) {
  .logo {
    width: 220px;
  }
}

@media print, screen and (max-width: 991px) {
  .logo {
    padding-top: 0;
    padding-bottom: 0;
  }
}

@media print, screen and (max-width: 767px) {
  .logo {
    width: 250px;
  }
}

@media print, screen and (max-width: 575px) {
  .logo {
    width: 180px;
  }
}

.logo img {
  display: block;
  width: 100%;
}

.header-phone {
  display: block;
  position: relative;
  /*35px*/
  font-size: 35px;
  font-weight: 900;
  color: #4d5760;
  line-height: 1;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  /*max-width: 991px END*/
  /*max-width: 767px END*/
}

.header-phone:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  right: 50%;
  height: 1px;
  background-color: transparent;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.header-phone:hover {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  color: #4d5760;
  text-decoration: none;
}

.header-phone:hover:after {
  right: 0;
  left: 0;
  background-color: #4d5760;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

@media print, screen and (max-width: 991px) {
  .header-phone {
    /*30px*/
    font-size: 30px;
    line-height: 1.2;
    padding-top: 5px;
  }
}

@media print, screen and (max-width: 767px) {
  .header-phone {
    /*20px*/
    font-size: 20px;
  }
}

/* header end */
/* info-box start */
.info-box {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #4d5760;
}

.info-box:first-child {
  border-top: 1px solid #4d5760;
  border-top: 1px solid #4d5760;
}

.info-box address span {
  font-weight: 300;
  line-height: 1.2;
}

.info-box address span.ttn {
  letter-spacing: -0.02em;
}

.info-btn-box {
  padding-top: 30px;
  padding-bottom: 30px;
  /*max-width: 575px END*/
}

@media print, screen and (max-width: 575px) {
  .info-btn-box {
    padding-bottom: 10px;
  }
}

/* info-box end */
/* modal start */
.modal-dialog {
  /*min-width: 576px END*/
}

@media print, screen and (min-width: 576px) {
  .modal-dialog {
    max-width: 410px;
  }
}

.modal-content {
  padding-right: 22px;
  padding-left: 22px;
  padding-top: 18px;
  padding-bottom: 18px;
  border-radius: 0;
}

.modal-content .close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 30px;
  height: 30px;
  border: 1px solid #4d5760;
}

.modal-content .close:after {
  content: 'x';
  color: #4d5760;
}

.modal-content .close:focus {
  outline-color: #b4b4b4;
}

.modal-title {
  padding-right: 40px;
}

/* modal end */
/* navbar start */
.nav-link {
  display: block;
  position: relative;
  /*15px*/
  font-size: 15px;
  font-weight: 300;
  font-family: 'Roboto';
  text-align: center;
  padding-top: 10px;
  padding-bottom: 1px;
  color: #4d5760;
  border-bottom: 1px solid transparent;
  /*max-width: 1199pxEND*/
  /*max-width: 991px END*/
}

.nav-link:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  right: 50%;
  height: 1px;
  background-color: transparent;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.nav-link:hover {
  color: #4d5760;
}

.nav-link:hover:after {
  right: 18px;
  left: 18px;
  background-color: #4d5760;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

@media print, screen and (max-width: 1199px) {
  .nav-link {
    display: inline-block;
    padding-right: 20px;
    padding-left: 20px;
  }
}

@media print, screen and (max-width: 991px) {
  .nav-link {
    display: block;
    text-align: center;
    border-bottom: 1px solid #b4b4b4;
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .nav-link:hover:after {
    right: 0;
    left: 0;
  }
}

.navbar {
  padding: 0;
  margin-bottom: 0;
  position: relative;
}

.navbar .navbar-nav {
  padding-left: 25px;
  margin-bottom: 3px;
  /*max-width: 991px END*/
}

@media print, screen and (max-width: 991px) {
  .navbar .navbar-nav {
    padding-left: 0;
  }
}

.navbar .navbar-nav .nav-link {
  padding-right: 18px;
  padding-left: 18px;
}

.navbar .nav-item:last-child {
  /*min-width: 992px END*/
}

@media print, screen and (min-width: 992px) {
  .navbar .nav-item:last-child .nav-link {
    padding-right: 0;
  }
  .navbar .nav-item:last-child .nav-link:hover:after {
    right: 0;
  }
}

.navbar-toggler {
  display: block;
  padding: 10px 0;
  border: none;
  border-radius: 0px;
  outline: none;
  cursor: pointer;
  width: 50px;
  height: 50px;
  border: 1px solid #b4b4b4;
  border-radius: 3px;
}

.navbar-toggler:focus {
  outline: none;
  box-shadow: 0 0px 2px 0px #666;
}

.navbar-toggler .icon-bar {
  display: block;
  height: 3px;
  width: 30px;
  margin: 6px auto;
  background-color: #4d5760;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.navbar-toggler[aria-expanded="true"] .icon-bar1 {
  margin-top: 4px;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

.navbar-toggler[aria-expanded="true"] .icon-bar2 {
  opacity: 0;
}

.navbar-toggler[aria-expanded="true"] .icon-bar3 {
  margin-top: -18px;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

/* navbar end */
/* photo-collage start */
.photo-collage .photo {
  width: 100%;
  min-width: 40%;
}

.photo-collage .photo img {
  display: block;
  min-width: 100%;
  height: auto;
}

/* photo-collage end */
/* tootltips start */
.tooltip-inner {
  background-color: #666;
  color: #ddddd9;
}

.tooltip.bs-tooltip-bottom .arrow:before, .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow:before {
  border-bottom-color: #666 !important;
}

.tooltip.bs-tooltip-left .arrow:before, .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow:before {
  border-left-color: #666 !important;
}

.tooltip.bs-tooltip-right .arrow:before, .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow:before {
  border-right-color: #666 !important;
}

.tooltip.bs-tooltip-top .arrow:before, .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow:before {
  border-top-color: #666 !important;
}

/* tootltips end */
/* heading styles start */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: 'Roboto';
}

h1, h2.large {
  /*40px*/
  font-size: 40px;
  font-weight: 300;
  line-height: 1.1;
  color: #e30613;
  margin-bottom: 0px;
  /*max-width: 991px END*/
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 991px) {
  h1, h2.large {
    /*28px*/
    font-size: 28px;
  }
}

@media print, screen and (max-width: 767px) {
  h1, h2.large {
    /*26px*/
    font-size: 26px;
    margin-bottom: 5px;
  }
}

h3 {
  /*20px*/
  font-size: 20px;
  font-weight: 700;
  color: #4d5760;
  margin-bottom: 0;
  /*max-width: 575px END*/
}

@media print, screen and (max-width: 575px) {
  h3 {
    /*18px*/
    font-size: 18px;
  }
}

h5 {
  /*17px*/
  font-size: 17px;
  font-weight: 700;
  line-height: 1.25;
  color: #4d5760;
}

h6 {
  /*15px*/
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 0;
}

p {
  /*15px*/
  font-size: 15px;
  font-family: 'Roboto';
  font-weight: 300;
  color: #4d5760;
  margin-bottom: 9px;
  line-height: 1.2;
}

p.small {
  /*12px*/
  font-size: 12px;
  /*max-width: 767px END*/
}

@media print, screen and (max-width: 767px) {
  p.small {
    /*14px*/
    font-size: 14px;
  }
}

b {
  font-weight: 700;
}

address p, address span {
  color: #4d5760;
}

a {
  color: #4d5760;
}

a:hover {
  color: #4d5760;
}

a:first-child {
  outline: none !important;
  outline: none !important;
}

/* heading styles end */
/* website comonents end */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2FzcyIsIl92YXJpYWJsZXMuc2FzcyIsIl9taXhpbnMuc2FzcyIsInZlbmRvci9ib290c3RyYXAvYm9vdHN0cmFwLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19mdW5jdGlvbnMuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19ob3Zlci5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fYmFkZ2Uuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19yZXNpemUuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fc2l6ZS5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX3Zpc2liaWxpdHkuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19hbGVydC5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19jYXJldC5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19saXN0cy5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2JveC1zaGFkb3cuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsInZlbmRvci9ib290c3RyYXAvbWl4aW5zL19mbG9hdC5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fcm9vdC5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fcmVib290LnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL190eXBlLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19pbWFnZXMuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX2NvZGUuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX2dyaWQuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX3RhYmxlcy5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fZm9ybXMuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX2J1dHRvbnMuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX3RyYW5zaXRpb25zLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19kcm9wZG93bi5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19pbnB1dC1ncm91cC5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fY3VzdG9tLWZvcm1zLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19uYXYuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX25hdmJhci5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fY2FyZC5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fYnJlYWRjcnVtYi5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fcGFnaW5hdGlvbi5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fYmFkZ2Uuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX2p1bWJvdHJvbi5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fYWxlcnQuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX3Byb2dyZXNzLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fbGlzdC1ncm91cC5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fY2xvc2Uuc2NzcyIsInZlbmRvci9ib290c3RyYXAvX21vZGFsLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19wb3BvdmVyLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19jYXJvdXNlbC5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC9fdXRpbGl0aWVzLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsInZlbmRvci9ib290c3RyYXAvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC91dGlsaXRpZXMvX2NsZWFyZml4LnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL3V0aWxpdGllcy9fZmxleC5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsInZlbmRvci9ib290c3RyYXAvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwidmVuZG9yL2Jvb3RzdHJhcC91dGlsaXRpZXMvX3RleHQuc2NzcyIsInZlbmRvci9ib290c3RyYXAvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19wcmludC5zY3NzIiwiX2ZvbnRzLnNhc3MiLCJfZ2xvYmFsLnNhc3MiLCJjb21wb25lbnRzL2FydGljbGVzLnNhc3MiLCJjb21wb25lbnRzL2J1dHRvbnMuc2FzcyIsImNvbXBvbmVudHMvY2FyZC5zYXNzIiwiY29tcG9uZW50cy9mb290ZXIuc2FzcyIsImNvbXBvbmVudHMvZm9ybS5zYXNzIiwiY29tcG9uZW50cy9nYXAuc2FzcyIsImNvbXBvbmVudHMvaGVhZGVyLnNhc3MiLCJjb21wb25lbnRzL2luZm8tYm94LnNhc3MiLCJjb21wb25lbnRzL21vZGFsLnNhc3MiLCJjb21wb25lbnRzL25hdi5zYXNzIiwiY29tcG9uZW50cy9waG90by1jb2xsYWdlLnNhc3MiLCJjb21wb25lbnRzL3Rvb3RsdGlwLnNhc3MiLCJjb21wb25lbnRzL3R5cG8uc2FzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi8qICBmcmFtZXdvcmsgKi9cblxuXG4vKiBib290c3RyYXAgc3RhcnQgKi9cbkBpbXBvcnQgXCJ2ZW5kb3IvYm9vdHN0cmFwL2Jvb3RzdHJhcC5zY3NzXCI7XG4vKiBib290c3RyYXAgZW5kICovXG5cbi8qIGZvbnRzIHN0YXJ0ICovXG5AaW1wb3J0IFwiZm9udHNcIjtcbi8qIGZvbnRzIGVuZCAqL1xuXG4vKiBnbG9iYWwgc3RhcnQgKi9cbkBpbXBvcnQgXCJnbG9iYWxcIjtcbi8qIGdsb2JhbCBlbmQgKi9cblxuLyogd2Vic2l0ZSBjb21vbmVudHMgc3RhcnQgKi9cbkBpbXBvcnQgXCJjb21wb25lbnRzL2FydGljbGVzLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2J1dHRvbnMuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY2FyZC5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb290ZXIuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZm9ybS5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9nYXAuc2Fzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaGVhZGVyLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2luZm8tYm94LnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL21vZGFsLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL25hdi5zYXNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9waG90by1jb2xsYWdlLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3Rvb3RsdGlwLnNhc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3R5cG8uc2Fzc1wiO1xuLyogd2Vic2l0ZSBjb21vbmVudHMgZW5kICovXG4iLCIvLyBtYWluIGNvbG9yIHRoZW1lXG4kYm9keS1iZzpcdFx0XHQjZjVmNWY1O1xuJGNvbG9yLW1haW46XHRcdCM0ZDU3NjA7XG4kd2hpdGU6IFx0XHRcdCNmZmY7XG4kYmxhY2s6IFx0XHRcdCMwMDA7XG5cbiRiZy1kYXJrOlx0XHRcdCRjb2xvci1tYWluO1xuJGxpZ2h0LWJnOlx0XHRcdCR3aGl0ZTtcbiRncmV5LWRhcms6XHRcdFx0I2RkZGRkOTtcblxuJGRhbmdlcjpcdFx0XHRcdCNlMzA2MTM7XG4kZGFyazpcdFx0XHRcdFx0JGNvbG9yLW1haW47XG4kZ3JleTpcdFx0XHRcdFx0IzY2NjtcbiRsaWdodC1ncmV5Olx0XHRcdCNiNGI0YjQ7XG5cblxuJGdyaWQtZ3V0dGVyLWRlc2N0b3A6XHRcdDMycHg7XG4kZ3JpZC1ndXR0ZXItdGFibGV0OiBcdFx0MzJweDtcbiRncmlkLWd1dHRlci1tb2Itd2lkdGg6XHRcdDMwcHg7XG4kc3BhY2UtdXNlcjogXHRcdFx0XHQxNnB4O1xuXG4kY29udGFpbmVyLXdpZHRoOiBcdDk3NnB4O1xuXG4vLyBBbmltYXRpb25zIFRpbWVcbiR0cmFuc2l0aW9uLXRpbWU6IDAuM3M7XG5cbiIsIlxuLy8gTUlYSU5TXG5cbkBtaXhpbiBmdygkdmFsdWUpIHtcblx0Zm9udC13ZWlnaHQ6ICR2YWx1ZTsgfVxuXG4vLyByb3VuZGVkIGNvcm5lcnNcbkBtaXhpbiByKCRyYWRpdXMpIHtcblx0Ym9yZGVyLXJhZGl1czogJHJhZGl1czsgfVxuXG5cbi8vIEhPVkVSIEFORCBGT0NVUyBTVEFURVxuQG1peGluIGhmIHtcblx0Jjpob3ZlciwgJjpmb2N1cyB7XG5cdFx0QGNvbnRlbnQ7IH0gfVxuXG4vLyBIb3ZlclxuQG1peGluIGgge1xuXHQmOmhvdmVyIHtcblx0XHRAY29udGVudDsgfSB9XG5cbi8vIEZvY3VzXG5AbWl4aW4gZmMge1xuXHQmOmZvY3VzIHtcblx0XHRAY29udGVudDsgfSB9XG5cbkBtaXhpbiBpbiB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG5AbWl4aW4gaW0ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuQG1peGluIHRzKCR0cmFuc2l0aW9uKSB7XG5cdC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG5cdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uOyB9XG5cbkBtaXhpbiBjdCB7XG5cdGNvbnRlbnQ6ICcnO1xuXHRkaXNwbGF5OiBibG9jazsgfVxuXG5AbWl4aW4gbG4oJGNvbG9ycykge1xuXHRiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkY29sb3JzKTtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCRjb2xvcnMpOyB9XG5cbkBtaXhpbiBsbmwoJGNvbG9ycykge1xuXHRiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkY29sb3JzKTtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkY29sb3JzKTsgfVxuXG5AbWl4aW4gbG5yKCRjb2xvcnMpIHtcblx0YmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmlnaHQsICRjb2xvcnMpO1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgJGNvbG9ycyk7IH1cblxuQG1peGluIHJhZGlhbCgkY29sb3IxLCAkY29sb3IyKSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6ICRjb2xvcjI7XG5cdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KCRjb2xvcjEsICRjb2xvcjIpO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoJGNvbG9yMSwgJGNvbG9yMik7IH1cblxuQG1peGluIHRmKCR2YWx1ZSkge1xuXHQtd2Via2l0LXRyYW5zZm9ybTogJHZhbHVlO1xuXHQtbXMtdHJhbnNmb3JtOiAkdmFsdWU7XG5cdHRyYW5zZm9ybTogJHZhbHVlOyB9XG5cbi8vIE1BSU4gVFJBTlNJVElPTiBFRkZFQ1QgRk9SIENTUyBBTklNQVRJT05TXG5AbWl4aW4gdG0ge1xuXHRAaW5jbHVkZSB0cyhhbGwgJHRyYW5zaXRpb24tdGltZSBlYXNlLW91dCk7IH1cblxuXG4vLyBkb3RzIHdoZW4gdGV4dCBpcyBsb25nZXIgdGhhbiBlbGVtZW50XG5AbWl4aW4gZG90cyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG5cbkBtaXhpbiBteGEge1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi8vIGhvcml6b250YWxseSBjZW50ZXJlZCBlbGVtZW50XG5AbWl4aW4gaGMge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG5AbWl4aW4gYWN0IHtcblx0JjphY3RpdmUsXG5cdCYuYWN0aXZlIHtcblx0XHRAY29udGVudDsgfSB9XG5cbi8vIGFsbCBidXQgbm90IGxhc3RcbkBtaXhpbiBubCB7XG5cdCY6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0QGNvbnRlbnQ7IH0gfVxuXG4vLyBhbGwgYnV0IG5vdCBmaXJzdFxuQG1peGluIG5mIHtcblx0Jjpub3QoOmZpcnN0LWNoaWxkKSB7XG5cdFx0QGNvbnRlbnQ7IH0gfVxuXG4vLyB0aGlzIGxhc3QgY2hpbGRcbkBtaXhpbiBsIHtcblx0JjpsYXN0LWNoaWxkIHtcblx0XHRAY29udGVudDsgfSB9XG5cbi8vIHRoaXMgZmlyc3QgY2hpbGRcbkBtaXhpbiBmIHtcblx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0QGNvbnRlbnQ7XG5cdFx0QGNvbnRlbnQ7IH0gfVxuXG4vLyBpbiB0aGlzIGxhc3QgaXRlbVxuQG1peGluIGxpIHtcblx0KjpsYXN0LWNoaWxkIHtcblx0XHRAY29udGVudDsgfSB9XG5cbi8vIGluIHRoaXMgZmlyc3QgaXRlbVxuQG1peGluIGZpIHtcblx0KjpmaXJzdC1jaGlsZCB7XG5cdFx0QGNvbnRlbnQ7IH0gfVxuXG5AbWl4aW4gYWJzMCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwOyB9XG5cblxuLy8gQlJFQUtQT0lOVFNcblxuQG1peGluIG1pbjE2MDAge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMHB4KSB7XG5cdFx0QGNvbnRlbnQ7IH1cblx0LyptaW4td2lkdGg6IDE2MDBweCBFTkQqLyB9XG5cbkBtaXhpbiBtaW4xMjAwIHtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuXHRcdEBjb250ZW50OyB9XG5cdC8qbWluLXdpZHRoOiAxMjAwcHggRU5EKi8gfVxuXG5AbWl4aW4gbWluMTAyNCB7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcblx0XHRAY29udGVudDsgfVxuXHQvKm1pbi13aWR0aDogMTAyNHB4IEVORCovIH1cblxuQG1peGluIG1pbjk5MiB7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuXHRcdEBjb250ZW50OyB9XG5cdC8qbWluLXdpZHRoOiA5OTJweCBFTkQqLyB9XG5cbkBtaXhpbiBtaW43Njgge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcblx0XHRAY29udGVudDsgfVxuXHQvKm1pbi13aWR0aDogNzY4cHggRU5EKi8gfVxuXG5AbWl4aW4gbWluNjQwIHtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG5cdFx0QGNvbnRlbnQ7IH1cblx0LyptaW4td2lkdGg6IDY0MHB4IEVORCovIH1cblxuQG1peGluIG1pbjU3NiB7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NzZweCkge1xuXHRcdEBjb250ZW50OyB9XG5cdC8qbWluLXdpZHRoOiA1NzZweCBFTkQqLyB9XG5cblxuXG5cbkBtaXhpbiBtYXgxMzY1IHtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNjVweCkge1xuXHRcdEBjb250ZW50OyB9XG5cdC8qbWF4LXdpZHRoOiAxMzY1cHhFTkQqLyB9XG5cbkBtaXhpbiBtYXgxMTk5IHtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuXHRcdEBjb250ZW50OyB9XG5cdC8qbWF4LXdpZHRoOiAxMTk5cHhFTkQqLyB9XG5cbkBtaXhpbiBtYXgxMDIzIHtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuXHRcdEBjb250ZW50OyB9XG5cdC8qbWF4LXdpZHRoOiAxMDIzcHhFTkQqLyB9XG5cbkBtaXhpbiBtYXg5OTEge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcblx0XHRAY29udGVudDsgfVxuXHQvKm1heC13aWR0aDogOTkxcHggRU5EKi8gfVxuXG5AbWl4aW4gbWF4NzY3IHtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG5cdFx0QGNvbnRlbnQ7IH1cblx0LyptYXgtd2lkdGg6IDc2N3B4IEVORCovIH1cblxuQG1peGluIG1heDYzOSB7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuXHRcdEBjb250ZW50OyB9XG5cdC8qbWF4LXdpZHRoOiA2MzlweCBFTkQqLyB9XG5cbkBtaXhpbiBtYXg1NzUge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1cHgpIHtcblx0XHRAY29udGVudDsgfVxuXHQvKm1heC13aWR0aDogNTc1cHggRU5EKi8gfVxuXG5AbWl4aW4gbWF4MzcwIHtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3MHB4KSB7XG5cdFx0QGNvbnRlbnQ7IH1cblx0LyptYXgtd2lkdGg6IDM3MHB4IEVORCovIH1cblxuXG5AbWl4aW4gbWluNzY4LW1heDExOTkge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcblx0XHRAY29udGVudDsgfVxuXHQvKihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSBFTkQqLyB9XG5cbkBtaXhpbiBtaW45OTItbWF4MTE5OSB7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuXHRcdEBjb250ZW50OyB9XG5cdC8qKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIEVORCovIH1cblxuQG1peGluIG1pbjc2OC1tYXg5OTEge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuXHRcdEBjb250ZW50OyB9XG5cdC8qKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkgRU5EKi8gfVxuXG5AbWl4aW4gbWluNjQwLW1heDEwMjMge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcblx0XHRAY29udGVudDsgfVxuXHQvKihtaW4td2lkdGg6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSBFTkQqLyB9XG5cblxuXG5cbi8vIHNlbGVjdGVkIHRleHQgcHJvcGVydGllc1xuQG1peGluIHNlbGVjdGlvbigkY29sb3IpIHtcblx0Ojptb3otc2VsZWN0aW9uIHtcblx0ICAgIGJhY2tncm91bmQ6ICRjb2xvcjsgfVxuXG5cdDo6c2VsZWN0aW9uIHtcblx0ICAgIGJhY2tncm91bmQ6ICRjb2xvcjsgfSB9XG5cbkBtaXhpbiBmeigkZm9udC1zaXplKSB7XG5cdC8qI3skZm9udC1zaXplfXB4Ki9cblx0Zm9udC1zaXplOiAkZm9udC1zaXplICsgcHg7IH1cblxuQG1peGluIGtleXMoJG5hbWUpIHtcblx0QC13ZWJraXQta2V5ZnJhbWVzICN7JG5hbWV9IHtcblx0XHRAY29udGVudDsgfVxuXG5cdEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuXHRcdEBjb250ZW50OyB9IH1cblxuQG1peGluIG53IHtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4vLyBCVVRUT05TXG4vLyBCT09UU1RSQVAgUkVHVUxBUiBCVVRUT05cbkBtaXhpbiBidG4oJG5hbWUsICRjb2xvciwgJGJnQ29sb3IpIHtcblxuXHQuYnRuLSN7JG5hbWV9IHtcblx0XHRjb2xvcjogJGNvbG9yO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xuXHRcdGJvcmRlci1jb2xvcjogJGJnQ29sb3I7IH1cblxuXHQuYnRuLSN7JG5hbWV9OmhvdmVyIHtcblx0XHRjb2xvcjogJGNvbG9yO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmdDb2xvciwgMiUpO1xuXHRcdGJvcmRlci1jb2xvcjogZGFya2VuKCRiZ0NvbG9yLCAyJSk7IH1cblxuXHQuYnRuLSN7JG5hbWV9OmZvY3VzLFxuXHQuYnRuLSN7JG5hbWV9LmZvY3VzLFxuXHQuYnRuLSN7JG5hbWV9OmFjdGl2ZSxcblx0LmJ0bi0jeyRuYW1lfS5hY3RpdmUsXG5cdC5vcGVuID4gLmJ0bi0jeyRuYW1lfS5kcm9wZG93bi10b2dnbGUsXG5cdC5idG4tI3skbmFtZX06YWN0aXZlOmhvdmVyLFxuXHQuYnRuLSN7JG5hbWV9OmFjdGl2ZTpmb2N1cyxcblx0LmJ0bi0jeyRuYW1lfTphY3RpdmUuZm9jdXMsXG5cdC5idG4tI3skbmFtZX0uYWN0aXZlOmhvdmVyLFxuXHQuYnRuLSN7JG5hbWV9LmFjdGl2ZTpmb2N1cyxcblx0LmJ0bi0jeyRuYW1lfS5hY3RpdmUuZm9jdXMsXG5cdC5vcGVuID4gLmJ0bi0jeyRuYW1lfS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG5cdC5vcGVuID4gLmJ0bi0jeyRuYW1lfS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG5cdC5vcGVuID4gLmJ0bi0jeyRuYW1lfS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuXHRcdGNvbG9yOiAkY29sb3I7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZ0NvbG9yLCA0JSk7XG5cdFx0Ym9yZGVyLWNvbG9yOiBkYXJrZW4oJGJnQ29sb3IsIDQlKTsgfVxuXG5cdC5idG4tI3skbmFtZX0uZGlzYWJsZWQ6Zm9jdXMsXG5cdC5idG4tI3skbmFtZX0uZGlzYWJsZWQuZm9jdXMsXG5cdC5idG4tI3skbmFtZX06ZGlzYWJsZWQ6Zm9jdXMsXG5cdC5idG4tI3skbmFtZX06ZGlzYWJsZWQuZm9jdXMge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xuXHRcdGJvcmRlci1jb2xvcjogJGJnQ29sb3I7IH1cblxuXHQuYnRuLSN7JG5hbWV9LmRpc2FibGVkOmhvdmVyLFxuXHQuYnRuLSN7JG5hbWV9OmRpc2FibGVkOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmdDb2xvcjtcblx0XHRib3JkZXItY29sb3I6ICRiZ0NvbG9yOyB9IH1cblxuLy8gQk9PVFNUUkFQIE9VVExJTkUgQlVUVE9OXG5AbWl4aW4gYnRuT3V0bGluZSgkbmFtZSwgJGNvbG9yLCAkaG92ZXJDb2xvcikge1xuXG5cdC5idG4tb3V0bGluZS0jeyRuYW1lfSB7XG5cdFx0Y29sb3I6ICRjb2xvcjtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlci1jb2xvcjogJGNvbG9yOyB9XG5cblx0LmJ0bi1vdXRsaW5lLSN7JG5hbWV9OmhvdmVyIHtcblx0XHRjb2xvcjogJGhvdmVyQ29sb3I7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkaG92ZXJDb2xvcjsgfVxuXG5cdC5idG4tb3V0bGluZS0jeyRuYW1lfTpmb2N1cyxcblx0LmJ0bi1vdXRsaW5lLSN7JG5hbWV9LmZvY3VzIHtcblx0XHRjb2xvcjogJGhvdmVyQ29sb3I7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkaG92ZXJDb2xvcjsgfVxuXG5cdC5idG4tb3V0bGluZS0jeyRuYW1lfTphY3RpdmUsXG5cdC5idG4tb3V0bGluZS0jeyRuYW1lfS5hY3RpdmUsXG5cdC5vcGVuID4gLmJ0bi1vdXRsaW5lLSN7JG5hbWV9LmRyb3Bkb3duLXRvZ2dsZSB7XG5cdFx0Y29sb3I6ICRob3ZlckNvbG9yO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlci1jb2xvcjogJGhvdmVyQ29sb3I7IH1cblxuXHQuYnRuLW91dGxpbmUtI3skbmFtZX06YWN0aXZlOmhvdmVyLFxuXHQuYnRuLW91dGxpbmUtI3skbmFtZX06YWN0aXZlOmZvY3VzLFxuXHQuYnRuLW91dGxpbmUtI3skbmFtZX06YWN0aXZlLmZvY3VzLFxuXHQuYnRuLW91dGxpbmUtI3skbmFtZX0uYWN0aXZlOmhvdmVyLFxuXHQuYnRuLW91dGxpbmUtI3skbmFtZX0uYWN0aXZlOmZvY3VzLFxuXHQuYnRuLW91dGxpbmUtI3skbmFtZX0uYWN0aXZlLmZvY3VzLFxuXHQub3BlbiA+IC5idG4tb3V0bGluZS0jeyRuYW1lfS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG5cdC5vcGVuID4gLmJ0bi1vdXRsaW5lLSN7JG5hbWV9LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcblx0Lm9wZW4gPiAuYnRuLW91dGxpbmUtI3skbmFtZX0uZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcblx0XHRjb2xvcjogZGFya2VuKCRob3ZlckNvbG9yLCA1JSk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyLWNvbG9yOiBkYXJrZW4oJGhvdmVyQ29sb3IsIDUlKTsgfVxuXG5cdC5idG4tb3V0bGluZS0jeyRuYW1lfS5kaXNhYmxlZDpmb2N1cyxcblx0LmJ0bi1vdXRsaW5lLSN7JG5hbWV9LmRpc2FibGVkLmZvY3VzLFxuXHQuYnRuLW91dGxpbmUtI3skbmFtZX06ZGlzYWJsZWQ6Zm9jdXMsXG5cdC5idG4tb3V0bGluZS0jeyRuYW1lfTpkaXNhYmxlZC5mb2N1cyB7XG5cdFx0Ym9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgNSUpOyB9XG5cblx0LmJ0bi1vdXRsaW5lLSN7JG5hbWV9LmRpc2FibGVkOmhvdmVyLFxuXHQuYnRuLW91dGxpbmUtI3skbmFtZX06ZGlzYWJsZWQ6aG92ZXIge1xuXHRcdGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDUlKTsgfSB9XG5cbi8vIHBsYWNlaG9sZGVyXG5AbWl4aW4gcGgoJGNvbG9yKSB7XG5cdGlucHV0LFxuXHR0ZXh0YXJlYSB7XG5cdFx0Jjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0XHRjb2xvcjogJGNvbG9yOyB9XG5cdFx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0XHRjb2xvcjogJGNvbG9yOyB9XG5cdFx0JjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdFx0Y29sb3I6ICRjb2xvcjsgfVxuXHRcdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRcdGNvbG9yOiAkY29sb3I7IH0gfSB9XG5cbi8vIHBsYWNlaG9sZGVyIHRoaXNcbkBtaXhpbiBwaHQoJGNvbG9yKSB7XG5cdCY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiAkY29sb3I7IH1cblx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0Y29sb3I6ICRjb2xvcjsgfVxuXHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0Y29sb3I6ICRjb2xvcjsgfVxuXHQmOjpwbGFjZWhvbGRlciB7XG5cdFx0Y29sb3I6ICRjb2xvcjsgfSB9XG5cbkBtaXhpbiBhIHtcblx0JjphZnRlciB7XG5cdFx0QGNvbnRlbnQ7IH0gfVxuXG5AbWl4aW4gYiB7XG5cdCY6YmVmb3JlIHtcblx0XHRAY29udGVudDsgfSB9XG5cbkBtaXhpbiBhYiB7XG5cdCY6YWZ0ZXIsXG5cdCY6YmVmb3JlIHtcblx0XHRAY29udGVudDsgfSB9XG5cbkBtaXhpbiBoZCB7XG5cdGgxLCAuaDEsIGgyLCAuaDIsIGgzLCAuaDMsIGg0LCAuaDQsIGg1LCAuaDUsIGg2LCAuaDYge1xuXHRcdEBjb250ZW50OyB9IH1cblxuXG5AbWl4aW4gcCgkdmFsdWUpIHtcblx0cGFkZGluZzogJHZhbHVlOyB9XG5cbkBtaXhpbiBweCgkdmFsdWUpIHtcblx0cGFkZGluZy1yaWdodDogJHZhbHVlO1xuXHRwYWRkaW5nLWxlZnQ6ICR2YWx1ZTsgfVxuXG5AbWl4aW4gcHkoJHZhbHVlKSB7XG5cdHBhZGRpbmctdG9wOiAkdmFsdWU7XG5cdHBhZGRpbmctYm90dG9tOiAkdmFsdWU7IH1cblxuQG1peGluIG0oJHZhbHVlKSB7XG5cdG1hcmdpbjogJHZhbHVlOyB9XG5cbkBtaXhpbiBteCgkdmFsdWUpIHtcblx0bWFyZ2luLXJpZ2h0OiAkdmFsdWU7XG5cdG1hcmdpbi1sZWZ0OiAkdmFsdWU7IH1cblxuQG1peGluIG15KCR2YWx1ZSkge1xuXHRtYXJnaW4tdG9wOiAkdmFsdWU7XG5cdG1hcmdpbi1ib3R0b206ICR2YWx1ZTsgfVxuXG5AbWl4aW4gb24ge1xuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lOyB9IH1cblxuXG5cbi8vIGZvbnRzXG5cbkBtaXhpbiBmb250LW1haW4ge1xuXHRmb250LWZhbWlseTogJ1JvYm90byc7IH1cblxuXG5cblxuIiwiLyohXG4gKiBCb290c3RyYXAgdjQuMC4wIChodHRwczovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE4IFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAxOCBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImlucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1dGF0aW5nIHNvdXJjZSBjb2RlIGFjcm9zcyBvdXIgdmFyaWFibGVzLCBtYXBzLCBhbmQgbWl4aW5zLlxuXG4vLyBBc2NlbmRpbmdcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBTdGFydHMgYXQgemVyb1xuLy8gQW5vdGhlciBncmlkIG1peGluIHRoYXQgZW5zdXJlcyB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXApIHtcbiAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluIGAkZ3JpZC1icmVha3BvaW50c2AgbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgfVxufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3RcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yKSB7XG4gICRyOiByZWQoJGNvbG9yKTtcbiAgJGc6IGdyZWVuKCRjb2xvcik7XG4gICRiOiBibHVlKCRjb2xvcik7XG5cbiAgJHlpcTogKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xuXG4gIEBpZiAoJHlpcSA+PSAkeWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkKSB7XG4gICAgQHJldHVybiAkeWlxLXRleHQtZGFyaztcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkeWlxLXRleHQtbGlnaHQ7XG4gIH1cbn1cblxuLy8gUmV0cmlldmUgY29sb3IgU2FzcyBtYXBzXG5AZnVuY3Rpb24gY29sb3IoJGtleTogXCJibHVlXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gdGhlbWUtY29sb3IoJGtleTogXCJwcmltYXJ5XCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gZ3JheSgka2V5OiBcIjEwMFwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkZ3JheXMsICRrZXkpO1xufVxuXG4vLyBSZXF1ZXN0IGEgdGhlbWUgY29sb3IgbGV2ZWxcbkBmdW5jdGlvbiB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3ItbmFtZTogXCJwcmltYXJ5XCIsICRsZXZlbDogMCkge1xuICAkY29sb3I6IHRoZW1lLWNvbG9yKCRjb2xvci1uYW1lKTtcbiAgJGNvbG9yLWJhc2U6IGlmKCRsZXZlbCA+IDAsICMwMDAsICNmZmYpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG5cbi8vXG4vLyBDb2xvciBzeXN0ZW1cbi8vXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4kZ3JheXM6IG1hcC1tZXJnZSgoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbiksICRncmF5cyk7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbiRjb2xvcnM6IG1hcC1tZXJnZSgoXG4gIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4pLCAkY29sb3JzKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKChcbiAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICBcImluZm9cIjogICAgICAgJGluZm8sXG4gIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFya1xuKSwgJHRoZW1lLWNvbG9ycyk7XG4vLyBzdHlsZWxpbnQtZW5hYmxlXG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuJHNwYWNlcnM6IG1hcC1tZXJnZSgoXG4gIDA6IDAsXG4gIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgMjogKCRzcGFjZXIgKiAuNSksXG4gIDM6ICRzcGFjZXIsXG4gIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgNTogKCRzcGFjZXIgKiAzKVxuKSwgJHNwYWNlcnMpO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuJHNpemVzOiBtYXAtbWVyZ2UoKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbiksICRzaXplcyk7XG4vLyBzdHlsZWxpbnQtZW5hYmxlXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cyk7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIEZvbnRzXG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAuODc1KSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAgICAgIDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAgICAgIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkZ3JheS05MDAsIDcuNSUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0KSArICgkaW5wdXQtYnRuLXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lci1zbTogICAgICAgICAgICAgICAgICgkZm9udC1zaXplLXNtICogJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1zbX0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXItbGc6ICAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1sZyAqICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcpICsgKCRpbnB1dC1idG4tcGFkZGluZy15LWxnICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItbGd9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14OiAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2IDIuOTc0IDcuMjUgOCAyLjE5M3onLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDQnJTNFJTNDcGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM0UlM0NjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA1JyUzRSUzQ3BhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSksIDAgMCA1cHggcmdiYSgkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3IsIC41KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgNzUlICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgMTI1JSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgKCRzcGFjZXIgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgY2FsYygjeyRjYXJkLWJvcmRlci1yYWRpdXN9IC0gI3skY2FyZC1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAuNzUpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgLjUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNS0yLjUtMi41IDIuNS0yLjUtMS41LTEuNXonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNMi43NSAwbC0xLjUgMS41IDIuNSAyLjUtMi41IDIuNSAxLjUgMS41IDQtNC00LTR6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBUb2dnbGVzXG4vL1xuLy8gVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIGNlcnRhaW4gdGhlbWUgZmVhdHVyZXMuXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9icmVha3BvaW50c1wiO1xuQGltcG9ydCBcIm1peGlucy9ob3ZlclwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9iYWRnZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2NyZWVuLXJlYWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWhpZGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC10cnVuY2F0ZVwiO1xuQGltcG9ydCBcIm1peGlucy92aXNpYmlsaXR5XCI7XG5cbi8vIC8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9jYXJldFwiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3RzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIC8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcblxuLy8gLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG4vLyBAaW1wb3J0IFwibWl4aW5zL25hdmJhci1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zsb2F0XCI7XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAycHgsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBpbmRlbnRhdGlvblxuXG4vLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdhbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcbi8vIGRlc2lnbmVkIHRvIHByZXZlbnQgYDpob3ZlcmAgc3RpY2tpbmVzcyBvbiBpT1PigJRhbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzdWVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlciB7XG4gICY6aG92ZXIgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBpbmRlbnRhdGlvbiwgbWVkaWEtcXVlcnktbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICAmW2hyZWZdIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbn1cbiIsIi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgfVxufVxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tYmxvY2stbm8tZHVwbGljYXRlLXByb3BlcnRpZXNcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBWaXNpYmlsaXR5XG5cbkBtaXhpbiBpbnZpc2libGUoJHZpc2liaWxpdHkpIHtcbiAgdmlzaWJpbGl0eTogJHZpc2liaWxpdHkgIWltcG9ydGFudDtcbn1cbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGJvcmRlciwgLjUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRib3JkZXIsIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRib3JkZXIsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yLCAkY29sb3ItaG92ZXI6IGNvbG9yLXlpcSgkY29sb3IpLCAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvciwgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0IHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0IHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC13aWR0aCAqIC44NTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bjtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtd2lkdGggKiAuODU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtd2lkdGggKiAuODU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogI2U1ZTVlNSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogKCRzcGFjZXIgLyAyKSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoKSB7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IpIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tZmVlZGJhY2stZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6IC41cmVtO1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgLjgpO1xuICAgIGJvcmRlci1yYWRpdXM6IC4ycmVtO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCxcbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMjUlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkYm9keS1iZywgMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7IGJvcmRlci1jb2xvcjogaW5oZXJpdDsgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciB7XG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuIiwiQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4OyAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuICAgIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICB9XG4gICAgfVxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiBub25lOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1yb3coKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gLTIpO1xuICBtYXJnaW4tbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIC0yKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7IC8vIFByZXZlbnQgY29sbGFwc2luZ1xuICBwYWRkaW5nLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06ICRzaXplIC8gJGNvbHVtbnM7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBtaXhpbiBmbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cbkBtaXhpbiBmbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuQG1peGluIGZsb2F0LW5vbmUge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgYXQtcnVsZS1uby12ZW5kb3ItcHJlZml4LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gU2V0dGluZyBAdmlld3BvcnQgY2F1c2VzIHNjcm9sbGJhcnMgdG8gb3ZlcmxhcCBjb250ZW50IGluIElFMTEgYW5kIEVkZ2UsIHNvXG4vLyAgICB3ZSBmb3JjZSBhIG5vbi1vdmVybGFwcGluZywgbm9uLWF1dG8taGlkaW5nIHNjcm9sbGJhciB0byBjb3VudGVyYWN0LlxuLy8gNi4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjsgLy8gNVxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IC8vIDZcbn1cblxuLy8gSUUxMCsgZG9lc24ndCBob25vciBgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCI+YCBpbiBzb21lIGNhc2VzLlxuQGF0LXJvb3Qge1xuICBALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2VycylcbmFydGljbGUsIGFzaWRlLCBkaWFsb2csIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2UgdGhlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIFN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lIG9uIGVsZW1lbnRzIHRoYXQgY2Fubm90IGJlIGFjY2Vzc2VkIHZpYSBrZXlib2FyZC5cbi8vIFRoaXMgcHJldmVudHMgYW4gdW53YW50ZWQgZm9jdXMgb3V0bGluZSBmcm9tIGFwcGVhcmluZyBhcm91bmQgZWxlbWVudHMgdGhhdFxuLy8gbWlnaHQgc3RpbGwgcmVzcG9uZCB0byBwb2ludGVyIGV2ZW50cy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2Vcblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyA0XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gMVxufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy1cbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgZm9udC13ZWlnaHQtbm90YXRpb25cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZvbnQtd2VpZ2h0LW5vdGF0aW9uXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy9cbi8vIExpbmtzXG4vL1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8vIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZilcbi8vIHdoaWNoIGhhdmUgbm90IGJlZW4gbWFkZSBleHBsaWNpdGx5IGtleWJvYXJkLWZvY3VzYWJsZSAod2l0aG91dCB0YWJpbmRleCkuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgZm9udC1mYW1pbHktbm8tZHVwbGljYXRlLW5hbWVzXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgZm9udC1zaXplOiAxZW07IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cbi8vIHN0eWxlbGludC1lbmFibGUgZm9udC1mYW1pbHktbm8tZHVwbGljYXRlLW5hbWVzXG5cbnByZSB7XG4gIC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuICBtYXJnaW4tdG9wOiAwO1xuICAvLyBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8vIFdlIGhhdmUgQHZpZXdwb3J0IHNldCB3aGljaCBjYXVzZXMgc2Nyb2xsYmFycyB0byBvdmVybGFwIGNvbnRlbnQgaW4gSUUxMSBhbmQgRWRnZSwgc29cbiAgLy8gd2UgZm9yY2UgYSBub24tb3ZlcmxhcHBpbmcsIG5vbi1hdXRvLWhpZGluZyBzY3JvbGxiYXIgdG8gY291bnRlcmFjdC5cbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG4vL1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxufVxuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIEhpZGUgdGhlIG92ZXJmbG93IGluIElFXG59XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbnRoIHtcbiAgLy8gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBmcm9tIHRoZSBgPGJvZHk+YCwgb3IgdGhlXG4gIC8vIGNsb3Nlc3QgcGFyZW50IHdpdGggYSBzZXQgYHRleHQtYWxpZ25gLlxuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBXb3JrIGFyb3VuZCBhIEZpcmVmb3gvSUUgYnVnIHdoZXJlIHRoZSB0cmFuc3BhcmVudCBgYnV0dG9uYCBiYWNrZ3JvdW5kXG4vLyByZXN1bHRzIGluIGEgbG9zcyBvZiB0aGUgZGVmYXVsdCBgYnV0dG9uYCBmb2N1cyBzdHlsZXMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlL1xuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgYXBwZWFyYW5jZSBvZiB0ZW1wb3JhbCBpbnB1dHMgdG8gYXZvaWQgYSBNb2JpbGUgU2FmYXJpXG4gIC8vIGJ1ZyB3aGVyZSBzZXR0aW5nIGEgY3VzdG9tIGxpbmUtaGVpZ2h0IHByZXZlbnRzIHRleHQgZnJvbSBiZWluZyB2ZXJ0aWNhbGx5XG4gIC8vIGNlbnRlcmVkIHdpdGhpbiB0aGUgaW5wdXQuXG4gIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4gIC8vIGFuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExMjY2XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveDtcbn1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgLy8gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIC8vIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuICAvLyBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4gIC8vIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbiAgbWluLXdpZHRoOiAwO1xuICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxufVxuXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4vL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxufVxuXG4vL1xuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG4vL1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUVcbn1cblxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZSAoZnJvbSBQdXJlQ1NTKS5cbi8vIE5lZWRlZCBmb3IgcHJvcGVyIGRpc3BsYXkgaW4gSUUgMTAtLlxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBmb250LXNpemU6ICRoMS1mb250LXNpemU7IH1cbmgyLCAuaDIgeyBmb250LXNpemU6ICRoMi1mb250LXNpemU7IH1cbmgzLCAuaDMgeyBmb250LXNpemU6ICRoMy1mb250LXNpemU7IH1cbmg0LCAuaDQgeyBmb250LXNpemU6ICRoNC1mb250LXNpemU7IH1cbmg1LCAuaDUgeyBmb250LXNpemU6ICRoNS1mb250LXNpemU7IH1cbmg2LCAuaDYgeyBmb250LXNpemU6ICRoNi1mb250LXNpemU7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXkxLXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgZm9udC1zaXplOiAkZGlzcGxheTItc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBmb250LXNpemU6ICRkaXNwbGF5My1zaXplO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXk0LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDgwJTsgLy8gYmFjayB0byBkZWZhdWx0IGZvbnQtc2l6ZVxuICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNCBcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQ7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQ7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogKCRzcGFjZXIgLyAyKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIElubGluZSBhbmQgYmxvY2sgY29kZSBzdHlsZXNcbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG59XG5cbi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAka2JkLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cbn1cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aCAxMDAlIHdpZHRoIGZvclxuLy8gZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxufVxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7IC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyZWQgdmVyc2lvblxuLy9cbi8vIEFkZCBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTAwNTdcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIFRleHR1YWwgZm9ybSBjb250cm9sc1xuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIC8vIE1hbnVhbGx5IHVzZSB0aGUgaWYvZWxzZSBpbnN0ZWFkIG9mIHRoZSBtaXhpbiB0byBhY2NvdW50IGZvciBpT1Mgb3ZlcnJpZGVcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgLy8gT3RoZXJ3aXNlIHVuZG8gdGhlIGlPUyBkZWZhdWx0XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoKTtcblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJjpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSkge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICY6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgLy8gU3VwcHJlc3MgdGhlIG5lc3RlZCBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLCBhcyBpdCBsb29rcyBiYWQgYW5kIGNhbm5vdCBiZSBtYWRlIHRvXG4gICAgLy8gbWF0Y2ggdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIG5hdGl2ZSB3aWRnZXQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIH1cbn1cblxuLy8gTWFrZSBmaWxlIGlucHV0cyBiZXR0ZXIgbWF0Y2ggdGV4dCBpbnB1dHMgYnkgZm9yY2luZyB0aGVtIHRvIG5ldyBsaW5lcy5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuLy9cbi8vIExhYmVsc1xuLy9cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zaXplOiBpbmhlcml0OyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1sZ30gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1zbX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG59XG5cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFRoZSBgLmZvcm0tZ3JvdXAtKiBmb3JtLWNvbnRyb2xgIHZhcmlhdGlvbnMgYXJlIHNhZGx5IGR1cGxpY2F0ZWQgdG8gYXZvaWQgdGhlXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wtc20ge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wtbGcge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xufVxuXG5cbi8vIEZvcm0gZ3JpZFxuLy9cbi8vIFNwZWNpYWwgcmVwbGFjZW1lbnQgZm9yIG91ciBncmlkIHN5c3RlbSdzIGAucm93YCBmb3IgdGlnaHRlciBmb3JtIGxheW91dHMuXG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICBtYXJnaW4tbGVmdDogLTVweDtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcInZhbGlkXCIsICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yKTtcbkBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcImludmFsaWRcIiwgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcik7XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRmb250LXNpemUtYmFzZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gIC8vIFNoYXJlIGhvdmVyIGFuZCBmb2N1cyBzdHlsZXNcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIC5idG4gZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkYnRuLWxpbmUtaGVpZ2h0LWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4uZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJi5zaG93IHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gICYuc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxudHIge1xuICAmLmNvbGxhcHNlLnNob3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgfVxufVxuXG50Ym9keSB7XG4gICYuY29sbGFwc2Uuc2hvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7IC8vIFJlZGVjbGFyZSBiZWNhdXNlIG5lc3RpbmcgY2FuIGNhdXNlIGluaGVyaXRhbmNlIGlzc3Vlc1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wcmlnaHQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHJpZ2h0KTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BsZWZ0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQobGVmdCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZyk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5idG4tZ3JvdXAsXG4gIC5idG4tZ3JvdXAgKyAuYnRuLFxuICAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICA+IC5idG46Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgLmJ0bixcbiAgLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi5idG4tZ3JvdXAtdG9nZ2xlIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgLy8gQWRkIHdpZHRoIDElIGFuZCBmbGV4LWJhc2lzIGF1dG8gdG8gZW5zdXJlIHRoYXQgYnV0dG9uIHdpbGwgbm90IHdyYXAgb3V0XG4gICAgLy8gdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRSBFZGdlKyBhbmQgRmlyZWZveC4gQ2hyb21lIGRvZXMgbm90IHJlcXVpcmUgdGhpcy5cbiAgICB3aWR0aDogMSU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmJlZm9yZSB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YmVmb3JlIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHsgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7IG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBAZXh0ZW5kIC5mb3JtLWNvbnRyb2wtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBAZXh0ZW5kIC5mb3JtLWNvbnRyb2wtc207XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuIiwiLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogKDFyZW0gKiAkbGluZS1oZWlnaHQtYmFzZSk7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tY29udHJvbC1zcGFjZXIteDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHN1ZWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCgkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyKTtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoKCRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDIpO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXNcbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgY2hlY2tib3hlcy5cblxuLmN1c3RvbS1jaGVja2JveCB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgICAmOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhZGlvc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciByYWRpb3MuXG5cbi5jdXN0b20tcmFkaW8ge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHA6Ly9wcmltZXJjc3MuaW8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmcgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yIG5vLXJlcGVhdCByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRjdXN0b20tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgZm9udC1zaXplOiAkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc207XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk7XG4gIGZvbnQtc2l6ZTogJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbGFuZywgJHZhbHVlIGluICRjdXN0b20tZmlsZS10ZXh0IHtcbiAgICAmOmxhbmcoI3skbGFuZ30pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBjb250ZW50OiAkdmFsdWU7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGNhbGMoI3skY3VzdG9tLWZpbGUtaGVpZ2h0fSAtICN7JGN1c3RvbS1maWxlLWJvcmRlci13aWR0aH0gKiAyKTtcbiAgICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gICAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBjb250ZW50OiBcIkJyb3dzZVwiO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tZmlsZS1idXR0b24tYmcpO1xuICAgIGJvcmRlci1sZWZ0OiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMgb3IgYDx1bD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0XG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJpdGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbmF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCAubmF2YmFyLXRvZ2dsZXIgZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudS1yaWdodCB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gYC5kcm9wZG93bi1tZW51YFxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7ICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuZHJvcHVwIHtcbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZztcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSgkY2FyZC1zcGFjZXIteSAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxuXG4gICsgLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcbiAgbWFyZ2luLWxlZnQ6IC0oJGNhcmQtc3BhY2VyLXggLyAyKTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG4gIG1hcmdpbi1sZWZ0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG59XG5cbi5jYXJkLWltZyB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENhcmQgaW1hZ2UgY2Fwc1xuLmNhcmQtaW1nLXRvcCB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjNC1mbGV4LXNob3J0aGFuZC1kZWNsYXJhdGlvbnMtd2l0aC11bml0bGVzcy1mbGV4LWJhc2lzLXZhbHVlcy1hcmUtaWdub3JlZFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZ3JvdXAtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyM0LWZsZXgtc2hvcnRoYW5kLWRlY2xhcmF0aW9ucy13aXRoLXVuaXRsZXNzLWZsZXgtYmFzaXMtdmFsdWVzLWFyZS1pZ25vcmVkXG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpvbmx5LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpub3QoOm9ubHktY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWhlYWRlcixcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29sdW1uc1xuLy9cblxuLmNhcmQtY29sdW1ucyB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1jb2x1bW5zLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBjb2x1bW4tY291bnQ6ICRjYXJkLWNvbHVtbnMtY291bnQ7XG4gICAgY29sdW1uLWdhcDogJGNhcmQtY29sdW1ucy1nYXA7XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIERvbid0IGxldCB0aGVtIHZlcnRpY2FsbHkgc3BhbiBtdWx0aXBsZSBjb2x1bW5zXG4gICAgICB3aWR0aDogMTAwJTsgLy8gRG9uJ3QgbGV0IHRoZWlyIHdpZHRoIGNoYW5nZVxuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRicmVhZGNydW1iLW1hcmdpbi1ib3R0b207XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gU3VwcHJlc3MgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvciBpbiBtb2Rlcm4gYnJvd3NlcnNcbiAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgY29udGVudDogXCIjeyRicmVhZGNydW1iLWRpdmlkZXJ9XCI7XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtYXJnaW4tbGVmdDogLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBib3JkZXI6ICRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIC5wYWdlLWxpbmsgZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gT3BpbmlvbmF0ZWQ6IHJlbW92ZSB0aGUgXCJoYW5kXCIgY3Vyc29yIHNldCBwcmV2aW91c2x5IGZvciAucGFnZS1saW5rXG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJGJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkYmFkZ2UtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpICRqdW1ib3Ryb24tcGFkZGluZztcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogKCRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMik7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmFsZXJ0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJvcmRlci1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWNvbG9yLWxldmVsKSk7XG4gIH1cbn1cbiIsIkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGZvbnQtc2l6ZTogJHByb2dyZXNzLWZvbnQtc2l6ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc7XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xuICBtYXJnaW4tYm90dG9tOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2FjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogJGNsb3NlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIG9wYWNpdHk6IC41O1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiAuNzU7XG4gIH1cblxuICAvLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgLmNsb3NlIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXgsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuLy8gc3R5bGVsaW50LWVuYWJsZVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxuXG4gIC5tb2RhbC1vcGVuICYge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjUlKTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gKCN7JG1vZGFsLWRpYWxvZy1tYXJnaW59ICogMikpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nKSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZykgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gc2hvdWxkIHRoZXJlIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG5cbiAgLy8gRWFzaWx5IHBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7IG1hcmdpbi1sZWZ0OiAuMjVyZW07IH1cbiAgPiA6bm90KDpsYXN0LWNoaWxkKSB7IG1hcmdpbi1yaWdodDogLjI1cmVtOyB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gKCN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cH0gKiAyKSk7XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG5cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcgeyBtYXgtd2lkdGg6ICRtb2RhbC1sZzsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBmb250LXNpemU6ICRwb3BvdmVyLWZvbnQtc2l6ZTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJGJvcmRlci1yYWRpdXMtbGc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlLFxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUge1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgfVxuXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJGJvcmRlci1yYWRpdXMtbGcgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgbGVmdDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgdG9wOiBjYWxjKCgjeyRwb3BvdmVyLWFycm93LWhlaWdodH0gKyAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICogLTEpO1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAtMik7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiBjYWxjKCgjeyRwb3BvdmVyLWFycm93LWhlaWdodH0gKyAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICogLTEpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRib3JkZXItcmFkaXVzLWxnIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlLFxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgfVxuXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgJG9mZnNldC1ib3JkZXItd2lkdGg6IGNhbGMoI3skYm9yZGVyLXJhZGl1cy1sZ30gLSAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkb2Zmc2V0LWJvcmRlci13aWR0aCk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBlcnNwZWN0aXZlOiAxMDAwcHg7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG59XG5cbi8vIENTUzMgdHJhbnNmb3JtcyB3aGVuIHN1cHBvcnRlZCBieSB0aGUgYnJvd3NlclxuLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cbiAgQHN1cHBvcnRzICh0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuXG4gIEBzdXBwb3J0cyAodHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZCkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldixcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcblxuICBAc3VwcG9ydHMgKHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICAvLyBXZSBjYW4ndCBoYXZlIGEgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXG4gIC8vIGFuaW1hdGlvbiBpZiB5b3UgdHJpcCB0aGlzIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciBhbmltYXRpb24uXG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAuOTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsIDAsIDAsIC4yNSksIHJnYmEoMCwgMCwgMCwgLjAwMSkpO1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAuMjUpLCByZ2JhKDAsIDAsIDAsIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZztcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZztcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gb3ZlcnJpZGUgPG9sPiBkZWZhdWx0XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZywgLjUpO1xuXG4gICAgLy8gVXNlIHBzZXVkbyBjbGFzc2VzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xMHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQGltcG9ydCBcInV0aWxpdGllcy9hbGlnblwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9iYWNrZ3JvdW5kXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2JvcmRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZGlzcGxheVwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9lbWJlZFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9mbGV4XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2Zsb2F0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NjcmVlbnJlYWRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2l6aW5nXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NwYWNpbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdGV4dFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy92aXNpYmlsaXR5XCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmQjeyRpbmZpeH0tbm9uZSAgICAgICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0taW5saW5lICAgICAgIHsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWJsb2NrICAgICAgICB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZSAgICAgICAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tdGFibGUtcm93ICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZS1jZWxsICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1mbGV4ICAgICAgICAgeyBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtZmxleCAgeyBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIC5kLXByaW50LW5vbmUgICAgICAgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUgICAgICAgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1ibG9jayAgICAgICAgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LXRhYmxlICAgICAgICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUtcm93ICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUtY2VsbCAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWZsZXggICAgICAgICB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtZmxleCAgeyBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMjFieTkge1xuICAmOjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDkgLyAyMSk7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMTZieTkge1xuICAmOjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDkgLyAxNik7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoMyAvIDQpO1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTFieTEge1xuICAmOjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDEgLyAxKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCJAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBAaW5jbHVkZSBmbG9hdC1sZWZ0OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgQGluY2x1ZGUgZmxvYXQtcmlnaHQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBAaW5jbHVkZSBmbG9hdC1ub25lOyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb21tb24gdmFsdWVzXG5cbi8vIFNhc3MgbGlzdCBub3QgaW4gdmFyaWFibGVzIHNpbmNlIGl0J3Mgbm90IGludGVuZGVkIGZvciBjdXN0b21pemF0aW9uLlxuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3k7XG5cbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuXG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGU7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgpO1xufVxuIiwiLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIEBpbmNsdWRlIGludmlzaWJsZSh2aXNpYmxlKTtcbn1cblxuLmludmlzaWJsZSB7XG4gIEBpbmNsdWRlIGludmlzaWJsZShoaWRkZW4pO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHA6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmICRlbmFibGUtcHJpbnQtc3R5bGVzIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgb3V0IGBjb2xvcmAgYW5kIGBiYWNrZ3JvdW5kYFxuICAgICAgLy9jb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBodHRwOi8vd3d3LnNhbmJlaWppLmNvbS9hcmNoaXZlcy85NTNcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOm5vdCguYnRuKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xuICAgIC8vICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAvL31cblxuICAgIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICAvL1xuXG4gICAgLy9hW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcbiAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgIC8vfVxuXG4gICAgcHJlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgIzk5OTsgICAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gUHJpbnRpbmcgVGFibGVzOlxuICAgIC8vIGh0dHA6Ly9jc3MtZGlzY3Vzcy5pbmN1dGlvLmNvbS93aWtpL1ByaW50aW5nX1RhYmxlc1xuICAgIC8vXG5cbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIFNwZWNpZnkgYSBzaXplIGFuZCBtaW4td2lkdGggdG8gbWFrZSBwcmludGluZyBjbG9zZXIgYWNyb3NzIGJyb3dzZXJzLlxuICAgIC8vIFdlIGRvbid0IHNldCBtYXJnaW4gaGVyZSBiZWNhdXNlIGl0IGJyZWFrcyBgc2l6ZWAgaW4gQ2hyb21lLiBXZSBhbHNvXG4gICAgLy8gZG9uJ3QgdXNlIGAhaW1wb3J0YW50YCBvbiBgc2l6ZWAgYXMgaXQgYnJlYWtzIGluIENocm9tZS5cbiAgICBAcGFnZSB7XG4gICAgICBzaXplOiAkcHJpbnQtcGFnZS1zaXplO1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAgIC5uYXZiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAjMDAwO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxuICB9XG59XG4iLCJAZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuXHRzcmM6IHVybCguLi9mb250cy9Sb2JvdG8tTGlnaHQud29mZik7XG5cdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuXHRzcmM6IHVybCguLi9mb250cy9Sb2JvdG8tUmVndWxhci53b2ZmKTtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0Zm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogJ1JvYm90byc7XG5cdHNyYzogdXJsKC4uL2ZvbnRzL1JvYm90by1Cb2xkLndvZmYpO1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcblx0c3JjOiB1cmwoLi4vZm9udHMvUm9ib3RvLUJsYWNrLndvZmYpO1xuXHRmb250LXdlaWdodDogOTAwO1xuXHRmb250LXN0eWxlOiBub3JtYWw7IH1cbiIsImJvZHkge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbi1yaWdodDogYXV0bztcblx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdEBpbmNsdWRlIGZvbnQtbWFpbjtcblx0QGluY2x1ZGUgZncoMzAwKTtcblx0QGluY2x1ZGUgZnooMTUpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcblx0Y29sb3I6ICRjb2xvci1tYWluOyB9XG5cbmh0bWwsXG5ib2R5IHtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubm93cmFwIHtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4udHR1IHtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4udHRuIHtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxub2wsIHVsIHtcblx0cGFkZGluZy1sZWZ0OiAwO1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLWxpc3Qge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRsaSB7XG5cdFx0cGFkZGluZy1sZWZ0OiA3cHg7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIGIge1xuXHRcdFx0QGluY2x1ZGUgY3Q7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDdweDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR3aWR0aDogM3B4O1xuXHRcdFx0aGVpZ2h0OiAzcHg7XG5cdFx0XHRAaW5jbHVkZSByKDUwJSk7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbWFpbjsgfSB9XG5cdHAge1xuXHRcdG1hcmdpbi1ib3R0b206IDJweDsgfSB9XG5cbi5wYWdlLXdyYXAge1xuXHRwYWRkaW5nLXRvcDogMjVweDtcblx0cGFkZGluZy1ib3R0b206IDI1cHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMTBweCAtIDEyMHB4KTtcblx0QGluY2x1ZGUgbWF4OTkxIHtcblx0XHRtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTEwcHggLSA4MHB4KTsgfVxuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdHBhZGRpbmctYm90dG9tOiAzMHB4OyB9IH1cblxuLy8gLnBhZ2UtaW5uZXJcbi8vIFx0cGFkZGluZy10b3A6IDM1cHhcblxuLy8gLnBhZ2UtZ2VuZXJhbFxuLy8gXHRwYWRkaW5nLXRvcDogMjVweFxuXG4uYXNpZGUge1xuXHRmbGV4OiAwIDAgMjUycHg7XG5cdHdpZHRoOiAyNTJweDtcblx0QGluY2x1ZGUgcHgoJGdyaWQtZ3V0dGVyLWRlc2N0b3AgLyAyKTtcblx0ei1pbmRleDogNTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdGZsZXg6IDAgMCAyMjBweDtcblx0XHR3aWR0aDogMjIwcHg7IH1cblx0QGluY2x1ZGUgbWF4NTc1IHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0d2lkdGg6IGF1dG87IH1cblx0QGluY2x1ZGUgbWluNTc2IHtcblx0XHRvcmRlcjogMTsgfSB9XG5cbi5tYWluLWNvbnRlbnQge1xuXHR3aWR0aDogY2FsYygxMDAlIC0gMjkwcHgpO1xuXHRAaW5jbHVkZSBweCgkZ3JpZC1ndXR0ZXItZGVzY3RvcCAvIDIpO1xuXHRwYWRkaW5nLWxlZnQ6IDU2cHg7XG5cdEBpbmNsdWRlIG1heDk5MSB7XG5cdFx0cGFkZGluZy1sZWZ0OiAoJGdyaWQtZ3V0dGVyLWRlc2N0b3AgLyAyKTsgfVxuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdHdpZHRoOiBjYWxjKDEwNSUgLSAyMjBweCk7XG5cdFx0cGFkZGluZy1sZWZ0OiAwOyB9XG5cdEBpbmNsdWRlIG1heDU3NSB7XG5cdFx0cGFkZGluZy1sZWZ0OiAxNXB4O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAxMDAlOyB9XG5cdEBpbmNsdWRlIG1pbjU3NiB7XG5cdFx0b3JkZXI6IDI7IH0gfVxuXG4ud2hpdGUtd3JhcCB7XG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0QGluY2x1ZGUgcHgoMjVweCk7XG5cdEBpbmNsdWRlIHB5KDIwcHgpOyB9XG5cblxuXG5cblxuIiwiLyogYXJ0aWNsZXMgc3RhcnQgKi9cblxuLnBvc3Qge1xuXHRjb2xvcjogJGNvbG9yLW1haW47XG5cdGgzIHtcblx0XHRzbWFsbCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jazsgfSB9IH1cblxuLyogYXJ0aWNsZXMgZW5kICovXG5cbiIsIi8qIGJ1dHRvbnMgc3RhcnQgKi9cbi5idG4ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDE7XG5cdEBpbmNsdWRlIGZ6KDE2KTtcblx0QGluY2x1ZGUgZm9udC1tYWluO1xuXHRAaW5jbHVkZSBmdyg3MDApO1xuXHRAaW5jbHVkZSBweCgyNXB4KTtcblx0bGluZS1oZWlnaHQ6IDEuMjtcblx0QGluY2x1ZGUgcHkoOHB4KTtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXHRAaW5jbHVkZSB0bTtcblx0QGluY2x1ZGUgaCB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdEBpbmNsdWRlIHRtOyB9XG5cdEBpbmNsdWRlIGYge1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdG91dGxpbmU6IG5vbmU7IH0gfVxuXG5cbi50ZXh0LWxpbmsge1xuXHRjb2xvcjogJGNvbG9yLW1haW47XG5cdEBpbmNsdWRlIHRtO1xuXHRAaW5jbHVkZSBoIHtcblx0XHRjb2xvcjogJGNvbG9yLW1haW47XG5cdFx0QGluY2x1ZGUgdG07IH0gfVxuXG4vKiBidXR0b25zIGVuZCAqL1xuXG5cblxuIiwiLyogc2VjdGlvbi10ZWFtIHN0YXJ0ICovXG5cbi5wcm9kdWN0LWNhcmQtd3JhcCB7XG5cdEBpbmNsdWRlIG14KC0zcHgpO1xuXHRAaW5jbHVkZSBhIHtcblx0XHRAaW5jbHVkZSBjdDtcblx0XHRjbGVhcjogYm90aDsgfSB9XG5cbi5wcm9kdWN0LWNhcmQge1xuXHRAaW5jbHVkZSBweCgzcHgpO1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luLWJvdHRvbTogNnB4O1xuXHQuY2FyZC1pdGVtLXdyYXAge1xuXHRcdHdpZHRoOiAxNDBweDtcblx0XHRwYWRkaW5nLXRvcDogODclO1xuXHRcdGhlaWdodDogMDsgfSB9XG5cblxuLmNhcmQtaXRlbS13cmFwIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0QGluY2x1ZGUgaCB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdC5wcm9kdWN0LWNhcmQtaW1nIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xuXHRcdFx0QGluY2x1ZGUgYSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcblx0XHRcdFx0QGluY2x1ZGUgdG07IH0gfSB9XG5cblx0LnByb2R1Y3QtY2FyZC1pbWcge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHRAaW5jbHVkZSB0Zih0cmFuc2xhdGUoLTUwJSwgLTUwJSkpO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRAaW5jbHVkZSBhIHtcblx0XHRcdEBpbmNsdWRlIGN0O1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ei1pbmRleDogMztcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcblx0XHRcdEBpbmNsdWRlIHRtOyB9XG5cdFx0aW1nIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWluLXdpZHRoOiAxMDAlO1xuXHRcdFx0bWluLWhlaWdodDogMTAwJTsgfSB9XG5cdC5jYXB0dXJlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0ei1pbmRleDogNDtcblx0XHRAaW5jbHVkZSBmeigyNik7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHRAaW5jbHVkZSBmb250LW1haW47XG5cdFx0QGluY2x1ZGUgZncoMzAwKTtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdHRleHQtc2hhZG93OiAwIDBweCAxMHB4ICMwMDA7XG5cdFx0cGFkZGluZy10b3A6IDVweDtcblx0XHRAaW5jbHVkZSBweCgzcHgpO1xuXHRcdHNwYW4ge1xuXHRcdFx0QGV4dGVuZCAuZC1ibG9jaztcblx0XHRcdEBleHRlbmQgLnRleHQtY2VudGVyO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7IH0gfSB9XG5cbi5wcm9kdWN0LWNhcmQtbGFyZ2Uge1xuXHR3aWR0aDogMzMuMzMlO1xuXHRAaW5jbHVkZSBtYXgzNzAge1xuXHRcdHdpZHRoOiAxMDAlOyB9XG5cdC5jYXJkLWl0ZW0td3JhcCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cGFkZGluZy1ib3R0b206IDExMiU7XG5cdFx0QGluY2x1ZGUgbWF4MzcwIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA0MCU7IH0gfVxuXHQuY2FwdHVyZSB7XG5cdFx0cGFkZGluZy10b3A6IDEwcHg7XG5cdFx0QGluY2x1ZGUgZnooMzgpO1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuXHRcdEBpbmNsdWRlIG1heDk5MSB7XG5cdFx0XHRAaW5jbHVkZSBmeigzMCk7IH1cblx0XHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdFx0QGluY2x1ZGUgZnooMjApOyB9IH0gfVxuXG5cbi8vIHNvbHV0aW9uLWNhcmRcblxuLnNvbHV0aW9uLWNhcmQge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLWJvdHRvbTogMTZweDtcblx0QGluY2x1ZGUgdG07XG5cdEBpbmNsdWRlIG1heDU3NSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItbWFpbjtcblx0XHRAaW5jbHVkZSBweCgxMHB4KTtcblx0XHRAaW5jbHVkZSBweSgxMHB4KTsgfVxuXHRoNiB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdEBpbmNsdWRlIHRtOyB9XG5cdEBpbmNsdWRlIGgge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRAaW5jbHVkZSB0bTtcblx0XHRoNiB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRjb2xvci1tYWluO1xuXHRcdFx0QGluY2x1ZGUgdG07IH1cblxuXHRcdC5zb2x1dGlvbi1jYXJkLWltZyB7XG5cdFx0XHRAaW5jbHVkZSB0bTtcblx0XHRcdEBpbmNsdWRlIGEge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jazsgfSB9IH0gfVxuXG4uc29sdXRpb24tY2FyZC1pbWcge1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZy10b3A6IDYwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcblx0bWFyZ2luLWJvdHRvbTogNXB4O1xuXHRAaW5jbHVkZSB0bTtcblx0QGluY2x1ZGUgYSB7XG5cdFx0QGluY2x1ZGUgY3Q7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IDM7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoNzcsIDg3LCA5NiwgMC4yKTtcblx0XHRkaXNwbGF5OiBub25lOyB9XG5cdGltZyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0dG9wOiA1MCU7XG5cdFx0bGVmdDogNTAlO1xuXHRcdG1pbi13aWR0aDogMTAwJTtcblx0XHRtaW4taGVpZ2h0OiAxMDAlO1xuXHRcdEBpbmNsdWRlIHRmKHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSk7IH0gfVxuXG4vKiBjYXJkIGVuZCAqL1xuXG4iLCIvKiBmb290ZXIgc3RhcnQgKi9cblxuLmZvb3RlciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuXHRAaW5jbHVkZSBweSg0NXB4KTtcblx0QGluY2x1ZGUgbWluOTkyIHtcblx0XHRtaW4taGVpZ2h0OiAxMjBweDsgfVxuXHRAaW5jbHVkZSBtYXg5OTEge1xuXHRcdEBpbmNsdWRlIHB5KDI1cHgpO1xuXHRcdG1pbi1oZWlnaHQ6IDgwcHg7IH1cblx0QGluY2x1ZGUgbWF4NTc1IHtcblx0XHRAaW5jbHVkZSBweSgxNXB4KTtcblx0XHRtaW4taGVpZ2h0OiAxcHg7IH0gfVxuXG4uZm9vdGVyLW5hdiB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0bGkge1xuXHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLWxlZnQ6IDdweDtcblx0XHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblx0XHRAaW5jbHVkZSBhIHtcblx0XHRcdEBpbmNsdWRlIGN0O1xuXHRcdFx0d2lkdGg6IDFweDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XG5cdFx0XHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdFx0XHR3aWR0aDogNTBweDtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdFx0aGVpZ2h0OiAxcHg7XG5cdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7IH0gfVxuXHRcdEBpbmNsdWRlIGYge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0QGluY2x1ZGUgYSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7IH0gfSB9XG5cdGEge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRAaW5jbHVkZSBweCgyNXB4KTtcblx0XHRAaW5jbHVkZSBweSg5cHgpO1xuXHRcdEBpbmNsdWRlIGZ3KDQwMCk7XG5cdFx0QGluY2x1ZGUgZnooMTApO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0QGluY2x1ZGUgZm9udC1tYWluO1xuXHRcdGNvbG9yOiAkbGlnaHQtZ3JleTtcblx0XHRAaW5jbHVkZSB0bTtcblx0XHRAaW5jbHVkZSBtYXg1NzUge1xuXHRcdFx0QGluY2x1ZGUgZnooMTQpOyB9XG5cdFx0QGluY2x1ZGUgYSB7XG5cdFx0XHRAaW5jbHVkZSBjdDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogNXB4O1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0cmlnaHQ6IDUwJTtcblx0XHRcdGhlaWdodDogMXB4O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRAaW5jbHVkZSB0bTsgfVxuXHRcdEBpbmNsdWRlIGgge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdEBpbmNsdWRlIHRtO1xuXHRcdFx0QGluY2x1ZGUgYSB7XG5cdFx0XHRcdHJpZ2h0OiAyNXB4O1xuXHRcdFx0XHRsZWZ0OiAyNXB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdEBpbmNsdWRlIHRtOyB9IH1cblx0XHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0QGluY2x1ZGUgcHkoMTBweCk7IH0gfSB9XG5cbi8qIGZvb3RlciBlbmQgKi9cbiIsIi8qIGZvcm0gc3RhcnQgKi9cblxuLmZvcm0tZ3JvdXAge1xuXHRtYXJnaW4tYm90dG9tOiA1cHg7IH1cblxuLmZvcm0tY29udHJvbCB7XG5cdGJvcmRlci1jb2xvcjogJGJsYWNrO1xuXHRAaW5jbHVkZSByKDApO1xuXHRAaW5jbHVkZSBweSgzcHgpO1xuXHRAaW5jbHVkZSBmYyB7XG5cdFx0Y29sb3I6ICM0OTUwNTc7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRib3JkZXItY29sb3I6ICRkYXJrO1xuXHRcdG91dGxpbmU6IDA7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNzcsIDg3LCA5NiwgMC4yNSk7IH0gfVxuXG50ZXh0YXJlYSB7XG5cdG1pbi1oZWlnaHQ6IDE2NXB4OyB9XG5cbmxhYmVsIHtcblx0bWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY29udGFjdC1wYWdlLWZvcm0ge1xuXHR0ZXh0YXJlYSB7XG5cdFx0bWluLWhlaWdodDogMTI1cHg7IH0gfVxuXG4vKiBmb3JtIGVuZCAqL1xuIiwiLyogbWFyZ2lucyBzdGFydCAqL1xuLm1iMCB7XG5cdG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm1iNSB7XG5cdG1hcmdpbi1ib3R0b206IDVweDsgfVxuXG4ubWIxMCB7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLm1iMTUge1xuXHRtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbi5tYjIwIHtcblx0bWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4ubWIyNSB7XG5cdG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuLm1iMzAge1xuXHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG4ubWIzNSB7XG5cdG1hcmdpbi1ib3R0b206IDM1cHg7XG5cdEBpbmNsdWRlIG1heDc2NyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjVweDsgfSB9XG5cbi5tYjQwIHtcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0QGluY2x1ZGUgbWF4NzY3IHtcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cblxuLm1iNDUge1xuXHRtYXJnaW4tYm90dG9tOiA0NXB4O1xuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG4ubWI1MCB7XG5cdG1hcmdpbi1ib3R0b206IDUwcHg7XG5cdEBpbmNsdWRlIG1heDk5MSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG4ubWI2MCB7XG5cdG1hcmdpbi1ib3R0b206IDYwcHg7XG5cdEBpbmNsdWRlIG1heDk5MSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG4ubXQ2MCB7XG5cdG1hcmdpbi10b3A6IDYwcHg7XG5cdEBpbmNsdWRlIG1heDk5MSB7XG5cdFx0bWFyZ2luLXRvcDogNTBweDsgfVxuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuXG4ucGI1MCB7XG5cdHBhZGRpbmctYm90dG9tOiA1MHB4O1xuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuXG4ucHQzNSB7XG5cdHBhZGRpbmctdG9wOiAzNXB4OyB9XG5cbi5wYjcwIHtcblx0cGFkZGluZy1ib3R0b206IDcwcHg7XG5cdEBpbmNsdWRlIG1heDExOTkge1xuXHRcdHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG5cdEBpbmNsdWRlIG1heDk5MSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDQwcHg7IH1cblx0QGluY2x1ZGUgbWF4NzY3IHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbi5wci1tZC01IHtcblx0QGluY2x1ZGUgbWluNzY4IHtcblx0XHRwYWRkaW5nLXJpZ2h0OiA1cHg7IH0gfVxuLyogbWFyZ2lucyBlbmQgKi9cblxuXG4udy1zbS1hdXRvIHtcblx0QGluY2x1ZGUgbWluNTc2IHtcblx0XHR3aWR0aDogYXV0byAhaW1wb3J0YW50OyB9IH1cblxuLnc0ODAge1xuXHRtYXgtd2lkdGg6IDQ4MHB4OyB9XG5cbi8qIG1haW4gZ2FwIHN0eWxlcyAqL1xuLmNvbnRhaW5lciB7XG5cdEBpbmNsdWRlIG14KGF1dG8pO1xuXHRAaW5jbHVkZSBweCgkZ3JpZC1ndXR0ZXItZGVzY3RvcCAvIDIpO1xuXHR3aWR0aDogMTAwJTtcblx0bWF4LXdpZHRoOiAkY29udGFpbmVyLXdpZHRoO1xuXHRAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcblx0XHRAaW5jbHVkZSBweCgkZ3JpZC1ndXR0ZXItdGFibGV0IC8gMik7IH1cblx0QG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG5cdFx0QGluY2x1ZGUgcHgoJGdyaWQtZ3V0dGVyLW1vYi13aWR0aCAvIDIpOyB9XG5cdEBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1heC13aWR0aDogJGNvbnRhaW5lci13aWR0aDsgfSB9XG5cblxuLnJvdy11c2VyIHtcblx0QGluY2x1ZGUgbXgoJHNwYWNlLXVzZXIgLyAtMik7XG5cdEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuXHRcdEBpbmNsdWRlIG14KCRzcGFjZS11c2VyIC8gLTIpOyB9XG5cdEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuXHRcdEBpbmNsdWRlIG14KCRzcGFjZS11c2VyIC8gLTIpOyB9IH1cblxuLmNvbC11c2VyIHtcblx0QGluY2x1ZGUgcHgoJHNwYWNlLXVzZXIgLyAyKTtcblx0QG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG5cdFx0QGluY2x1ZGUgcHgoJHNwYWNlLXVzZXIgLyAyKTsgfVxuXHRAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcblx0XHRAaW5jbHVkZSBweCgkc3BhY2UtdXNlciAvIDIpOyB9IH1cblxuLyogbWFpbiBnYXAgc3R5bGVzIGVuZCAqL1xuXG5cbiIsIi8qIGhlYWRlciBzdGFydCAqL1xuLmhlYWRlciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1iZztcblx0cGFkZGluZy10b3A6IDIwcHg7XG5cdHBhZGRpbmctYm90dG9tOiAxNXB4O1xuXHRAaW5jbHVkZSBtaW43Njgge1xuXHRcdG1pbi1oZWlnaHQ6IDExMHB4OyB9IH1cblxuLmxvZ28ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0aGVpZ2h0OiBhdXRvO1xuXHR3aWR0aDogMjMwcHg7XG5cdEBpbmNsdWRlIG1heDExOTkge1xuXHRcdHdpZHRoOiAyMjBweDsgfVxuXHRAaW5jbHVkZSBtYXg5OTEge1xuXHRcdEBpbmNsdWRlIHB5KDApOyB9XG5cdEBpbmNsdWRlIG1heDc2NyB7XG5cdFx0d2lkdGg6IDI1MHB4OyB9XG5cdEBpbmNsdWRlIG1heDU3NSB7XG5cdFx0d2lkdGg6IDE4MHB4OyB9XG5cdGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7IH0gfVxuXG4uaGVhZGVyLXBob25lIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0QGluY2x1ZGUgZnooMzUpO1xuXHRAaW5jbHVkZSBmdyg5MDApO1xuXHRjb2xvcjogJGRhcms7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRAaW5jbHVkZSB0bTtcblx0QGluY2x1ZGUgYSB7XG5cdFx0QGluY2x1ZGUgY3Q7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0cmlnaHQ6IDUwJTtcblx0XHRoZWlnaHQ6IDFweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRAaW5jbHVkZSB0bTsgfVxuXHRAaW5jbHVkZSBoIHtcblx0XHRAaW5jbHVkZSB0bTtcblx0XHRjb2xvcjogJGRhcms7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdEBpbmNsdWRlIGEge1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG5cdFx0XHRAaW5jbHVkZSB0bTsgfSB9XG5cdEBpbmNsdWRlIG1heDk5MSB7XG5cdFx0QGluY2x1ZGUgZnooMzApO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0cGFkZGluZy10b3A6IDVweDsgfVxuXHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdEBpbmNsdWRlIGZ6KDIwKTsgfSB9XG5cblxuLyogaGVhZGVyIGVuZCAqL1xuIiwiLyogaW5mby1ib3ggc3RhcnQgKi9cbi5pbmZvLWJveC13cmFwIHt9XG5cblxuLmluZm8tYm94IHtcblx0QGluY2x1ZGUgcHkoMjBweCk7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyaztcblx0QGluY2x1ZGUgZiB7XG5cdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXJrOyB9XG5cdGFkZHJlc3Mge1xuXHRcdEBleHRlbmQgLm1iMDtcblx0XHRzcGFuIHtcblx0XHRcdEBpbmNsdWRlIGZ3KDMwMCk7XG5cdFx0XHRAZXh0ZW5kIC5kLWJsb2NrO1xuXHRcdFx0QGV4dGVuZCAudHR1O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHRcdCYudHRuIHtcblx0XHRcdFx0QGV4dGVuZCAudHRuO1xuXHRcdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDJlbTsgfSB9IH0gfVxuXG4uaW5mby1idG4tYm94IHtcblx0QGluY2x1ZGUgcHkoMzBweCk7XG5cdEBpbmNsdWRlIG1heDU3NSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDEwcHg7IH0gfVxuXG4vKiBpbmZvLWJveCBlbmQgKi9cbiIsIi8qIG1vZGFsIHN0YXJ0ICovXG5cbi5tb2RhbC1kaWFsb2cge1xuXHRAaW5jbHVkZSBtaW41NzYge1xuXHRcdG1heC13aWR0aDogNDEwcHg7IH0gfVxuXG4ubW9kYWwtY29udGVudCB7XG5cdEBpbmNsdWRlIHB4KDIycHgpO1xuXHRAaW5jbHVkZSBweSgxOHB4KTtcblx0QGluY2x1ZGUgcigwKTtcblx0LmNsb3NlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAyMHB4O1xuXHRcdHJpZ2h0OiAyMHB4O1xuXHRcdHdpZHRoOiAzMHB4O1xuXHRcdGhlaWdodDogMzBweDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkZGFyaztcblxuXHRcdEBpbmNsdWRlIGEge1xuXHRcdFx0Y29udGVudDogJ3gnO1xuXHRcdFx0Y29sb3I6ICRjb2xvci1tYWluOyB9XG5cdFx0QGluY2x1ZGUgaDtcblx0XHRAaW5jbHVkZSBmYyB7XG5cdFx0XHRvdXRsaW5lLWNvbG9yOiAkbGlnaHQtZ3JleTsgfSB9IH1cblxuLm1vZGFsLXRpdGxlIHtcblx0cGFkZGluZy1yaWdodDogNDBweDsgfVxuXG4vKiBtb2RhbCBlbmQgKi9cbiIsIi8qIG5hdmJhciBzdGFydCAqL1xuXG4ubmF2LWl0ZW0ge31cblxuLm5hdi1saW5rIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0QGluY2x1ZGUgZnooMTUpO1xuXHRAaW5jbHVkZSBmdygzMDApO1xuXHRAaW5jbHVkZSBmb250LW1haW47XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZy10b3A6IDEwcHg7XG5cdHBhZGRpbmctYm90dG9tOiAxcHg7XG5cdGNvbG9yOiAkY29sb3ItbWFpbjtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRAaW5jbHVkZSBhIHtcblx0XHRAaW5jbHVkZSBjdDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHRyaWdodDogNTAlO1xuXHRcdGhlaWdodDogMXB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdEBpbmNsdWRlIHRtOyB9XG5cdEBpbmNsdWRlIGgge1xuXHRcdGNvbG9yOiAkY29sb3ItbWFpbjtcblx0XHRAaW5jbHVkZSBhIHtcblx0XHRcdHJpZ2h0OiAxOHB4O1xuXHRcdFx0bGVmdDogMThweDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1tYWluO1xuXHRcdFx0QGluY2x1ZGUgdG07IH0gfVxuXHRAaW5jbHVkZSBtYXgxMTk5IHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0QGluY2x1ZGUgcHgoMjBweCk7IH1cblx0QGluY2x1ZGUgbWF4OTkxIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xuXHRcdEBpbmNsdWRlIHB5KDhweCk7XG5cdFx0QGluY2x1ZGUgaCB7XG5cdFx0XHRAaW5jbHVkZSBhIHtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7IH0gfSB9IH1cblxuLm5hdmJhciB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Lm5hdmJhci1uYXYge1xuXHRcdHBhZGRpbmctbGVmdDogMjVweDtcblx0XHRtYXJnaW4tYm90dG9tOiAzcHg7XG5cdFx0QGluY2x1ZGUgbWF4OTkxIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMDsgfVxuXHRcdC5uYXYtbGluayB7XG5cdFx0XHRAaW5jbHVkZSBweCgxOHB4KTsgfSB9XG5cdC5uYXYtaXRlbSB7XG5cdFx0QGluY2x1ZGUgbCB7XG5cdFx0XHRAaW5jbHVkZSBtaW45OTIge1xuXHRcdFx0XHQubmF2LWxpbmsge1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0XHRcdFx0QGluY2x1ZGUgaCB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBhIHtcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IDA7IH0gfSB9IH0gfSB9IH1cblxuLm5hdmJhci10b2dnbGVyIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IDEwcHggMDtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiAwcHg7XG5cdG91dGxpbmU6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0d2lkdGg6IDUwcHg7XG5cdGhlaWdodDogNTBweDtcblx0Ym9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XG5cdEBpbmNsdWRlIHIoM3B4KTtcblx0QGluY2x1ZGUgZmMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0Ym94LXNoYWRvdzogMCAwcHggMnB4IDBweCAkZ3JleTsgfVxuXHQuaWNvbi1iYXIge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGhlaWdodDogM3B4O1xuXHRcdHdpZHRoOiAzMHB4O1xuXHRcdG1hcmdpbjogNnB4IGF1dG87XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG5cdFx0QGluY2x1ZGUgdG07IH1cblx0JlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG5cdFx0Lmljb24tYmFyMSB7XG5cdFx0XHRtYXJnaW4tdG9wOiA0cHg7XG5cdFx0XHRAaW5jbHVkZSB0Zihyb3RhdGUoMTM1ZGVnKSk7IH1cblx0XHQuaWNvbi1iYXIyIHtcblx0XHRcdG9wYWNpdHk6IDA7IH1cblx0XHQuaWNvbi1iYXIzIHtcblx0XHRcdG1hcmdpbi10b3A6IC0xOHB4O1xuXHRcdFx0QGluY2x1ZGUgdGYocm90YXRlKC0xMzVkZWcpKTsgfSB9IH1cblxuLmNvbGxhcHNlLnNob3cge31cblxuLyogbmF2YmFyIGVuZCAqL1xuXG4iLCIvKiBwaG90by1jb2xsYWdlIHN0YXJ0ICovXG5cbi5waG90by1jb2xsYWdlIHtcblx0QGV4dGVuZCAuZC1mbGV4O1xuXHRAZXh0ZW5kIC5hbGlnbi1pdGVtcy1zbS1zdHJldGNoO1xuXHQucGhvdG8ge1xuXHRcdEBleHRlbmQgLmQtaW5saW5lLWZsZXg7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWluLXdpZHRoOiA0MCU7XG5cdFx0aW1nIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWluLXdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiBhdXRvOyB9IH0gfVxuXG4vKiBwaG90by1jb2xsYWdlIGVuZCAqL1xuXG4iLCIvKiB0b290bHRpcHMgc3RhcnQgKi9cblxuLnRvb2x0aXAtaW5uZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcblx0Y29sb3I6ICRncmV5LWRhcms7IH1cblxuLnRvb2x0aXAge1xuXHQmLmJzLXRvb2x0aXAtYm90dG9tIHtcblx0XHQuYXJyb3cge1xuXHRcdFx0QGluY2x1ZGUgYiB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6ICRncmV5ICFpbXBvcnRhbnQ7IH0gfSB9XG5cdCYuYnMtdG9vbHRpcC1sZWZ0IHtcblx0XHQuYXJyb3cge1xuXHRcdFx0QGluY2x1ZGUgYiB7XG5cdFx0XHRcdGJvcmRlci1sZWZ0LWNvbG9yOiAkZ3JleSAhaW1wb3J0YW50OyB9IH0gfVxuXHQmLmJzLXRvb2x0aXAtcmlnaHQge1xuXHRcdC5hcnJvdyB7XG5cdFx0XHRAaW5jbHVkZSBiIHtcblx0XHRcdFx0Ym9yZGVyLXJpZ2h0LWNvbG9yOiAkZ3JleSAhaW1wb3J0YW50OyB9IH0gfVxuXHQmLmJzLXRvb2x0aXAtdG9wIHtcblx0XHQuYXJyb3cge1xuXHRcdFx0QGluY2x1ZGUgYiB7XG5cdFx0XHRcdGJvcmRlci10b3AtY29sb3I6ICRncmV5ICFpbXBvcnRhbnQ7IH0gfSB9IH1cblxuLyogdG9vdGx0aXBzIGVuZCAqL1xuXG5cblxuIiwiLyogaGVhZGluZyBzdHlsZXMgc3RhcnQgKi9cbkBpbmNsdWRlIGhkIHtcblx0QGluY2x1ZGUgZm9udC1tYWluOyB9XG5cbmgxLCBoMi5sYXJnZSB7XG5cdEBpbmNsdWRlIGZ6KDQwKTtcblx0QGluY2x1ZGUgZncoMzAwKTtcblx0bGluZS1oZWlnaHQ6IDEuMTtcblx0Y29sb3I6ICRkYW5nZXI7XG5cdG1hcmdpbi1ib3R0b206IDBweDtcblx0QGluY2x1ZGUgbWF4OTkxIHtcblx0XHRAaW5jbHVkZSBmeigyOCk7IH1cblx0QGluY2x1ZGUgbWF4NzY3IHtcblx0XHRAaW5jbHVkZSBmeigyNik7XG5cdFx0bWFyZ2luLWJvdHRvbTogNXB4OyB9IH1cblxuLy8gaDJcbi8vIFx0K2Z6KDI4KVxuLy8gXHQrZncoNDAwKVxuLy8gXHRjb2xvcjogJGNvbG9yLW1haW5cbi8vIFx0bWFyZ2luLWJvdHRvbTogMFxuLy8gXHQrbWF4MTE5OVxuLy8gXHRcdCtmeigyNilcbi8vIFx0K21heDc2N1xuLy8gXHRcdCtmeigyNClcblxuaDMge1xuXHRAaW5jbHVkZSBmeigyMCk7XG5cdEBpbmNsdWRlIGZ3KDcwMCk7XG5cdGNvbG9yOiAkY29sb3ItbWFpbjtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0QGluY2x1ZGUgbWF4NTc1IHtcblx0XHRAaW5jbHVkZSBmeigxOCk7IH0gfVxuXG5oNCB7XG5cdC8vICtmeigxOClcblx0Ly8gK2Z3KDcwMClcblx0Ly8gY29sb3I6ICRjb2xvci1tYWluXG4gfVx0Ly8gbWFyZ2luLWJvdHRvbTogMFxuXG5cbmg1IHtcblx0QGluY2x1ZGUgZnooMTcpO1xuXHRAaW5jbHVkZSBmdyg3MDApO1xuXHRsaW5lLWhlaWdodDogMS4yNTtcblx0Y29sb3I6ICRjb2xvci1tYWluOyB9XG5cbmg2IHtcblx0QGluY2x1ZGUgZnooMTUpO1xuXHRAaW5jbHVkZSBmdyg3MDApO1xuXHRtYXJnaW4tYm90dG9tOiAwOyB9XG5cbnAge1xuXHRAaW5jbHVkZSBmeigxNSk7XG5cdEBpbmNsdWRlIGZvbnQtbWFpbjtcblx0QGluY2x1ZGUgZncoMzAwKTtcblx0Y29sb3I6ICRjb2xvci1tYWluO1xuXHRtYXJnaW4tYm90dG9tOiA5cHg7XG5cdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdCYuc21hbGwge1xuXHRcdEBpbmNsdWRlIGZ6KDEyKTtcblx0XHRAaW5jbHVkZSBtYXg3Njcge1xuXHRcdFx0QGluY2x1ZGUgZnooMTQpOyB9IH0gfVxuXG5cbmIge1xuXHRAaW5jbHVkZSBmdyg3MDApOyB9XG5cbmFkZHJlc3Mge1xuXHRwLCBzcGFuIHtcblx0XHRjb2xvcjogJGNvbG9yLW1haW47IH0gfVxuXG5hIHtcblx0Y29sb3I6ICRjb2xvci1tYWluO1xuXHRAaW5jbHVkZSBoIHtcblx0XHRjb2xvcjogJGNvbG9yLW1haW47IH1cblx0QGluY2x1ZGUgZiB7XG5cdFx0b3V0bGluZTogbm9uZSFpbXBvcnRhbnQ7IH0gfVxuXG4vKiBoZWFkaW5nIHN0eWxlcyBlbmQgKi9cblxuXG5cbiJdLCJtYXBwaW5ncyI6IkFBR0EsZ0JBQWdCO0FBR2hCLHFCQUFxQjtBR05yQjs7Ozs7R0FLRztBa0NMSCxBQUFBLEtBQUssQ0FBQztFQUdGLE1BQVcsRUFBRyxPQUFDO0VBQWYsUUFBVyxFQUFHLE9BQUM7RUFBZixRQUFXLEVBQUcsT0FBQztFQUFmLE1BQVcsRUFBRyxPQUFDO0VBQWYsS0FBVyxFQUFHLE9BQUM7RUFBZixRQUFXLEVBQUcsT0FBQztFQUFmLFFBQVcsRUFBRyxPQUFDO0VBQWYsT0FBVyxFQUFHLE9BQUM7RUFBZixNQUFXLEVBQUcsT0FBQztFQUFmLE1BQVcsRUFBRyxPQUFDO0VBQWYsT0FBVyxFQUFHLElBQUM7RUFBZixNQUFXLEVBQUcsT0FBQztFQUFmLFdBQVcsRUFBRyxPQUFDO0VBSWYsU0FBVyxFQUFHLE9BQUM7RUFBZixXQUFXLEVBQUcsT0FBQztFQUFmLFNBQVcsRUFBRyxPQUFDO0VBQWYsTUFBVyxFQUFHLE9BQUM7RUFBZixTQUFXLEVBQUcsT0FBQztFQUFmLFFBQVcsRUFBRyxPQUFDO0VBQWYsT0FBVyxFQUFHLE9BQUM7RUFBZixNQUFXLEVBQUcsT0FBQztFQUlmLGVBQW1CLEVBQWMsQ0FBQztFQUFsQyxlQUFtQixFQUFjLEtBQUM7RUFBbEMsZUFBbUIsRUFBYyxLQUFDO0VBQWxDLGVBQW1CLEVBQWMsS0FBQztFQUFsQyxlQUFtQixFQUFjLE1BQUM7RUFLcEMsd0JBQXdCLEVBQUMsb0pBQUM7RUFDMUIsdUJBQXVCLEVBQUMsb0ZBQUM7Q0FDMUI7O0FDRUQsQUFBQSxDQUFDO0FBQ0QsQUFBQyxDQUFBLEFBQUEs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Q0FBTjtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7RUFJcEIsU0FBUyxFQUFFLFNBQVU7Q0REZDs7QUFGRCxBQUFBLE1BQU0sQ0FBTjtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQVU7RUFJcEIsU0FBUyxFQUFFLEdBQVU7Q0REZDs7QUFGRCxBQUFBLE1BQU0sQ0FBTjtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7RUFJcEIsU0FBUyxFQUFFLFNBQVU7Q0REZDs7QUFGRCxBQUFBLE1BQU0sQ0FBTjtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7RUFJcEIsU0FBUyxFQUFFLFNBQVU7Q0REZDs7QUFGRCxBQUFBLE1BQU0sQ0FBTjtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQVU7RUFJcEIsU0FBUyxFQUFFLEdBQVU7Q0REZDs7QUFGRCxBQUFBLE1BQU0sQ0FBTjtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7RUFJcEIsU0FBUyxFQUFFLFNBQVU7Q0REZDs7QUFGRCxBQUFBLE1BQU0sQ0FBTjtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7RUFJcEIsU0FBUyxFQUFFLFNBQVU7Q0REZDs7QUFGRCxBQUFBLE1BQU0sQ0FBTjtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQVU7RUFJcEIsU0FBUyxFQUFFLEdBQVU7Q0REZDs7QUFGRCxBQUFBLE9BQU8sQ0FBUDtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7RUFJcEIsU0FBUyxFQUFFLFNBQVU7Q0REZDs7QUFGRCxBQUFBLE9BQU8sQ0FBUDtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7RUFJcEIsU0FBUyxFQUFFLFNBQVU7Q0REZDs7QUFGRCxBQUFBLE9BQU8sQ0FBUDtFQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQVU7RUFJcEIsU0FBUyxFQUFFLElBQVU7Q0REZDs7QUFHSCxBQUFBLFlBQVksQ0FBWjtFQUFFLEtBQUssRUFBRSxFQUFHO0NBQUk7O0FBRWhCLEFBQUEsV0FBVyxDQUFYO0VBQUUsS0FBSyxFQUFFLEVBQVE7Q0FBUTs7QUFHdkIsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQztDQUNHOztBQUFmLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUM7Q0FDRzs7QUFBZixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDO0NBQ0c7O0FBQWYsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQztDQUNHOztBQUFmLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUM7Q0FDRzs7QUFBZixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDO0NBQ0c7O0FBQWYsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQztDQUNHOztBQUFmLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUM7Q0FDRzs7QUFBZixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDO0NBQ0c7O0FBQWYsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQztDQUNHOztBQUFmLEFBQUEsU0FBUyxDQUFUO0VBQUUsS0FBSyxFQURJLEVBQUM7Q0FDRzs7QUFBZixBQUFBLFNBQVMsQ0FBVDtFQUFFLEtBQUssRUFESSxFQUFDO0NBQ0c7O0FBQWYsQUFBQSxTQUFTLENBQVQ7RUFBRSxLQUFLLEVBREksRUFBQztDQUNHOztBQU1iLEFBQUEsU0FBUyxDQUFUO0VDUlIsV0FBVyxFQUFtQixRQUFVO0NEVS9COztBQUZELEFBQUEsU0FBUyxDQUFUO0VDUlIsV0FBVyxFQUFtQixTQUFVO0NEVS9COztBQUZELEFBQUEsU0FBUyxDQUFUO0VDUlIsV0FBVyxFQUFtQixHQUFVO0NEVS9COztBQUZELEFBQUEsU0FBUyxDQUFUO0VD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QUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0REZDtFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRERkO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dERGQ7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0REZDtFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRERkO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dERGQ7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0REZDtFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVTtHRERkO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVO0dERGQ7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVU7R0REZDtFQUZELEFBQUEsVUFBVSxDQUFWO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxD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 */
