/*!
 * 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: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, 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; }

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

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

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

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

pre,
code,
kbd,
samp {
  font-family: 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.1875rem; }

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

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

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

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

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

.lead {
  font-size: 1.09375rem;
  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.09375rem; }

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d; }
  .blockquote-footer::before {
    content: "\2014 \00A0"; }

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
  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;
  -webkit-box-shadow: inset 0 -0.1rem 0 rgba(0, 0, 0, 0.25);
  box-shadow: inset 0 -0.1rem 0 rgba(0, 0, 0, 0.25); }
  kbd kbd {
    padding: 0;
    font-size: 100%;
    font-weight: 700;
    -webkit-box-shadow: none;
    box-shadow: none; }

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: 1230px; } }

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

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

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

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

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

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

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

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

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

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

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

.table-dark {
  color: #fff;
  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: 0.875rem;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  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.0625rem + 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.09375rem;
  line-height: 1.5; }

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.76563rem;
  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.76563rem;
  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.64844rem + 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.09375rem;
  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.64063rem + 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 #fff, 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: #dc3545; }

.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(220, 53, 69, 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: #dc3545; }
  .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus, .was-validated
  .custom-select:invalid:focus,
  .custom-select.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }
  .was-validated .form-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: #dc3545; }

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

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

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

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545; }
  .was-validated .custom-file-input:invalid ~ .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(220, 53, 69, 0.25); }

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center; }
  .form-inline .form-check {
    width: 100%; }
  @media (min-width: 576px) {
    .form-inline label {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 0; }
    .form-inline .form-group {
      display: flex;
      flex: 0 0 auto;
      flex-flow: row wrap;
      align-items: center;
      margin-bottom: 0; }
    .form-inline .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .form-inline .form-control-plaintext {
      display: inline-block; }
    .form-inline .input-group {
      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: 0.875rem;
  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;
    -webkit-box-shadow: none;
    box-shadow: none; }
  .btn:not(:disabled):not(.disabled) {
    cursor: pointer; }
  .btn:not(:disabled):not(.disabled):active, .btn:not(:disabled):not(.disabled).active {
    background-image: none;
    -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
    .btn:not(:disabled):not(.disabled):active:focus, .btn:not(:disabled):not(.disabled).active:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25), inset 0 3px 5px rgba(0, 0, 0, 0.125);
      box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25), inset 0 3px 5px rgba(0, 0, 0, 0.125); }

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

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); }
  .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;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); }
  .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;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); }
  .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;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); }
  .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;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); }
  .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: #dc3545;
  border-color: #dc3545;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); }
  .btn-danger:hover {
    color: #fff;
    background-color: #c82333;
    border-color: #bd2130; }
  .btn-danger:focus, .btn-danger.focus {
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }
  .btn-danger.disabled, .btn-danger:disabled {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545; }
  .btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
  .show > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #bd2130;
    border-color: #b21f2d; }
    .btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
    .show > .btn-danger.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); }
  .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: #343a40;
  border-color: #343a40;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); }
  .btn-dark:hover {
    color: #fff;
    background-color: #23272b;
    border-color: #1d2124; }
  .btn-dark:focus, .btn-dark.focus {
    box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }
  .btn-dark.disabled, .btn-dark:disabled {
    color: #fff;
    background-color: #343a40;
    border-color: #343a40; }
  .btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
  .show > .btn-dark.dropdown-toggle {
    color: #fff;
    background-color: #1d2124;
    border-color: #171a1d; }
    .btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
    .show > .btn-dark.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 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: #dc3545;
  background-color: transparent;
  background-image: none;
  border-color: #dc3545; }
  .btn-outline-danger:hover {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545; }
  .btn-outline-danger:focus, .btn-outline-danger.focus {
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }
  .btn-outline-danger.disabled, .btn-outline-danger:disabled {
    color: #dc3545;
    background-color: transparent; }
  .btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
  .show > .btn-outline-danger.dropdown-toggle {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545; }
    .btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-danger.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.btn-outline-light {
  color: #f8f9fa;
  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: #343a40;
  background-color: transparent;
  background-image: none;
  border-color: #343a40; }
  .btn-outline-dark:hover {
    color: #fff;
    background-color: #343a40;
    border-color: #343a40; }
  .btn-outline-dark:focus, .btn-outline-dark.focus {
    box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }
  .btn-outline-dark.disabled, .btn-outline-dark:disabled {
    color: #343a40;
    background-color: transparent; }
  .btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
  .show > .btn-outline-dark.dropdown-toggle {
    color: #fff;
    background-color: #343a40;
    border-color: #343a40; }
    .btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-dark.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }

.btn-link {
  font-weight: 400;
  color: #007bff;
  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.09375rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.76563rem;
  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: 0.875rem;
  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;
  -webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.175);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.175); }

.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.76563rem;
  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.show .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn-group.show .dropdown-toggle.btn-link {
    -webkit-box-shadow: none;
    box-shadow: none; }

.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: 0.875rem;
  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;
    -webkit-box-shadow: none;
    box-shadow: none; }
  .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .custom-control-input:active ~ .custom-control-label::before {
    color: #fff;
    background-color: #b3d7ff;
    -webkit-box-shadow: none;
    box-shadow: none; }
  .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;
    -webkit-box-shadow: inset 0 0.25rem 0.25rem rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 0.25rem 0.25rem rgba(0, 0, 0, 0.1); }
  .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;
  -webkit-box-shadow: none;
  box-shadow: none; }

.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.0625rem + 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.64844rem + 2px);
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  font-size: 75%; }

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

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

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(2.0625rem + 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.0625rem + 2px);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .custom-file-label::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    display: block;
    height: calc(calc(2.0625rem + 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: #ff6828; }
  .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;
  padding: 15px; }

.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.33594rem;
  padding-bottom: 0.33594rem;
  margin-right: 1rem;
  font-size: 1.09375rem;
  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.09375rem;
  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); }
  .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: 16px 22px;
  margin-bottom: 0;
  list-style: none; }

.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 {
  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.09375rem;
  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.76563rem;
  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: #dc3545; }
  .badge-danger[href]:hover, .badge-danger[href]:focus {
    color: #fff;
    text-decoration: none;
    background-color: #bd2130; }

.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: #343a40; }
  .badge-dark[href]:hover, .badge-dark[href]:focus {
    color: #fff;
    text-decoration: none;
    background-color: #1d2124; }

.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: 3.8125rem; }
  .alert-dismissible .close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.75rem 1.25rem;
    color: inherit; }

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

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

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

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

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

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

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

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

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0; }
  to {
    background-position: 0 0; } }

.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.65625rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
  -webkit-box-shadow: inset 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1); }

.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: #721c24;
  background-color: #f5c6cb; }
  .list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
    color: #721c24;
    background-color: #f1b0b7; }
  .list-group-item-danger.list-group-item-action.active {
    color: #fff;
    background-color: #721c24;
    border-color: #721c24; }

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

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

.close {
  float: right;
  font-size: 1.3125rem;
  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;
  -webkit-box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.5);
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.5);
  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-content {
    -webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5); }
  .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.76563rem;
  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.76563rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  -webkit-box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.2);
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.2); }
  .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: 0.875rem;
  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: #dc3545 !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.rounded {
  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 {
  display: block !important; }

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

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

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

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

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

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important; }
  .d-sm-inline {
    display: inline !important; }
  .d-sm-inline-block {
    display: inline-block !important; }
  .d-sm-block {
    display: block !important; }
  .d-sm-table {
    display: table !important; }
  .d-sm-table-row {
    display: table-row !important; }
  .d-sm-table-cell {
    display: table-cell !important; }
  .d-sm-flex {
    display: flex !important; }
  .d-sm-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 768px) {
  .d-md-none {
    display: none !important; }
  .d-md-inline {
    display: inline !important; }
  .d-md-inline-block {
    display: inline-block !important; }
  .d-md-block {
    display: block !important; }
  .d-md-table {
    display: table !important; }
  .d-md-table-row {
    display: table-row !important; }
  .d-md-table-cell {
    display: table-cell !important; }
  .d-md-flex {
    display: flex !important; }
  .d-md-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 992px) {
  .d-lg-none {
    display: none !important; }
  .d-lg-inline {
    display: inline !important; }
  .d-lg-inline-block {
    display: inline-block !important; }
  .d-lg-block {
    display: block !important; }
  .d-lg-table {
    display: table !important; }
  .d-lg-table-row {
    display: table-row !important; }
  .d-lg-table-cell {
    display: table-cell !important; }
  .d-lg-flex {
    display: flex !important; }
  .d-lg-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important; }
  .d-xl-inline {
    display: inline !important; }
  .d-xl-inline-block {
    display: inline-block !important; }
  .d-xl-block {
    display: block !important; }
  .d-xl-table {
    display: table !important; }
  .d-xl-table-row {
    display: table-row !important; }
  .d-xl-table-cell {
    display: table-cell !important; }
  .d-xl-flex {
    display: flex !important; }
  .d-xl-inline-flex {
    display: inline-flex !important; } }

@media print {
  .d-print-none {
    display: none !important; }
  .d-print-inline {
    display: inline !important; }
  .d-print-inline-block {
    display: inline-block !important; }
  .d-print-block {
    display: block !important; }
  .d-print-table {
    display: table !important; }
  .d-print-table-row {
    display: table-row !important; }
  .d-print-table-cell {
    display: table-cell !important; }
  .d-print-flex {
    display: flex !important; }
  .d-print-inline-flex {
    display: inline-flex !important; } }

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden; }
  .embed-responsive::before {
    display: block;
    content: ""; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-21by9::before {
  padding-top: 42.85714%; }

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

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

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

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

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

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

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

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

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

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

.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 {
    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 {
  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: #dc3545 !important; }

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

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

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

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

a.text-dark:hover, a.text-dark:focus {
  color: #1d2124 !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; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmNzcyIsInNvdXJjZXMiOlsiYm9vdHN0cmFwLnNjc3MiLCJib290c3RyYXAvX2Z1bmN0aW9ucy5zY3NzIiwiYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsImJvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9faG92ZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19iYWRnZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Zpc2liaWxpdHkuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2FsZXJ0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jYXJldC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbGlzdHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JveC1zaGFkb3cuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2Zsb2F0LnNjc3MiLCJib290c3RyYXAvX3Jvb3Quc2NzcyIsImJvb3RzdHJhcC9fcmVib290LnNjc3MiLCJib290c3RyYXAvX3R5cGUuc2NzcyIsImJvb3RzdHJhcC9faW1hZ2VzLnNjc3MiLCJib290c3RyYXAvX2NvZGUuc2NzcyIsImJvb3RzdHJhcC9fZ3JpZC5zY3NzIiwiYm9vdHN0cmFwL190YWJsZXMuc2NzcyIsImJvb3RzdHJhcC9fZm9ybXMuc2NzcyIsImJvb3RzdHJhcC9fYnV0dG9ucy5zY3NzIiwiYm9vdHN0cmFwL190cmFuc2l0aW9ucy5zY3NzIiwiYm9vdHN0cmFwL19kcm9wZG93bi5zY3NzIiwiYm9vdHN0cmFwL19idXR0b24tZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9faW5wdXQtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9fY3VzdG9tLWZvcm1zLnNjc3MiLCJib290c3RyYXAvX25hdi5zY3NzIiwiYm9vdHN0cmFwL19uYXZiYXIuc2NzcyIsImJvb3RzdHJhcC9fY2FyZC5zY3NzIiwiYm9vdHN0cmFwL19icmVhZGNydW1iLnNjc3MiLCJib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsImJvb3RzdHJhcC9fYmFkZ2Uuc2NzcyIsImJvb3RzdHJhcC9fanVtYm90cm9uLnNjc3MiLCJib290c3RyYXAvX2FsZXJ0LnNjc3MiLCJib290c3RyYXAvX3Byb2dyZXNzLnNjc3MiLCJib290c3RyYXAvX21lZGlhLnNjc3MiLCJib290c3RyYXAvX2xpc3QtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9fY2xvc2Uuc2NzcyIsImJvb3RzdHJhcC9fbW9kYWwuc2NzcyIsImJvb3RzdHJhcC9fdG9vbHRpcC5zY3NzIiwiYm9vdHN0cmFwL19wb3BvdmVyLnNjc3MiLCJib290c3RyYXAvX2Nhcm91c2VsLnNjc3MiLCJib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2NsZWFyZml4LnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19kaXNwbGF5LnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZmxleC5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3RleHQuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsImJvb3RzdHJhcC9fcHJpbnQuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEJvb3RzdHJhcCB2NC4wLjAgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcbiAqIENvcHlyaWdodCAyMDExLTIwMTggVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE4IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cblxuQGltcG9ydCBcImJvb3RzdHJhcC9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21peGluc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yb290XCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3JlYm9vdFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90eXBlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2ltYWdlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jb2RlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dyaWRcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdGFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Zvcm1zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2lucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2N1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9uYXZcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbmF2YmFyXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2NhcmRcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JhZGdlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2p1bWJvdHJvblwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9hbGVydFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wcm9ncmVzc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9tZWRpYVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Nsb3NlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21vZGFsXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Rvb2x0aXBcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcG9wb3ZlclwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jYXJvdXNlbFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC91dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcHJpbnRcIjtcbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdXRhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIEFub3RoZXIgZ3JpZCBtaXhpbiB0aGF0IGVuc3VyZXMgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwKSB7XG4gICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiBgJGdyaWQtYnJlYWtwb2ludHNgIG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG5AZnVuY3Rpb24gY29sb3IteWlxKCRjb2xvcikge1xuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gICR5aXE6ICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpIC8gMTAwMDtcblxuICBAaWYgKCR5aXEgPj0gJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZCkge1xuICAgIEByZXR1cm4gJHlpcS10ZXh0LWRhcms7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHlpcS10ZXh0LWxpZ2h0O1xuICB9XG59XG5cbi8vIFJldHJpZXZlIGNvbG9yIFNhc3MgbWFwc1xuQGZ1bmN0aW9uIGNvbG9yKCRrZXk6IFwiYmx1ZVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yKCRrZXk6IFwicHJpbWFyeVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIGdyYXkoJGtleTogXCIxMDBcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGdyYXlzLCAka2V5KTtcbn1cblxuLy8gUmVxdWVzdCBhIHRoZW1lIGNvbG9yIGxldmVsXG5AZnVuY3Rpb24gdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLW5hbWU6IFwicHJpbWFyeVwiLCAkbGV2ZWw6IDApIHtcbiAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XG4gICRjb2xvci1iYXNlOiBpZigkbGV2ZWwgPiAwLCAjMDAwLCAjZmZmKTtcbiAgJGxldmVsOiBhYnMoJGxldmVsKTtcblxuICBAcmV0dXJuIG1peCgkY29sb3ItYmFzZSwgJGNvbG9yLCAkbGV2ZWwgKiAkdGhlbWUtY29sb3ItaW50ZXJ2YWwpO1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuXG4vL1xuLy8gQ29sb3Igc3lzdGVtXG4vL1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZVxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuJGdyYXlzOiBtYXAtbWVyZ2UoKFxuICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgXCIzMDBcIjogJGdyYXktMzAwLFxuICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgXCI2MDBcIjogJGdyYXktNjAwLFxuICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgXCI5MDBcIjogJGdyYXktOTAwXG4pLCAkZ3JheXMpO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4kY29sb3JzOiBtYXAtbWVyZ2UoKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSwgJGNvbG9ycyk7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZSgoXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbiksICR0aGVtZS1jb2xvcnMpO1xuLy8gc3R5bGVsaW50LWVuYWJsZVxuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZVxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoKFxuICAwOiAwLFxuICAxOiAoJHNwYWNlciAqIC4yNSksXG4gIDI6ICgkc3BhY2VyICogLjUpLFxuICAzOiAkc3BhY2VyLFxuICA0OiAoJHNwYWNlciAqIDEuNSksXG4gIDU6ICgkc3BhY2VyICogMylcbiksICRzcGFjZXJzKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbiRzaXplczogbWFwLW1lcmdlKChcbiAgMjU6IDI1JSxcbiAgNTA6IDUwJSxcbiAgNzU6IDc1JSxcbiAgMTAwOiAxMDAlXG4pLCAkc2l6ZXMpO1xuLy8gc3R5bGVsaW50LWVuYWJsZVxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTIzMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBGb250c1xuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMC44NzVyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIC44NzUpICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgMS4xMjVyZW0gIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAoJHNwYWNlciAvIDIpICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJGdyYXktOTAwLCA3LjUlKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogJGlucHV0LWJ0bi1saW5lLWhlaWdodCkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lcn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXItc206ICAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1zbSAqICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20pICsgKCRpbnB1dC1idG4tcGFkZGluZy15LXNtICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyLWxnOiAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtbGcgKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLWxnfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA0JyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNFJTNDY2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM0UlM0NwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpLCAwIDAgNXB4IHJnYmEoJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yLCAuNSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgIDc1JSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgIDEyNSUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIGNhbGMoI3skY2FyZC1ib3JkZXItcmFkaXVzfSAtICN7JGNhcmQtYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgKCRncmlkLWd1dHRlci13aWR0aCAvIDIpICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6IDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogLjc1KSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjUtMi41LTIuNSAyLjUtMi41LTEuNS0xLjV6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZD0nTTIuNzUgMGwtMS41IDEuNSAyLjUgMi41LTIuNSAyLjUgMS41IDEuNSA0LTQtNC00eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gVG9nZ2xlc1xuLy9cbi8vIFVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBnbG9iYWwgdmFyaWFibGVzIHRvIGVuYWJsZSBjZXJ0YWluIHRoZW1lIGZlYXR1cmVzLlxuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaG92ZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYmFkZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NjcmVlbi1yZWFkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1oaWRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtdHJ1bmNhdGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmlzaWJpbGl0eVwiO1xuXG4vLyAvLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0XCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyAvLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ib3gtc2hhZG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL3ZlbmRvci1wcmVmaXhlc1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdHJhbnNpdGlvblwiO1xuXG4vLyAvLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbi8vIEBpbXBvcnQgXCJtaXhpbnMvbmF2YmFyLWFsaWduXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZmxvYXRcIjtcbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDJweCwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW5mcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGluZGVudGF0aW9uXG5cbi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2FsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPU+KAlGFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHN1ZWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGluZGVudGF0aW9uLCBtZWRpYS1xdWVyeS1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gICZbaHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1ibG9jay1uby1kdXBsaWNhdGUtcHJvcGVydGllc1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFZpc2liaWxpdHlcblxuQG1peGluIGludmlzaWJsZSgkdmlzaWJpbGl0eSkge1xuICB2aXNpYmlsaXR5OiAkdmlzaWJpbGl0eSAhaW1wb3J0YW50O1xufVxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGJvcmRlciwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRib3JkZXIsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGJvcmRlciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuIiwiQG1peGluIGNhcmV0LWRvd24ge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtd2lkdGggKiAuODU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXA7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC13aWR0aCAqIC44NTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC13aWR0aCAqIC44NTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAoJHNwYWNlciAvIDIpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvcikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkZm9ybS1mZWVkYmFjay1mb250LXNpemU7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogLjVyZW07XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAuOCk7XG4gICAgYm9yZGVyLXJhZGl1czogLjJyZW07XG4gIH1cblxuICAuZm9ybS1jb250cm9sLFxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAyNSUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRib2R5LWJnLCAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHsgYm9yZGVyLWNvbG9yOiBpbmhlcml0OyB9XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG4iLCJAbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG4gIH1cbn1cbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xuLy9cbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgd2lsbCBiZSByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KXtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4vL1xuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkYm94bW9kZWw7XG59XG5cbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXG5AbWl4aW4gY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiAkbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiAkbW9kZTsgLy8gSUUxMCtcbiAgICAgICAtby1oeXBoZW5zOiAkbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAgIHsgY29sb3I6ICRjb2xvcjsgICAvLyBGaXJlZm94XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTsgfSAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgICAgICAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuLy8gVHJhbnNmb3JtYXRpb25zXG5AbWl4aW4gc2NhbGUoJHJhdGlvLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG59XG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG59XG5AbWl4aW4gc2tldygkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xufVxuQG1peGluIHJvdGF0ZSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vLyBUcmFuc2l0aW9uc1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCJAbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDsgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkZ3V0dGVyIC8gMik7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogbm9uZTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2Utcm93KCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIC0yKTtcbiAgbWFyZ2luLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAtMik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4OyAvLyBQcmV2ZW50IGNvbGxhcHNpbmdcbiAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AbWl4aW4gZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5AbWl4aW4gZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbkBtaXhpbiBmbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtbm8tdmVuZG9yLXByZWZpeCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIFNldHRpbmcgQHZpZXdwb3J0IGNhdXNlcyBzY3JvbGxiYXJzIHRvIG92ZXJsYXAgY29udGVudCBpbiBJRTExIGFuZCBFZGdlLCBzb1xuLy8gICAgd2UgZm9yY2UgYSBub24tb3ZlcmxhcHBpbmcsIG5vbi1hdXRvLWhpZGluZyBzY3JvbGxiYXIgdG8gY291bnRlcmFjdC5cbi8vIDYuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbi8vIElFMTArIGRvZXNuJ3QgaG9ub3IgYDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiPmAgaW4gc29tZSBjYXNlcy5cbkBhdC1yb290IHtcbiAgQC1tcy12aWV3cG9ydCB7XG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgfVxufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG5hcnRpY2xlLCBhc2lkZSwgZGlhbG9nLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlIHRoZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cblxuLy8gU3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmUgb24gZWxlbWVudHMgdGhhdCBjYW5ub3QgYmUgYWNjZXNzZWQgdmlhIGtleWJvYXJkLlxuLy8gVGhpcyBwcmV2ZW50cyBhbiB1bndhbnRlZCBmb2N1cyBvdXRsaW5lIGZyb20gYXBwZWFyaW5nIGFyb3VuZCBlbGVtZW50cyB0aGF0XG4vLyBtaWdodCBzdGlsbCByZXNwb25kIHRvIHBvaW50ZXIgZXZlbnRzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZVxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICBib3JkZXItYm90dG9tOiAwOyAvLyAxXG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLVxufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmb250LXdlaWdodC1ub3RhdGlvblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgZm9udC13ZWlnaHQtbm90YXRpb25cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLy8gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKVxuLy8gd2hpY2ggaGF2ZSBub3QgYmVlbiBtYWRlIGV4cGxpY2l0bHkga2V5Ym9hcmQtZm9jdXNhYmxlICh3aXRob3V0IHRhYmluZGV4KS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmb250LWZhbWlseS1uby1kdXBsaWNhdGUtbmFtZXNcbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICBmb250LXNpemU6IDFlbTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBmb250LWZhbWlseS1uby1kdXBsaWNhdGUtbmFtZXNcblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gV2UgaGF2ZSBAdmlld3BvcnQgc2V0IHdoaWNoIGNhdXNlcyBzY3JvbGxiYXJzIHRvIG92ZXJsYXAgY29udGVudCBpbiBJRTExIGFuZCBFZGdlLCBzb1xuICAvLyB3ZSBmb3JjZSBhIG5vbi1vdmVybGFwcGluZywgbm9uLWF1dG8taGlkaW5nIHNjcm9sbGJhciB0byBjb3VudGVyYWN0LlxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUVcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxudGgge1xuICAvLyBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGZyb20gdGhlIGA8Ym9keT5gLCBvciB0aGVcbiAgLy8gY2xvc2VzdCBwYXJlbnQgd2l0aCBhIHNldCBgdGV4dC1hbGlnbmAuXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcbi8vIHJlc3VsdHMgaW4gYSBsb3NzIG9mIHRoZSBkZWZhdWx0IGBidXR0b25gIGZvY3VzIHN0eWxlcy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAxcHggZG90dGVkO1xuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICBwYWRkaW5nOiAwOyAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtXG59XG5cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCBhcHBlYXJhbmNlIG9mIHRlbXBvcmFsIGlucHV0cyB0byBhdm9pZCBhIE1vYmlsZSBTYWZhcmlcbiAgLy8gYnVnIHdoZXJlIHNldHRpbmcgYSBjdXN0b20gbGluZS1oZWlnaHQgcHJldmVudHMgdGV4dCBmcm9tIGJlaW5nIHZlcnRpY2FsbHlcbiAgLy8gY2VudGVyZWQgd2l0aGluIHRoZSBpbnB1dC5cbiAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbiAgLy8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTEyNjZcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogJGgxLWZvbnQtc2l6ZTsgfVxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogJGgyLWZvbnQtc2l6ZTsgfVxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZTsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogJGg0LWZvbnQtc2l6ZTsgfVxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGg2LWZvbnQtc2l6ZTsgfVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiAkZGlzcGxheTEtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBmb250LXNpemU6ICRkaXNwbGF5Mi1zaXplO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXkzLXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgZm9udC1zaXplOiAkZGlzcGxheTQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBmb250LXNpemU6ICRibG9ja3F1b3RlLWZvbnQtc2l6ZTtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogODAlOyAvLyBiYWNrIHRvIGRlZmF1bHQgZm9udC1zaXplXG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0IFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAoJHNwYWNlciAvIDIpO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgZm9udC1zaXplOiAkZmlndXJlLWNhcHRpb24tZm9udC1zaXplO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW5saW5lIGFuZCBibG9jayBjb2RlIHN0eWxlc1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBmb250LXNpemU6ICRjb2RlLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBmb250LXNpemU6ICRrYmQtZm9udC1zaXplO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGtiZC1ib3gtc2hhZG93KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAuY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoKTtcbiAgfVxufVxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRoIDEwMCUgd2lkdGggZm9yXG4vLyBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG59XG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXJlZCB2ZXJzaW9uXG4vL1xuLy8gQWRkIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAtOSkpO1xufVxuXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsICR0YWJsZS1hY3RpdmUtYmcpO1xuXG5cbi8vIERhcmsgc3R5bGVzXG4vL1xuLy8gU2FtZSB0YWJsZSBtYXJrdXAsIGJ1dCBpbnZlcnRlZCBjb2xvciBzY2hlbWU6IGRhcmsgYmFja2dyb3VuZCBhbmQgbGlnaHQgdGV4dC5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi50YWJsZSB7XG4gIC50aGVhZC1kYXJrIHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC50aGVhZC1saWdodCB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1oZWFkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1kYXJrIHtcbiAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcblxuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoIHtcbiAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCB7XG4gICAgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDA1N1xuXG4gICAgICAgIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlciBvbiBob3Jpem9udGFsIHNjcm9sbCBkdWUgdG8gdXNlIG9mIGBkaXNwbGF5OiBibG9jaztgXG4gICAgICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgLy8gTWFudWFsbHkgdXNlIHRoZSBpZi9lbHNlIGluc3RlYWQgb2YgdGhlIG1peGluIHRvIGFjY291bnQgZm9yIGlPUyBvdmVycmlkZVxuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICB9IEBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2UgdW5kbyB0aGUgaU9TIGRlZmF1bHRcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXl9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPi88bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXNpemU6IGluaGVyaXQ7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktbGd9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktc219ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gVGhlIGAuZm9ybS1ncm91cC0qIGZvcm0tY29udHJvbGAgdmFyaWF0aW9ucyBhcmUgc2FkbHkgZHVwbGljYXRlZCB0byBhdm9pZCB0aGVcbi8vIGlzc3VlIGRvY3VtZW50ZWQgaW4gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNTA3NC5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbC1zbSB7XG4gICY6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbC1sZyB7XG4gICY6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG59XG5cblxuLy8gRm9ybSBncmlkXG4vL1xuLy8gU3BlY2lhbCByZXBsYWNlbWVudCBmb3Igb3VyIGdyaWQgc3lzdGVtJ3MgYC5yb3dgIGZvciB0aWdodGVyIGZvcm0gbGF5b3V0cy5cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuXG4gID4gLmNvbCxcbiAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLmZvcm0tY2hlY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcblxuICAmOmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgYmFzZSAuZm9ybS1jaGVja1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcblxuICAvLyBVbmRvIC5mb3JtLWNoZWNrLWlucHV0IGRlZmF1bHRzIGFuZCBhZGQgc29tZSBgbWFyZ2luLXJpZ2h0YC5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKFwidmFsaWRcIiwgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IpO1xuQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKFwiaW52YWxpZFwiLCAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yKTtcblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gUHJldmVudCBzaG9ydGVyIGVsZW1lbnRzIGZyb20gZ3Jvd2luZyB0byBzYW1lIGhlaWdodCBhcyBvdGhlcnMgKGUuZy4sIHNtYWxsIGJ1dHRvbnMgZ3Jvd2luZyB0byBub3JtYWwgc2l6ZWQgYnV0dG9uIGhlaWdodClcblxuICAvLyBCZWNhdXNlIHdlIHVzZSBmbGV4LCB0aGUgaW5pdGlhbCBzaXppbmcgb2YgY2hlY2tib3hlcyBpcyBjb2xsYXBzZWQgYW5kXG4gIC8vIGRvZXNuJ3Qgb2NjdXB5IHRoZSBmdWxsLXdpZHRoICh3aGljaCBpcyB3aGF0IHdlIHdhbnQgZm9yIHhzIGdyaWQgdGllciksXG4gIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cbiAgLmZvcm0tY2hlY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGZvbnQtc2l6ZS1iYXNlLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgLy8gU2hhcmUgaG92ZXIgYW5kIGZvY3VzIHN0eWxlc1xuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAvLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgLmJ0biBlbGVtZW50c1xuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWZvY3VzLWJveC1zaGFkb3csICRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldDpkaXNhYmxlZCBhLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRidG4tbGluZS1oZWlnaHQtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRidG4tbGluZS1oZWlnaHQtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XG4gIH1cbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmLnNob3cge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG50ciB7XG4gICYuY29sbGFwc2Uuc2hvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93O1xuICB9XG59XG5cbnRib2R5IHtcbiAgJi5jb2xsYXBzZS5zaG93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG59XG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tc3BhY2VyIDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTsgLy8gUmVkZWNsYXJlIGJlY2F1c2UgbmVzdGluZyBjYW4gY2F1c2UgaW5oZXJpdGFuY2UgaXNzdWVzXG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnKTtcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMCAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAuYnRuLFxuICAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0biArIC5idG4sXG4gID4gLmJ0biArIC5idG4tZ3JvdXAsXG4gID4gLmJ0bi1ncm91cCArIC5idG4sXG4gID4gLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAvLyBBZGQgd2lkdGggMSUgYW5kIGZsZXgtYmFzaXMgYXV0byB0byBlbnN1cmUgdGhhdCBidXR0b24gd2lsbCBub3Qgd3JhcCBvdXRcbiAgICAvLyB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFIEVkZ2UrIGFuZCBGaXJlZm94LiBDaHJvbWUgZG9lcyBub3QgcmVxdWlyZSB0aGlzLlxuICAgIHdpZHRoOiAxJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gIC8vIEN1c3RvbSBmaWxlIGlucHV0cyBoYXZlIG1vcmUgY29tcGxleCBtYXJrdXAsIHRodXMgcmVxdWlyaW5nIGRpZmZlcmVudFxuICAvLyBib3JkZXItcmFkaXVzIG92ZXJyaWRlcy5cbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YmVmb3JlIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjpiZWZvcmUgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZFxuLy9cbi8vIFdoaWxlIGl0IHJlcXVpcmVzIG9uZSBleHRyYSBsYXllciBvZiBIVE1MIGZvciBlYWNoLCBkZWRpY2F0ZWQgcHJlcGVuZCBhbmRcbi8vIGFwcGVuZCBlbGVtZW50cyBhbGxvdyB1cyB0byAxKSBiZSBsZXNzIGNsZXZlciwgMikgc2ltcGxpZnkgb3VyIHNlbGVjdG9ycywgYW5kXG4vLyAzKSBzdXBwb3J0IEhUTUw1IGZvcm0gdmFsaWRhdGlvbi5cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQgeyBtYXJnaW4tcmlnaHQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHsgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gQWxsb3cgdXNlIG9mIDxsYWJlbD4gZWxlbWVudHMgYnkgb3ZlcnJpZGluZyBvdXIgZGVmYXVsdCBtYXJnaW4tYm90dG9tXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIEBleHRlbmQgLmZvcm0tY29udHJvbC1sZztcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIEBleHRlbmQgLmZvcm0tY29udHJvbC1zbTtcbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmQgcm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAoMXJlbSAqICRsaW5lLWhlaWdodC1iYXNlKTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogJGN1c3RvbS1jb250cm9sLXNwYWNlci14O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xOyAvLyBQdXQgdGhlIGlucHV0IGJlaGluZCB0aGUgbGFiZWwgc28gaXQgZG9lc24ndCBvdmVybGF5IHRleHRcbiAgb3BhY2l0eTogMDtcblxuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc3VlZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgLy8gQmFja2dyb3VuZC1jb2xvciBhbmQgKHdoZW4gZW5hYmxlZCkgZ3JhZGllbnRcbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoKCRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDIpO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gRm9yZWdyb3VuZCAoaWNvbilcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgoJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMik7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cDovL3ByaW1lcmNzcy5pby5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3Igbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuXG4gICAgJjo6LW1zLXZhbHVlIHtcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXG4gICAgICAvLyBzdXBwcmVzcyB0aGUgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBkZWZhdWx0IGNhcmV0IGluIElFMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15O1xuICBmb250LXNpemU6ICRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1sZztcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgZm9udC1zaXplOiAkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc7XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tZmlsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWJnO1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWJveC1zaGFkb3cpO1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogY2FsYygjeyRjdXN0b20tZmlsZS1oZWlnaHR9IC0gI3skY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRofSAqIDIpO1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgYm9yZGVyLWxlZnQ6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcyBvciBgPHVsPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gIC5uYXYtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAubmF2LWxpbmsge1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogI2ZmNjgyODtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTVweDtcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJpdGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbmF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCAubmF2YmFyLXRvZ2dsZXIgZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudS1yaWdodCB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gYC5kcm9wZG93bi1tZW51YFxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7ICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuZHJvcHVwIHtcbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZztcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSgkY2FyZC1zcGFjZXIteSAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxuXG4gICsgLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcbiAgbWFyZ2luLWxlZnQ6IC0oJGNhcmQtc3BhY2VyLXggLyAyKTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG4gIG1hcmdpbi1sZWZ0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG59XG5cbi5jYXJkLWltZyB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENhcmQgaW1hZ2UgY2Fwc1xuLmNhcmQtaW1nLXRvcCB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjNC1mbGV4LXNob3J0aGFuZC1kZWNsYXJhdGlvbnMtd2l0aC11bml0bGVzcy1mbGV4LWJhc2lzLXZhbHVlcy1hcmUtaWdub3JlZFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZ3JvdXAtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyM0LWZsZXgtc2hvcnRoYW5kLWRlY2xhcmF0aW9ucy13aXRoLXVuaXRsZXNzLWZsZXgtYmFzaXMtdmFsdWVzLWFyZS1pZ25vcmVkXG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpvbmx5LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpub3QoOm9ubHktY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWhlYWRlcixcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29sdW1uc1xuLy9cblxuLmNhcmQtY29sdW1ucyB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1jb2x1bW5zLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBjb2x1bW4tY291bnQ6ICRjYXJkLWNvbHVtbnMtY291bnQ7XG4gICAgY29sdW1uLWdhcDogJGNhcmQtY29sdW1ucy1nYXA7XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIERvbid0IGxldCB0aGVtIHZlcnRpY2FsbHkgc3BhbiBtdWx0aXBsZSBjb2x1bW5zXG4gICAgICB3aWR0aDogMTAwJTsgLy8gRG9uJ3QgbGV0IHRoZWlyIHdpZHRoIGNoYW5nZVxuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IDE2cHggMjJweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gU3VwcHJlc3MgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvciBpbiBtb2Rlcm4gYnJvd3NlcnNcbiAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgY29udGVudDogXCIjeyRicmVhZGNydW1iLWRpdmlkZXJ9XCI7XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtYXJnaW4tbGVmdDogLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBib3JkZXI6ICRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIC5wYWdlLWxpbmsgZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gT3BpbmlvbmF0ZWQ6IHJlbW92ZSB0aGUgXCJoYW5kXCIgY3Vyc29yIHNldCBwcmV2aW91c2x5IGZvciAucGFnZS1saW5rXG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJGJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkYmFkZ2UtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpICRqdW1ib3Ryb24tcGFkZGluZztcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogKCRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMik7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmFsZXJ0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJvcmRlci1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWNvbG9yLWxldmVsKSk7XG4gIH1cbn1cbiIsIkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGZvbnQtc2l6ZTogJHByb2dyZXNzLWZvbnQtc2l6ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc7XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xuICBtYXJnaW4tYm90dG9tOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2FjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogJGNsb3NlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIG9wYWNpdHk6IC41O1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiAuNzU7XG4gIH1cblxuICAvLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgLmNsb3NlIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXgsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuLy8gc3R5bGVsaW50LWVuYWJsZVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxuXG4gIC5tb2RhbC1vcGVuICYge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjUlKTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gKCN7JG1vZGFsLWRpYWxvZy1tYXJnaW59ICogMikpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nKSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZykgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gc2hvdWxkIHRoZXJlIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG5cbiAgLy8gRWFzaWx5IHBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7IG1hcmdpbi1sZWZ0OiAuMjVyZW07IH1cbiAgPiA6bm90KDpsYXN0LWNoaWxkKSB7IG1hcmdpbi1yaWdodDogLjI1cmVtOyB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gKCN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cH0gKiAyKSk7XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG5cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcgeyBtYXgtd2lkdGg6ICRtb2RhbC1sZzsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBmb250LXNpemU6ICRwb3BvdmVyLWZvbnQtc2l6ZTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJGJvcmRlci1yYWRpdXMtbGc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlLFxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUge1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgfVxuXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJGJvcmRlci1yYWRpdXMtbGcgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgbGVmdDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgdG9wOiBjYWxjKCgjeyRwb3BvdmVyLWFycm93LWhlaWdodH0gKyAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICogLTEpO1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAtMik7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiBjYWxjKCgjeyRwb3BvdmVyLWFycm93LWhlaWdodH0gKyAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICogLTEpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRib3JkZXItcmFkaXVzLWxnIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlLFxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgfVxuXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgJG9mZnNldC1ib3JkZXItd2lkdGg6IGNhbGMoI3skYm9yZGVyLXJhZGl1cy1sZ30gLSAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkb2Zmc2V0LWJvcmRlci13aWR0aCk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBlcnNwZWN0aXZlOiAxMDAwcHg7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG59XG5cbi8vIENTUzMgdHJhbnNmb3JtcyB3aGVuIHN1cHBvcnRlZCBieSB0aGUgYnJvd3NlclxuLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cbiAgQHN1cHBvcnRzICh0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuXG4gIEBzdXBwb3J0cyAodHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZCkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldixcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcblxuICBAc3VwcG9ydHMgKHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICAvLyBXZSBjYW4ndCBoYXZlIGEgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXG4gIC8vIGFuaW1hdGlvbiBpZiB5b3UgdHJpcCB0aGlzIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciBhbmltYXRpb24uXG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAuOTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsIDAsIDAsIC4yNSksIHJnYmEoMCwgMCwgMCwgLjAwMSkpO1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAuMjUpLCByZ2JhKDAsIDAsIDAsIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZztcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZztcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gb3ZlcnJpZGUgPG9sPiBkZWZhdWx0XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZywgLjUpO1xuXG4gICAgLy8gVXNlIHBzZXVkbyBjbGFzc2VzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xMHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQGltcG9ydCBcInV0aWxpdGllcy9hbGlnblwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9iYWNrZ3JvdW5kXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2JvcmRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZGlzcGxheVwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9lbWJlZFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9mbGV4XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2Zsb2F0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NjcmVlbnJlYWRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2l6aW5nXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NwYWNpbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdGV4dFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy92aXNpYmlsaXR5XCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmQjeyRpbmZpeH0tbm9uZSAgICAgICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0taW5saW5lICAgICAgIHsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWJsb2NrICAgICAgICB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZSAgICAgICAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tdGFibGUtcm93ICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZS1jZWxsICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1mbGV4ICAgICAgICAgeyBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtZmxleCAgeyBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIC5kLXByaW50LW5vbmUgICAgICAgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUgICAgICAgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1ibG9jayAgICAgICAgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LXRhYmxlICAgICAgICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUtcm93ICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUtY2VsbCAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWZsZXggICAgICAgICB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtZmxleCAgeyBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMjFieTkge1xuICAmOjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDkgLyAyMSk7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMTZieTkge1xuICAmOjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDkgLyAxNik7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoMyAvIDQpO1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTFieTEge1xuICAmOjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDEgLyAxKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCJAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBAaW5jbHVkZSBmbG9hdC1sZWZ0OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgQGluY2x1ZGUgZmxvYXQtcmlnaHQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBAaW5jbHVkZSBmbG9hdC1ub25lOyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb21tb24gdmFsdWVzXG5cbi8vIFNhc3MgbGlzdCBub3QgaW4gdmFyaWFibGVzIHNpbmNlIGl0J3Mgbm90IGludGVuZGVkIGZvciBjdXN0b21pemF0aW9uLlxuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3k7XG5cbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuXG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGU7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgpO1xufVxuIiwiLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIEBpbmNsdWRlIGludmlzaWJsZSh2aXNpYmxlKTtcbn1cblxuLmludmlzaWJsZSB7XG4gIEBpbmNsdWRlIGludmlzaWJsZShoaWRkZW4pO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHA6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmICRlbmFibGUtcHJpbnQtc3R5bGVzIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgb3V0IGBjb2xvcmAgYW5kIGBiYWNrZ3JvdW5kYFxuICAgICAgLy9jb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBodHRwOi8vd3d3LnNhbmJlaWppLmNvbS9hcmNoaXZlcy85NTNcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOm5vdCguYnRuKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xuICAgIC8vICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAvL31cblxuICAgIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICAvL1xuXG4gICAgLy9hW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcbiAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgIC8vfVxuXG4gICAgcHJlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgIzk5OTsgICAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gUHJpbnRpbmcgVGFibGVzOlxuICAgIC8vIGh0dHA6Ly9jc3MtZGlzY3Vzcy5pbmN1dGlvLmNvbS93aWtpL1ByaW50aW5nX1RhYmxlc1xuICAgIC8vXG5cbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIFNwZWNpZnkgYSBzaXplIGFuZCBtaW4td2lkdGggdG8gbWFrZSBwcmludGluZyBjbG9zZXIgYWNyb3NzIGJyb3dzZXJzLlxuICAgIC8vIFdlIGRvbid0IHNldCBtYXJnaW4gaGVyZSBiZWNhdXNlIGl0IGJyZWFrcyBgc2l6ZWAgaW4gQ2hyb21lLiBXZSBhbHNvXG4gICAgLy8gZG9uJ3QgdXNlIGAhaW1wb3J0YW50YCBvbiBgc2l6ZWAgYXMgaXQgYnJlYWtzIGluIENocm9tZS5cbiAgICBAcGFnZSB7XG4gICAgICBzaXplOiAkcHJpbnQtcGFnZS1zaXplO1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAgIC5uYXZiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAjMDAwO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QW1DTEgsQUFBQSxLQUFLLENBQUM7RUFHRixNQUFXLEVBQUcsT0FBQztFQUFmLFFBQVcsRUFBRyxPQUFDO0VBQWYsUUFBVyxFQUFHLE9BQUM7RUFBZixNQUFXLEVBQUcsT0FBQztFQUFmLEtBQVcsRUFBRyxPQUFDO0VBQWYsUUFBVyxFQUFHLE9BQUM7RUFBZixRQUFXLEVBQUcsT0FBQztFQUFmLE9BQVcsRUFBRyxPQUFDO0VBQWYsTUFBVyxFQUFHLE9BQUM7RUFBZixNQUFXLEVBQUcsT0FBQztFQUFmLE9BQVcsRUFBRyxJQUFDO0VBQWYsTUFBVyxFQUFHLE9BQUM7RUFBZixXQUFXLEVBQUcsT0FBQztFQUlmLFNBQVcsRUFBRyxPQUFDO0VBQWYsV0FBVyxFQUFHLE9BQUM7RUFBZixTQUFXLEVBQUcsT0FBQztFQUFmLE1BQVcsRUFBRyxPQUFDO0VBQWYsU0FBVyxFQUFHLE9BQUM7RUFBZixRQUFXLEVBQUcsT0FBQztFQUFmLE9BQVcsRUFBRyxPQUFDO0VBQWYsTUFBVyxFQUFHLE9BQUM7RUFJZixlQUFtQixFQUFjLENBQUM7RUFBbEMsZUFBbUIsRUFBYyxL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LENBQUMsQ0FBQyxTQUE0QjtFQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7O0FBRkQsQUFBQSxNQUFNLENBQU47RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtFQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0REaEM7O0FBRkQsQUFBQSxNQUFNLENBQU47RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtFQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7O0FBRkQsQUFBQSxNQUFNLENBQU47RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtFQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7O0FBRkQsQUFBQSxNQUFNLENBQU47RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtFQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0REaEM7O0FBRkQsQUFBQSxNQUFNLENBQU47RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtFQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7O0FBRkQsQUFBQSxNQUFNLENBQU47RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtFQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7O0FBRkQsQUFBQSxNQUFNLENBQU47RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtFQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0REaEM7O0FBRkQsQUFBQSxPQUFPLENBQVA7RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtFQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7O0FBRkQsQUFBQSxPQUFPLENBQVA7RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtFQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7O0FBRkQsQUFBQSxPQUFPLENBQVA7RUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUE0QjtFQUl0QyxTQUFTLEVBQUUsSUFBNEIsR0REaEM7O0FBR0gsQUFBQSxZQUFZLENBQVo7RUFBRSxLQUFLLEVBQUUsRUFBRSxHQUFLOztBQUVoQixBQUFBLFdBQVcsQ0FBWDtFQUFFLEtBQUssRUFBRSxFQUFZLEdBQUk7O0FBR3ZCLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUMsR0FDRzs7QUFBZixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7O0FBQWYsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHOztBQUFmLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUMsR0FDRzs7QUFBZixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7O0FBQWYsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHOztBQUFmLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUMsR0FDRzs7QUFBZixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7O0FBQWYsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHOztBQUFmLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUMsR0FDRzs7QUFBZixBQUFBLFNBQVMsQ0FBVDtFQUFFLEtBQUssRUFESSxFQUFDLEdBQ0c7O0FBQWYsQUFBQSxTQUFTLENBQVQ7RUFBRSxLQUFLLEVBREksRUFBQyxHQUNHOztBQUFmLEFBQUEsU0FBUyxDQUFUO0VBQUUsS0FBSyxFQURJLEVBQUMsR0FDRzs7QUFNYixBQUFBLFNBQVMsQ0FBVDtFQ1JSLFdBQVcsRUFBbUIsUUFBZ0IsR0RVckM7O0FBRkQsQUFBQSxTQUFTLENBQVQ7RUNSUixXQUFXLEVBQW1CLFNBQWdCLEdEVXJDOztBQUZELEFBQUEsU0FBUyxDQUFUO0VDUlIsV0FBVyxFQUFtQixHQUFnQixHRFVyQzs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQ1JSLFdBQVcsRUFBbUIsU0FBZ0IsR0RVckM7O0FBRkQsQUFBQSxTQUFTLENBQVQ7RUNSUixXQUFXLEVBQW1CLFNBQWdCLEdEVXJDOztBQUZELEFBQUEsU0FBUyxDQUFUO0VDUlIsV0FBVyxFQUFtQixHQUFnQixHRFVyQzs7QUFGRCxBQUFBLFNBQVMsQ0FBVDtFQ1JSLFdBQVcsRUFBbUIsU0FBZ0IsR0RVckM7O0FBRkQsQUFBQSxTQUFTLENBQVQ7RUNSUixXQUFXLEVBQW1CLFNBQWdCLEdEVXJDOztBQUZELEFBQUEsU0FBUyxDQUFUO0VDUlIsV0FBVyxFQUFtQixHQUFnQixHRFVyQzs7QUFGRCxBQUFBLFVBQVUsQ0FBVjtFQ1JSLFdBQVcsRUFBbUIsU0FBZ0IsR0RVckM7O0FBRkQsQUFBQSxVQUFVLENBQVY7RUNSUixXQUFXLEVBQW1CLFNBQWdCLEdEVXJDOztBNUJBUCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RTRCOUJ0QixBQUFBLE9BQU8sQ0FBUDtJQUNFLFVBQVUsRUFBRSxDQUFDO0lBQ2IsU0FBUyxFQUFFLENBQUM7SUFDWixTQUFTLEVBQUUsSUFBSSxHQUNoQjtFQUNELEFBQUEsWUFBWSxDQUFaO0lBQ0UsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVBQUUsSUFBSTtJQUNYLFNBQVMsRUFBRSxJQUFJLEdBQ2hCO0VBR0MsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUE0QjtJQUl0QyxTQUFTLEVBQUUsUUFBNEIsR0REaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRERoQztFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCLEdERGhDO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRERoQztFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCLEdERGhDO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRERoQztFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCLEdERGhDO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRERoQztFQUZELEFBQUEsVUFBVSxDQUFWO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBNEI7SUFJdEMsU0FBUyxFQUFFLElBQTRCLEdERGhDO0VBR0gsQUFBQSxlQUFlLENBQWY7SUFBRSxLQUFLLEVBQUUsRUFBRSxHQUFLO0VBRWhCLEFBQUEsY0FBYyxDQUFkO0lBQUUsS0FBSyxFQUFFLEVBQVksR0FBSTtFQUd2QixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFdBQVcsQ0FBWDtJQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7RUFBZixBQUFBLFlBQVksQ0FBWjtJQUFFLEtBQUssRUFESSxFQUFDLEdBQ0c7RUFBZixBQUFBLFlBQVksQ0FBWjtJQUFFLEtBQUssRUFESSxFQUFDLEdBQ0c7RUFBZixBQUFBLFlBQVksQ0FBWjtJQUFFLEtBQUssRUFESSxFQUFDLEdBQ0c7RUFNYixBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBZ0IsQ0FBQyxHRFVuQjtFQUZELEFBQUEsWUFBWSxDQUFaO0lDUlIsV0FBVyxFQUFtQixRQUFnQixHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFaO0lDUlIsV0FBVyxFQUFtQixTQUFnQixHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFaO0lDUlIsV0FBVyxFQUFtQixHQUFnQixHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFaO0lDUlIsV0FBVyxFQUFtQixTQUFnQixHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFaO0lDUlIsV0FBVyxFQUFtQixTQUFnQixHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFaO0lDUlIsV0FBVyxFQUFtQixHQUFnQixHRFVyQztFQUZELEFBQUEsWUFBWSxDQUFaO0lDUlIsV0FBVyxFQUFtQixT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QUFBQSxXQUFXLENBQVg7SUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHO0VBQWYsQUFBQSxXQUFXLENBQVg7SUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHO0VBQWYsQUFBQSxXQUFXLENBQVg7SUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHO0VBQWYsQUFBQSxXQUFXLENBQVg7SUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHO0VBQWYsQUFBQSxXQUFXLENBQVg7SUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHO0VBQWYsQUFBQSxZQUFZLENBQVo7SUFBRSxLQUFLLEVBREksRUFBQyxHQUNHO0VBQWYsQUFBQSxZQUFZLENBQVo7SUFBRSxLQUFLLEVBREksRUFBQyxHQUNHO0VBQWYsQUFBQSxZQUFZLENBQVo7SUFBRSxLQUFLLEVBREksRUFBQyxHQUNHO0VBTWIsQUFBQSxZQUFZLENBQVo7SUNSUixXQUFXLEVBQWdCLENBQUMsR0RVbkI7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBbUIsUUFBZ0IsR0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBbUIsU0FBZ0IsR0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBbUIsR0FBZ0IsR0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBbUIsU0FBZ0IsR0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBbUIsU0FBZ0IsR0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBbUIsR0FBZ0IsR0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBbUIsU0FBZ0IsR0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBbUIsU0FBZ0IsR0RVckM7RUFGRCxBQUFBLFlBQVksQ0FBWjtJQ1JSLFdBQVcsRUFBbUIsR0FBZ0IsR0RVckM7RUFGRCxBQUFBLGFBQWEsQ0FBYjtJQ1JSLFdBQVcsRUFBbUIsU0FBZ0IsR0RVckM7RUFGRCxBQUFBLGFBQWEsQ0FB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Q0UsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVBQUUsSUFBSTtJQUNYLFNBQVMsRUFBRSxJQUFJLEdBQ2hCO0VBR0MsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUE0QjtJQUl0QyxTQUFTLEVBQUUsUUFBNEIsR0REaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRERoQztFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCLEdERGhDO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRERoQztFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCLEdERGhDO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0REaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRERoQztFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCLEdERGhDO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNETixJQUFJLEVBQUUs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 */
