<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/**
 *   thiscodeworks-boilerplate v1.0.0
 * Â© thiscode.works ~ Aug 14th 2018
 */
/*!
 * Bootstrap v4.1.1 (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)
 */
@import url("https://fonts.googleapis.com/css?family=Playfair+Display:400,900|Raleway:400,700&amp;subset=latin-ext");
: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; }

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

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

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

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

[tabindex="-1"]:focus {
  outline: 0 !important; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem; }

p {
  margin-top: 0;
  margin-bottom: 1rem; }

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0; }

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit; }

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem; }

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0; }

dt {
  font-weight: 700; }

dd {
  margin-bottom: .5rem;
  margin-left: 0; }

blockquote {
  margin: 0 0 1rem; }

dfn {
  font-style: italic; }

b,
strong {
  font-weight: bolder; }

small {
  font-size: 80%; }

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

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

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

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

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", 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: 0.5rem; }

button {
  border-radius: 0; }

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color; }

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

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

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none; }

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0; }

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

textarea {
  overflow: auto;
  resize: vertical; }

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

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

progress {
  vertical-align: baseline; }

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

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

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

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

output {
  display: inline-block; }

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

template {
  display: none; }

[hidden] {
  display: none !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.figure {
  display: inline-block; }

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

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

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-break: break-word; }
  a &gt; code {
    color: inherit; }

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

pre {
  display: block;
  font-size: 87.5%;
  color: #212529; }
  pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal; }

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

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }
  @media (min-width: 576px) {
    .container {
      max-width: 540px; } }
  @media (min-width: 768px) {
    .container {
      max-width: 720px; } }
  @media (min-width: 992px) {
    .container {
      max-width: 960px; } }
  @media (min-width: 1200px) {
    .container {
      max-width: 1140px; } }

.container-fluid {
  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 &gt; .col,
  .no-gutters &gt; [class*="col-"] {
    padding-right: 0;
    padding-left: 0; }

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  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-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0; }

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05); }

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

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

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

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

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

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

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

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

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

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

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

.table-danger,
.table-danger &gt; th,
.table-danger &gt; td {
  background-color: #f5c6cb; }

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

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

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

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

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

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

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

.table .thead-dark th {
  color: #fff;
  background-color: #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 &gt; .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 &gt; .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 &gt; .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 &gt; .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 &gt; .table-bordered {
    border: 0; }

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  @media screen and (prefers-reduced-motion: reduce) {
    .form-control {
      transition: none; } }
  .form-control::-ms-expand {
    background-color: transparent;
    border: 0; }
  .form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .form-control::placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control:disabled, .form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1; }

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

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff; }

.form-control-file,
.form-control-range {
  display: block;
  width: 100%; }

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5; }

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5; }

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5; }

.form-control-plaintext {
  display: block;
  width: 100%;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  margin-bottom: 0;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0; }
  .form-control-plaintext.form-control-sm, .input-group-sm &gt; .form-control-plaintext.form-control,
  .input-group-sm &gt; .input-group-prepend &gt; .form-control-plaintext.input-group-text,
  .input-group-sm &gt; .input-group-append &gt; .form-control-plaintext.input-group-text,
  .input-group-sm &gt; .input-group-prepend &gt; .form-control-plaintext.btn,
  .input-group-sm &gt; .input-group-append &gt; .form-control-plaintext.btn, .form-control-plaintext.form-control-lg, .input-group-lg &gt; .form-control-plaintext.form-control,
  .input-group-lg &gt; .input-group-prepend &gt; .form-control-plaintext.input-group-text,
  .input-group-lg &gt; .input-group-append &gt; .form-control-plaintext.input-group-text,
  .input-group-lg &gt; .input-group-prepend &gt; .form-control-plaintext.btn,
  .input-group-lg &gt; .input-group-append &gt; .form-control-plaintext.btn {
    padding-right: 0;
    padding-left: 0; }

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

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

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

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

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

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

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px; }
  .form-row &gt; .col,
  .form-row &gt; [class*="col-"] {
    padding-right: 5px;
    padding-left: 5px; }

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

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem; }
  .form-check-input:disabled ~ .form-check-label {
    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-control-file:valid ~ .valid-feedback,
.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,
.form-control-file.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745; }

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

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745; }
  .was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
    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-control-file:invalid ~ .invalid-feedback,
.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,
.form-control-file.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #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,
    .form-inline .custom-select {
      width: auto; }
    .form-inline .form-check {
      display: flex;
      align-items: center;
      justify-content: center;
      width: auto;
      padding-left: 0; }
    .form-inline .form-check-input {
      position: relative;
      margin-top: 0;
      margin-right: 0.25rem;
      margin-left: 0; }
    .form-inline .custom-control {
      align-items: center;
      justify-content: center; }
    .form-inline .custom-control-label {
      margin-bottom: 0; } }

.btn {
  display: inline-block;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  user-select: none;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  @media screen and (prefers-reduced-motion: reduce) {
    .btn {
      transition: none; } }
  .btn:hover, .btn:focus {
    text-decoration: none; }
  .btn:focus, .btn.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .btn.disabled, .btn:disabled {
    opacity: 0.65; }
  .btn:not(:disabled):not(.disabled) {
    cursor: pointer; }
  .btn:not(:disabled):not(.disabled):active, .btn:not(:disabled):not(.disabled).active {
    background-image: none; }

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

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff; }
  .btn-primary:hover {
    color: #fff;
    background-color: #0069d9;
    border-color: #0062cc; }
  .btn-primary:focus, .btn-primary.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }
  .btn-primary.disabled, .btn-primary:disabled {
    color: #fff;
    background-color: #007bff;
    border-color: #007bff; }
  .btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
  .show &gt; .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #0062cc;
    border-color: #005cbf; }
    .btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-primary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d; }
  .btn-secondary:hover {
    color: #fff;
    background-color: #5a6268;
    border-color: #545b62; }
  .btn-secondary:focus, .btn-secondary.focus {
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }
  .btn-secondary.disabled, .btn-secondary:disabled {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d; }
  .btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
  .show &gt; .btn-secondary.dropdown-toggle {
    color: #fff;
    background-color: #545b62;
    border-color: #4e555b; }
    .btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-secondary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745; }
  .btn-success:hover {
    color: #fff;
    background-color: #218838;
    border-color: #1e7e34; }
  .btn-success:focus, .btn-success.focus {
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }
  .btn-success.disabled, .btn-success:disabled {
    color: #fff;
    background-color: #28a745;
    border-color: #28a745; }
  .btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
  .show &gt; .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #1e7e34;
    border-color: #1c7430; }
    .btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-success.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8; }
  .btn-info:hover {
    color: #fff;
    background-color: #138496;
    border-color: #117a8b; }
  .btn-info:focus, .btn-info.focus {
    box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }
  .btn-info.disabled, .btn-info:disabled {
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8; }
  .btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
  .show &gt; .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #117a8b;
    border-color: #10707f; }
    .btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-info.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107; }
  .btn-warning:hover {
    color: #212529;
    background-color: #e0a800;
    border-color: #d39e00; }
  .btn-warning:focus, .btn-warning.focus {
    box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }
  .btn-warning.disabled, .btn-warning:disabled {
    color: #212529;
    background-color: #ffc107;
    border-color: #ffc107; }
  .btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
  .show &gt; .btn-warning.dropdown-toggle {
    color: #212529;
    background-color: #d39e00;
    border-color: #c69500; }
    .btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-warning.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545; }
  .btn-danger:hover {
    color: #fff;
    background-color: #c82333;
    border-color: #bd2130; }
  .btn-danger:focus, .btn-danger.focus {
    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 &gt; .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #bd2130;
    border-color: #b21f2d; }
    .btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-danger.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa; }
  .btn-light:hover {
    color: #212529;
    background-color: #e2e6ea;
    border-color: #dae0e5; }
  .btn-light:focus, .btn-light.focus {
    box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }
  .btn-light.disabled, .btn-light:disabled {
    color: #212529;
    background-color: #f8f9fa;
    border-color: #f8f9fa; }
  .btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
  .show &gt; .btn-light.dropdown-toggle {
    color: #212529;
    background-color: #dae0e5;
    border-color: #d3d9df; }
    .btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-light.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40; }
  .btn-dark:hover {
    color: #fff;
    background-color: #23272b;
    border-color: #1d2124; }
  .btn-dark:focus, .btn-dark.focus {
    box-shadow: 0 0 0 0.2rem rgba(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 &gt; .btn-dark.dropdown-toggle {
    color: #fff;
    background-color: #1d2124;
    border-color: #171a1d; }
    .btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-dark.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(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 &gt; .btn-outline-primary.dropdown-toggle {
    color: #fff;
    background-color: #007bff;
    border-color: #007bff; }
    .btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-outline-primary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }

.btn-outline-secondary {
  color: #6c757d;
  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 &gt; .btn-outline-secondary.dropdown-toggle {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d; }
    .btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-outline-secondary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

.btn-outline-success {
  color: #28a745;
  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 &gt; .btn-outline-success.dropdown-toggle {
    color: #fff;
    background-color: #28a745;
    border-color: #28a745; }
    .btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-outline-success.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }

.btn-outline-info {
  color: #17a2b8;
  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 &gt; .btn-outline-info.dropdown-toggle {
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8; }
    .btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-outline-info.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }

.btn-outline-warning {
  color: #ffc107;
  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 &gt; .btn-outline-warning.dropdown-toggle {
    color: #212529;
    background-color: #ffc107;
    border-color: #ffc107; }
    .btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-outline-warning.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }

.btn-outline-danger {
  color: #dc3545;
  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 &gt; .btn-outline-danger.dropdown-toggle {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545; }
    .btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-outline-danger.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.btn-outline-light {
  color: #f8f9fa;
  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 &gt; .btn-outline-light.dropdown-toggle {
    color: #212529;
    background-color: #f8f9fa;
    border-color: #f8f9fa; }
    .btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
    .show &gt; .btn-outline-light.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }

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

.btn-link {
  font-weight: 400;
  color: #007bff;
  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;
    pointer-events: none; }

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

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

.btn-block {
  display: block;
  width: 100%; }
  .btn-block + .btn-block {
    margin-top: 0.5rem; }

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

.fade {
  transition: opacity 0.15s linear; }
  @media screen and (prefers-reduced-motion: reduce) {
    .fade {
      transition: none; } }
  .fade:not(.show) {
    opacity: 0; }

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

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease; }
  @media screen and (prefers-reduced-motion: reduce) {
    .collapsing {
      transition: none; } }

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

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

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

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

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

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

.dropup .dropdown-toggle::after {
  display: inline-block;
  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 {
  top: 0;
  right: auto;
  left: 100%;
  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-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid; }

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

.dropright .dropdown-toggle::after {
  vertical-align: 0; }

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem; }

.dropleft .dropdown-toggle::after {
  display: inline-block;
  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-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto; }

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef; }

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0; }
  .dropdown-item:hover, .dropdown-item:focus {
    color: #16181b;
    text-decoration: none;
    background-color: #f8f9fa; }
  .dropdown-item.active, .dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: #007bff; }
  .dropdown-item.disabled, .dropdown-item:disabled {
    color: #6c757d;
    background-color: transparent; }

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

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

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

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle; }
  .btn-group &gt; .btn,
  .btn-group-vertical &gt; .btn {
    position: relative;
    flex: 0 1 auto; }
    .btn-group &gt; .btn:hover,
    .btn-group-vertical &gt; .btn:hover {
      z-index: 1; }
    .btn-group &gt; .btn:focus, .btn-group &gt; .btn:active, .btn-group &gt; .btn.active,
    .btn-group-vertical &gt; .btn:focus,
    .btn-group-vertical &gt; .btn:active,
    .btn-group-vertical &gt; .btn.active {
      z-index: 1; }
  .btn-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 &gt; .btn:first-child {
  margin-left: 0; }

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

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

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem; }
  .dropdown-toggle-split::after,
  .dropup .dropdown-toggle-split::after,
  .dropright .dropdown-toggle-split::after {
    margin-left: 0; }
  .dropleft .dropdown-toggle-split::before {
    margin-right: 0; }

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

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

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center; }
  .btn-group-vertical .btn,
  .btn-group-vertical .btn-group {
    width: 100%; }
  .btn-group-vertical &gt; .btn + .btn,
  .btn-group-vertical &gt; .btn + .btn-group,
  .btn-group-vertical &gt; .btn-group + .btn,
  .btn-group-vertical &gt; .btn-group + .btn-group {
    margin-top: -1px;
    margin-left: 0; }
  .btn-group-vertical &gt; .btn:not(:last-child):not(.dropdown-toggle),
  .btn-group-vertical &gt; .btn-group:not(:last-child) &gt; .btn {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; }
  .btn-group-vertical &gt; .btn:not(:first-child),
  .btn-group-vertical &gt; .btn-group:not(:first-child) &gt; .btn {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

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

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%; }
  .input-group &gt; .form-control,
  .input-group &gt; .custom-select,
  .input-group &gt; .custom-file {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    margin-bottom: 0; }
    .input-group &gt; .form-control:focus,
    .input-group &gt; .custom-select:focus,
    .input-group &gt; .custom-file:focus {
      z-index: 3; }
    .input-group &gt; .form-control + .form-control,
    .input-group &gt; .form-control + .custom-select,
    .input-group &gt; .form-control + .custom-file,
    .input-group &gt; .custom-select + .form-control,
    .input-group &gt; .custom-select + .custom-select,
    .input-group &gt; .custom-select + .custom-file,
    .input-group &gt; .custom-file + .form-control,
    .input-group &gt; .custom-file + .custom-select,
    .input-group &gt; .custom-file + .custom-file {
      margin-left: -1px; }
  .input-group &gt; .form-control:not(:last-child),
  .input-group &gt; .custom-select:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .input-group &gt; .form-control:not(:first-child),
  .input-group &gt; .custom-select:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
  .input-group &gt; .custom-file {
    display: flex;
    align-items: center; }
    .input-group &gt; .custom-file:not(:last-child) .custom-file-label,
    .input-group &gt; .custom-file:not(:last-child) .custom-file-label::after {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0; }
    .input-group &gt; .custom-file:not(:first-child) .custom-file-label {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0; }

.input-group-prepend,
.input-group-append {
  display: flex; }
  .input-group-prepend .btn,
  .input-group-append .btn {
    position: relative;
    z-index: 2; }
  .input-group-prepend .btn + .btn,
  .input-group-prepend .btn + .input-group-text,
  .input-group-prepend .input-group-text + .input-group-text,
  .input-group-prepend .input-group-text + .btn,
  .input-group-append .btn + .btn,
  .input-group-append .btn + .input-group-text,
  .input-group-append .input-group-text + .input-group-text,
  .input-group-append .input-group-text + .btn {
    margin-left: -1px; }

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

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

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

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

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

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

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

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0; }
  .custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    background-color: #007bff; }
  .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 1px #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; }
  .custom-control-input:disabled ~ .custom-control-label {
    color: #6c757d; }
    .custom-control-input:disabled ~ .custom-control-label::before {
      background-color: #e9ecef; }

.custom-control-label {
  position: relative;
  margin-bottom: 0; }
  .custom-control-label::before {
    position: absolute;
    top: 0.25rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    pointer-events: none;
    content: "";
    user-select: none;
    background-color: #dee2e6; }
  .custom-control-label::after {
    position: absolute;
    top: 0.25rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    content: "";
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%; }

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

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

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E"); }

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

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

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

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

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

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

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

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

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(2.25rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center;
  background-size: 8px 10px;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none; }
  .custom-select:focus {
    border-color: #80bdff;
    outline: 0;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075), 0 0 5px rgba(128, 189, 255, 0.5); }
    .custom-select:focus::-ms-value {
      color: #495057;
      background-color: #fff; }
  .custom-select[multiple], .custom-select[size]:not([size="1"]) {
    height: auto;
    padding-right: 0.75rem;
    background-image: none; }
  .custom-select:disabled {
    color: #6c757d;
    background-color: #e9ecef; }
  .custom-select::-ms-expand {
    opacity: 0; }

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

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

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

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(2.25rem + 2px);
  margin: 0;
  opacity: 0; }
  .custom-file-input:focus ~ .custom-file-label {
    border-color: #80bdff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-file-input:focus ~ .custom-file-label::after {
      border-color: #80bdff; }
  .custom-file-input:lang(en) ~ .custom-file-label::after {
    content: "Browse"; }

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

.custom-range {
  width: 100%;
  padding-left: 0;
  background-color: transparent;
  appearance: none; }
  .custom-range:focus {
    outline: none; }
  .custom-range::-moz-focus-outer {
    border: 0; }
  .custom-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    appearance: none; }
    .custom-range::-webkit-slider-thumb:focus {
      outline: none;
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-range::-webkit-slider-thumb:active {
      background-color: #b3d7ff; }
  .custom-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem; }
  .custom-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    appearance: none; }
    .custom-range::-moz-range-thumb:focus {
      outline: none;
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-range::-moz-range-thumb:active {
      background-color: #b3d7ff; }
  .custom-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem; }
  .custom-range::-ms-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    appearance: none; }
    .custom-range::-ms-thumb:focus {
      outline: none;
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-range::-ms-thumb:active {
      background-color: #b3d7ff; }
  .custom-range::-ms-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: transparent;
    border-color: transparent;
    border-width: 0.5rem; }
  .custom-range::-ms-fill-lower {
    background-color: #dee2e6;
    border-radius: 1rem; }
  .custom-range::-ms-fill-upper {
    margin-right: 15px;
    background-color: #dee2e6;
    border-radius: 1rem; }

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

.nav-link {
  display: block;
  padding: 0.5rem 1rem; }
  .nav-link:hover, .nav-link:focus {
    text-decoration: none; }
  .nav-link.disabled {
    color: #6c757d; }

.nav-tabs {
  border-bottom: 1px solid #dee2e6; }
  .nav-tabs .nav-item {
    margin-bottom: -1px; }
  .nav-tabs .nav-link {
    border: 1px solid transparent;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
    .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
      border-color: #e9ecef #e9ecef #dee2e6; }
    .nav-tabs .nav-link.disabled {
      color: #6c757d;
      background-color: transparent;
      border-color: transparent; }
  .nav-tabs .nav-link.active,
  .nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff; }
  .nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

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

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

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

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

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

.tab-content &gt; .active {
  display: block; }

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

.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap; }
  .navbar-brand:hover, .navbar-brand:focus {
    text-decoration: none; }

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }
  .navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0; }
  .navbar-nav .dropdown-menu {
    position: static;
    float: none; }

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem; }

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center; }

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem; }
  .navbar-toggler:hover, .navbar-toggler:focus {
    text-decoration: none; }
  .navbar-toggler:not(:disabled):not(.disabled) {
    cursor: pointer; }

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

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

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-sm .navbar-nav {
      flex-direction: row; }
      .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-sm &gt; .container,
    .navbar-expand-sm &gt; .container-fluid {
      flex-wrap: nowrap; }
    .navbar-expand-sm .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-sm .navbar-toggler {
      display: none; } }

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

@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-md .navbar-nav {
      flex-direction: row; }
      .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-md .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-md &gt; .container,
    .navbar-expand-md &gt; .container-fluid {
      flex-wrap: nowrap; }
    .navbar-expand-md .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-md .navbar-toggler {
      display: none; } }

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

@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-lg .navbar-nav {
      flex-direction: row; }
      .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-lg &gt; .container,
    .navbar-expand-lg &gt; .container-fluid {
      flex-wrap: nowrap; }
    .navbar-expand-lg .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-lg .navbar-toggler {
      display: none; } }

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

@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-xl .navbar-nav {
      flex-direction: row; }
      .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-xl &gt; .container,
    .navbar-expand-xl &gt; .container-fluid {
      flex-wrap: nowrap; }
    .navbar-expand-xl .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-xl .navbar-toggler {
      display: none; } }

.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start; }
  .navbar-expand &gt; .container,
  .navbar-expand &gt; .container-fluid {
    padding-right: 0;
    padding-left: 0; }
  .navbar-expand .navbar-nav {
    flex-direction: row; }
    .navbar-expand .navbar-nav .dropdown-menu {
      position: absolute; }
    .navbar-expand .navbar-nav .nav-link {
      padding-right: 0.5rem;
      padding-left: 0.5rem; }
  .navbar-expand &gt; .container,
  .navbar-expand &gt; .container-fluid {
    flex-wrap: nowrap; }
  .navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto; }
  .navbar-expand .navbar-toggler {
    display: none; }

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

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

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

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

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;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 &gt; .nav-link,
.navbar-dark .navbar-nav .active &gt; .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff; }

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

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

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5); }
  .navbar-dark .navbar-text a {
    color: #fff; }
    .navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
      color: #fff; }

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem; }
  .card &gt; hr {
    margin-right: 0;
    margin-left: 0; }
  .card &gt; .list-group:first-child .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
  .card &gt; .list-group:last-child .list-group-item:last-child {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem; }

.card-body {
  flex: 1 1 auto;
  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 &gt; .card {
    margin-bottom: 15px; }
  @media (min-width: 576px) {
    .card-group {
      flex-flow: row wrap; }
      .card-group &gt; .card {
        flex: 1 0 0%;
        margin-bottom: 0; }
        .card-group &gt; .card + .card {
          margin-left: 0;
          border-left: 0; }
        .card-group &gt; .card:first-child {
          border-top-right-radius: 0;
          border-bottom-right-radius: 0; }
          .card-group &gt; .card:first-child .card-img-top,
          .card-group &gt; .card:first-child .card-header {
            border-top-right-radius: 0; }
          .card-group &gt; .card:first-child .card-img-bottom,
          .card-group &gt; .card:first-child .card-footer {
            border-bottom-right-radius: 0; }
        .card-group &gt; .card:last-child {
          border-top-left-radius: 0;
          border-bottom-left-radius: 0; }
          .card-group &gt; .card:last-child .card-img-top,
          .card-group &gt; .card:last-child .card-header {
            border-top-left-radius: 0; }
          .card-group &gt; .card:last-child .card-img-bottom,
          .card-group &gt; .card:last-child .card-footer {
            border-bottom-left-radius: 0; }
        .card-group &gt; .card:only-child {
          border-radius: 0.25rem; }
          .card-group &gt; .card:only-child .card-img-top,
          .card-group &gt; .card:only-child .card-header {
            border-top-left-radius: 0.25rem;
            border-top-right-radius: 0.25rem; }
          .card-group &gt; .card:only-child .card-img-bottom,
          .card-group &gt; .card:only-child .card-footer {
            border-bottom-right-radius: 0.25rem;
            border-bottom-left-radius: 0.25rem; }
        .card-group &gt; .card:not(:first-child):not(:last-child):not(:only-child) {
          border-radius: 0; }
          .card-group &gt; .card:not(:first-child):not(:last-child):not(:only-child) .card-img-top,
          .card-group &gt; .card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,
          .card-group &gt; .card:not(:first-child):not(:last-child):not(:only-child) .card-header,
          .card-group &gt; .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;
    orphans: 1;
    widows: 1; }
    .card-columns .card {
      display: inline-block;
      width: 100%; } }

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

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

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

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

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

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem; }
  .breadcrumb-item + .breadcrumb-item::before {
    display: inline-block;
    padding-right: 0.5rem;
    color: #6c757d;
    content: "/"; }

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

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

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

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

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6; }
  .page-link:hover {
    z-index: 2;
    color: #0056b3;
    text-decoration: none;
    background-color: #e9ecef;
    border-color: #dee2e6; }
  .page-link:focus {
    z-index: 2;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .page-link:not(:disabled):not(.disabled) {
    cursor: pointer; }

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem; }

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

.page-item.active .page-link {
  z-index: 1;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.badge-danger {
  color: #fff;
  background-color: #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: 4rem; }
  .alert-dismissible .close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.75rem 1.25rem;
    color: inherit; }

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

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

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

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

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

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

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

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

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

.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem; }

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease; }
  @media screen and (prefers-reduced-motion: reduce) {
    .progress-bar {
      transition: none; } }

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem; }

.progress-bar-animated {
  animation: progress-bar-stripes 1s linear infinite; }

.media {
  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.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5; }
  .close:hover, .close:focus {
    color: #000;
    text-decoration: none;
    opacity: .75; }
  .close:not(:disabled):not(.disabled) {
    cursor: pointer; }

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

.modal-open {
  overflow: hidden; }

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

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none; }
  .modal.fade .modal-dialog {
    transition: transform 0.3s ease-out;
    transform: translate(0, -25%); }
    @media screen and (prefers-reduced-motion: reduce) {
      .modal.fade .modal-dialog {
        transition: none; } }
  .modal.show .modal-dialog {
    transform: translate(0, 0); }

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

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

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

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

.modal-title {
  margin-bottom: 0;
  line-height: 1.5; }

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem; }

.modal-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 1rem;
  border-top: 1px solid #e9ecef; }
  .modal-footer &gt; :not(:first-child) {
    margin-left: .25rem; }
  .modal-footer &gt; :not(:last-child) {
    margin-right: .25rem; }

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll; }

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto; }
  .modal-dialog-centered {
    min-height: calc(100% - (1.75rem * 2)); }
  .modal-sm {
    max-width: 300px; } }

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

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

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

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

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

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

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

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

.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem; }
  .bs-popover-top .arrow, .bs-popover-auto[x-placement^="top"] .arrow {
    bottom: calc((0.5rem + 1px) * -1); }
  .bs-popover-top .arrow::before, .bs-popover-auto[x-placement^="top"] .arrow::before,
  .bs-popover-top .arrow::after,
  .bs-popover-auto[x-placement^="top"] .arrow::after {
    border-width: 0.5rem 0.5rem 0; }
  .bs-popover-top .arrow::before, .bs-popover-auto[x-placement^="top"] .arrow::before {
    bottom: 0;
    border-top-color: rgba(0, 0, 0, 0.25); }
  
  .bs-popover-top .arrow::after,
  .bs-popover-auto[x-placement^="top"] .arrow::after {
    bottom: 1px;
    border-top-color: #fff; }

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem; }
  .bs-popover-right .arrow, .bs-popover-auto[x-placement^="right"] .arrow {
    left: calc((0.5rem + 1px) * -1);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0; }
  .bs-popover-right .arrow::before, .bs-popover-auto[x-placement^="right"] .arrow::before,
  .bs-popover-right .arrow::after,
  .bs-popover-auto[x-placement^="right"] .arrow::after {
    border-width: 0.5rem 0.5rem 0.5rem 0; }
  .bs-popover-right .arrow::before, .bs-popover-auto[x-placement^="right"] .arrow::before {
    left: 0;
    border-right-color: rgba(0, 0, 0, 0.25); }
  
  .bs-popover-right .arrow::after,
  .bs-popover-auto[x-placement^="right"] .arrow::after {
    left: 1px;
    border-right-color: #fff; }

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem; }
  .bs-popover-bottom .arrow, .bs-popover-auto[x-placement^="bottom"] .arrow {
    top: calc((0.5rem + 1px) * -1); }
  .bs-popover-bottom .arrow::before, .bs-popover-auto[x-placement^="bottom"] .arrow::before,
  .bs-popover-bottom .arrow::after,
  .bs-popover-auto[x-placement^="bottom"] .arrow::after {
    border-width: 0 0.5rem 0.5rem 0.5rem; }
  .bs-popover-bottom .arrow::before, .bs-popover-auto[x-placement^="bottom"] .arrow::before {
    top: 0;
    border-bottom-color: rgba(0, 0, 0, 0.25); }
  
  .bs-popover-bottom .arrow::after,
  .bs-popover-auto[x-placement^="bottom"] .arrow::after {
    top: 1px;
    border-bottom-color: #fff; }
  .bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 1rem;
    margin-left: -0.5rem;
    content: "";
    border-bottom: 1px solid #f7f7f7; }

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem; }
  .bs-popover-left .arrow, .bs-popover-auto[x-placement^="left"] .arrow {
    right: calc((0.5rem + 1px) * -1);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0; }
  .bs-popover-left .arrow::before, .bs-popover-auto[x-placement^="left"] .arrow::before,
  .bs-popover-left .arrow::after,
  .bs-popover-auto[x-placement^="left"] .arrow::after {
    border-width: 0.5rem 0 0.5rem 0.5rem; }
  .bs-popover-left .arrow::before, .bs-popover-auto[x-placement^="left"] .arrow::before {
    right: 0;
    border-left-color: rgba(0, 0, 0, 0.25); }
  
  .bs-popover-left .arrow::after,
  .bs-popover-auto[x-placement^="left"] .arrow::after {
    right: 1px;
    border-left-color: #fff; }

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

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

.carousel {
  position: relative; }

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

.carousel-item {
  position: relative;
  display: none;
  align-items: center;
  width: 100%;
  transition: transform 0.6s ease;
  backface-visibility: hidden;
  perspective: 1000px; }
  @media screen and (prefers-reduced-motion: reduce) {
    .carousel-item {
      transition: none; } }

.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-fade .carousel-item {
  opacity: 0;
  transition-duration: .6s;
  transition-property: opacity; }

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

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  opacity: 0; }

.carousel-fade .carousel-item-next,
.carousel-fade .carousel-item-prev,
.carousel-fade .carousel-item.active,
.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-prev {
  transform: translateX(0); }
  @supports (transform-style: preserve-3d) {
    .carousel-fade .carousel-item-next,
    .carousel-fade .carousel-item-prev,
    .carousel-fade .carousel-item.active,
    .carousel-fade .active.carousel-item-left,
    .carousel-fade .active.carousel-item-prev {
      transform: translate3d(0, 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;
    cursor: pointer;
    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; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.position-static {
  position: static !important; }

.position-relative {
  position: relative !important; }

.position-absolute {
  position: absolute !important; }

.position-fixed {
  position: fixed !important; }

.position-sticky {
  position: sticky !important; }

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030; }

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030; }

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020; } }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

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

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; }

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; }

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; }

.shadow-none {
  box-shadow: none !important; }

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

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

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

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

.w-auto {
  width: auto !important; }

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

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

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

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

.h-auto {
  height: auto !important; }

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

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

.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-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

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

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

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important; }

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important; }

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

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important; }
  a:not(.btn) {
    text-decoration: underline; }
  abbr[title]::after {
    content: " (" attr(title) ")"; }
  pre {
    white-space: pre-wrap !important; }
  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  @page {
    size: a3; }
  body {
    min-width: 992px !important; }
  .container {
    min-width: 992px !important; }
  .navbar {
    display: none; }
  .badge {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important; }
  .table-dark {
    color: inherit; }
    .table-dark th,
    .table-dark td,
    .table-dark thead th,
    .table-dark tbody + tbody {
      border-color: #dee2e6; }
  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6; } }

* {
  box-sizing: border-box; }

body {
  margin: 0;
  padding: 0;
  background: #fff;
  color: #333;
  -webkit-font-smoothing: antialiased;
  font-family: 'Raleway', sans-serif; }
  body.fixed {
    overflow: hidden; }

body * {
  transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out; }

.nopadding {
  padding: 0 !important; }

.burcak {
  overflow: hidden;
  width: 100%;
  float: left; }
  @media (max-width: 768px) {
    .burcak__bottom {
      float: left;
      width: 100%;
      position: relative;
      padding-bottom: 800px; } }
  .burcak__center {
    text-align: center;
    width: 100%; }
  .burcak__logo {
    width: 230px;
    height: auto;
    margin: 60px 0 0;
    position: relative;
    z-index: 2; }
  .burcak__title {
    color: #000000;
    font-size: 24px;
    font-weight: 400;
    font-family: 'Playfair Display', serif;
    width: 100%;
    text-align: center;
    position: relative;
    z-index: 2;
    padding: 30px 0 90px; }
    @media (max-width: 768px) {
      .burcak__title {
        padding-bottom: 30px; } }
  .burcak__image {
    z-index: 2;
    position: relative;
    float: left;
    width: 55vw; }
    @media (max-width: 768px) {
      .burcak__image {
        max-width: 100%;
        margin-top: -30px;
        width: 100%; } }
    .burcak__image--right {
      float: right; }
  .burcak h1 {
    color: #f4f4f4;
    font-size: 20vw;
    margin-left: -6vw;
    white-space: nowrap;
    font-family: 'Playfair Display', serif;
    font-weight: 900;
    position: absolute;
    z-index: 1;
    top: 700px;
    max-width: 106vw;
    overflow: hidden; }
  .burcak__contact {
    float: left;
    clear: right;
    margin-top: 0;
    position: relative;
    z-index: 3; }
    .burcak__contact iframe {
      float: left; }
    @media (max-width: 768px) {
      .burcak__contact {
        margin-top: 30px;
        margin-bottom: 50px;
        position: absolute;
        bottom: 0;
        left: 0; } }
    .burcak__contact h2 {
      color: #000000;
      font-size: 24px;
      font-weight: 700;
      text-transform: uppercase;
      font-family: 'Playfair Display', serif;
      padding: 20px 0 10px; }
    .burcak__contact p {
      color: #000000;
      font-size: 14px;
      font-weight: 300;
      margin-bottom: 10px; }
      .burcak__contact p strong {
        font-weight: 700; }
  .burcak__map {
    float: left;
    width: 100%;
    margin-top: -120px; }
    @media (max-width: 768px) {
      .burcak__map {
        margin-top: -30px; } }
  .burcak__box {
    background-color: #f9f8f3;
    padding: 55px;
    float: left;
    z-index: 3;
    position: relative;
    max-width: 590px;
    width: 100%; }
    @media (max-width: 768px) {
      .burcak__box {
        padding: 25px; } }
    .burcak__box--right {
      float: right; }
    .burcak__box--margin {
      margin-top: -120px; }
      @media (max-width: 768px) {
        .burcak__box--margin {
          margin-top: -30px; } }
    @media (max-width: 768px) {
      .burcak__box--bottom {
        float: left; } }
    .burcak__box h2 {
      color: #000000;
      font-size: 38px;
      font-weight: 700;
      text-transform: uppercase;
      font-family: 'Playfair Display', serif;
      padding: 20px 0 10px; }
      @media (max-width: 768px) {
        .burcak__box h2 {
          font-size: 24px; } }
    .burcak__box p {
      color: #000000;
      font-size: 16px;
      font-weight: 300; }
      @media (max-width: 768px) {
        .burcak__box p {
          font-size: 14px; } }
      .burcak__box p strong {
        font-weight: 700; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ib290c3RyYXAuc2NzcyIsIm1haW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mb3Jtcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS1mb3Jtcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19qdW1ib3Ryb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hbGlnbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fY2xlYXJmaXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZmxvYXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaGFkb3dzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3RleHQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcmludC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7Ozs7R0FLRztB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UyxFQUFFLFFBQTRCLEdFQWhDO0VBRkQsU0FBUyxDQUFXO0lGRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRUFoQztFQUZELFNBQVMsQ0FBVztJRkYxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0VBaEM7RUFGRCxTQUFTLENBQVc7SUZGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdFQWhDO0VBRkQsU0FBUyxDQUFXO0lGRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRUFoQztFQUZELFNBQVMsQ0FBVztJRkYxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0VBaEM7RUFGRCxTQUFTLENBQVc7SUZGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdFQWhDO0VBRkQsU0FBUyxDQUFXO0lGRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRUFoQztFQUZELFNBQVMsQ0FBVztJRkYxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0VBaEM7RUFGRCxVQUFVLENBQVU7SUZGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBNEI7SUFJdEMsU0FBUyxFQUFFLFNBQTRCLEdFQWhDO0VBRkQsVUFBVSxDQUFVO0lGRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHRUFoQztFQUZELFVBQVUsQ0FBVTtJRkYxQixJQUFJLEVBQUUs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QUFDLFVBQVUsR2pEUW5EOztBaURkRCxRQUFRLENBQUc7RUFDVCxnQkFBZ0IsRWxEdUNWLE9BQU8sQ2tEdkNZLFVBQVUsR0FDcEM7O0FqRFNELEFpRFJBLENBQUMsUWpEUUEsQWlEUlEsTWpEUUYsRWlEUlAsQ0FBQyxRakRTQSxBaURUUSxNakRTRjtBaURSUCxNQUFNLFFqRE9MLEFpRFBhLE1qRE9QO0FpRFBQLE1BQU0sUWpEUUwsQWlEUmEsTWpEUVAsQ0FBQztFaUROSixnQkFBZ0IsRUFBRSxPQUFtQixDQUFDLFVBQVUsR2pEUW5EOztBaURkRCxXQUFXLENBQUE7RUFDVCxnQkFBZ0IsRWxEb0NWLE9BQU8sQ2tEcENZLFVBQVUsR0FDcEM7O0FqRFNELEFpRFJBLENBQUMsV2pEUUEsQWlEUlcsTWpEUUwsRWlEUlAsQ0FBQyxXakRTQSxBaURUVyxNakRTTDtBaURSUCxNQUFNLFdqRE9MLEFpRFBnQixNakRPVjtBaURQUCxNQUFNLFdqRFFMLEFpRFJnQixNakRRVixDQUFDO0VpRE5KLGdCQUFnQixFQUFFLE9BQW1CLENBQUMsVUFBVSxHakRRbkQ7O0FpRGRELFVBQVUsQ0FBQztFQUNULGdCQUFnQixFbERrQ1YsT0FBTyxDa0RsQ1ksVUFBVSxHQUNwQzs7QWpEU0QsQWlEUkEsQ0FBQyxVakRRQSxBaURSVSxNakRRSixFaURSUCxDQUFDLFVqRFNBLEFpRFRVLE1qRFNKO0FpRFJQLE1BQU0sVWpET0wsQWlEUGUsTWpET1Q7QWlEUFAsTUFBTSxVakRRTCxBaURSZSxNakRRVCxDQUFDO0VpRE5KLGdCQUFnQixFQUFFLE9BQW1CLENBQUMsVUFBVSxHakRRbkQ7O0FpRGRELFNBQVMsQ0FBRTtFQUNULGdCQUFnQixFbERNVCxPQUFPLENrRE5XLFVBQVUsR0FDcEM7O0FqRFNELEFpRFJBLENBQUMsU2pEUUEsQWlEUlMsTWpEUUgsRWlEUlAsQ0FBQyxTakRTQSxBaURUUyxNakRTSDtBaURSUCxNQUFNLFNqRE9MLEFpRFBjLE1qRE9SO0FpRFBQLE1BQU0sU2pEUUwsQWlEUmMsTWpEUVIsQ0FBQztFaUROSixnQkFBZ0Is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RUFBRSxLQUFLLEdBRXBCO0lBR0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO01BRDFCLEFBQUMsb0JBQVEsQ0FBQztRQUVOLEtBQUssRUFBRSxJQUFJLEdBRWQ7SUEzQkYsQUE2QkMsWUE3QkksQ0E2QkosRUFBRSxDQUFDO01BQ0QsS0FBSyxFQUFFLE9BQU87TUFDZCxTQUFTLEVBQUUsSUFBSTtNQUNmLFdBQVcsRUFBRSxHQUFHO01BQ2hCLGNBQWMsRUFBRSxTQUFTO01BQ3pCLFdBQVcsRUFBRSx5QkFBeUI7TUFDdEMsT0FBTyxFQUFFLFdBQVcsR0FJckI7TUFIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7UUFwQzNCLEFBNkJDLFlBN0JJLENBNkJKLEVBQUUsQ0FBQztVQVFDLFNBQVMsRUFBRSxJQUFJLEdBRWxCO0lBdkNGLEFBeUNDLFlBekNJLENBeUNKLENBQUMsQ0FBQztNQUNBLEtBQUssRUFBRSxPQUFPO01BQ2QsU0FBUyxFQUFFLElBQUk7TUFDZixXQUFXLEVBQUUsR0FBRyxHQVFqQjtNQVBDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztRQTdDM0IsQUF5Q0MsWUF6Q0ksQ0F5Q0osQ0FBQyxDQUFDO1VBS0UsU0FBUyxFQUFFLElBQUksR0FNbEI7TUFwREYsQUFpREcsWUFqREUsQ0F5Q0osQ0FBQyxDQVFDLE1BQU0sQ0FBQztRQUNMLFdBQVcsRUFBRSxHQUFHLEdBQ2pCIiwiZmlsZSI6InN0eWxlcy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEJvb3RzdHJhcCB2NC4xLjEgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE4IFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAxOCBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImlucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiQGltcG9ydCBcIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ib290c3RyYXBcIjtcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9UGxheWZhaXIrRGlzcGxheTo0MDAsOTAwfFJhbGV3YXk6NDAwLDcwMCZzdWJzZXQ9bGF0aW4tZXh0Jyk7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzMzMztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtZmFtaWx5OiAnUmFsZXdheScsIHNhbnMtc2VyaWY7XG5cbiAgJi5maXhlZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG5ib2R5ICoge1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbn1cblxuLm5vcGFkZGluZyB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLmJ1cmNhayB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcblxuICAmX19ib3R0b20ge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4MDBweDtcbiAgICB9XG4gIH1cblxuICAmX19jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICZfX2xvZ28ge1xuICAgIHdpZHRoOiAyMzBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiA2MHB4IDAgMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZzogMzBweCAwIDkwcHg7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICB9XG4gIH1cblxuICAmX19pbWFnZSB7XG4gICAgei1pbmRleDogMjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDU1dnc7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMzBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYtLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICBoMSB7XG4gICAgY29sb3I6ICNmNGY0ZjQ7XG4gICAgZm9udC1zaXplOiAyMHZ3O1xuICAgIG1hcmdpbi1sZWZ0OiAtNnZ3O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDcwMHB4O1xuICAgIG1heC13aWR0aDogMTA2dnc7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICZfX2NvbnRhY3Qge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzO1xuXG4gICAgaWZyYW1lIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7XG4gICAgICBwYWRkaW5nOiAyMHB4IDAgMTBweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fbWFwIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTIwcHg7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMzBweDtcbiAgICB9XG4gIH1cblxuICAmX19ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY4ZjM7XG4gICAgcGFkZGluZzogNTVweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB6LWluZGV4OiAzO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDU5MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgcGFkZGluZzogMjVweDtcbiAgICB9XG5cbiAgICAmLS1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgJi0tbWFyZ2luIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xMjBweDtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMzBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ib3R0b20ge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgZm9udC1zaXplOiAzOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjtcbiAgICAgIHBhZGRpbmc6IDIwcHggMCAxMHB4O1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB9XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgYXQtcnVsZS1uby12ZW5kb3ItcHJlZml4LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gU2V0dGluZyBAdmlld3BvcnQgY2F1c2VzIHNjcm9sbGJhcnMgdG8gb3ZlcmxhcCBjb250ZW50IGluIElFMTEgYW5kIEVkZ2UsIHNvXG4vLyAgICB3ZSBmb3JjZSBhIG5vbi1vdmVybGFwcGluZywgbm9uLWF1dG8taGlkaW5nIHNjcm9sbGJhciB0byBjb3VudGVyYWN0LlxuLy8gNi4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjsgLy8gNVxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNlxufVxuXG4vLyBJRTEwKyBkb2Vzbid0IGhvbm9yIGA8bWV0YSBuYW1lPVwidmlld3BvcnRcIj5gIGluIHNvbWUgY2FzZXMuXG5AYXQtcm9vdCB7XG4gIEAtbXMtdmlld3BvcnQge1xuICAgIHdpZHRoOiBkZXZpY2Utd2lkdGg7XG4gIH1cbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2UgdGhlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIFN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lIG9uIGVsZW1lbnRzIHRoYXQgY2Fubm90IGJlIGFjY2Vzc2VkIHZpYSBrZXlib2FyZC5cbi8vIFRoaXMgcHJldmVudHMgYW4gdW53YW50ZWQgZm9jdXMgb3V0bGluZSBmcm9tIGFwcGVhcmluZyBhcm91bmQgZWxlbWVudHMgdGhhdFxuLy8gbWlnaHQgc3RpbGwgcmVzcG9uZCB0byBwb2ludGVyIGV2ZW50cy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2Vcblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyA0XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gMVxufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy1cbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgZm9udC13ZWlnaHQtbm90YXRpb25cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZvbnQtd2VpZ2h0LW5vdGF0aW9uXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy9cbi8vIExpbmtzXG4vL1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8vIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZilcbi8vIHdoaWNoIGhhdmUgbm90IGJlZW4gbWFkZSBleHBsaWNpdGx5IGtleWJvYXJkLWZvY3VzYWJsZSAod2l0aG91dCB0YWJpbmRleCkuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gV2UgaGF2ZSBAdmlld3BvcnQgc2V0IHdoaWNoIGNhdXNlcyBzY3JvbGxiYXJzIHRvIG92ZXJsYXAgY29udGVudCBpbiBJRTExIGFuZCBFZGdlLCBzb1xuICAvLyB3ZSBmb3JjZSBhIG5vbi1vdmVybGFwcGluZywgbm9uLWF1dG8taGlkaW5nIHNjcm9sbGJhciB0byBjb3VudGVyYWN0LlxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUVcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxudGgge1xuICAvLyBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGZyb20gdGhlIGA8Ym9keT5gLCBvciB0aGVcbiAgLy8gY2xvc2VzdCBwYXJlbnQgd2l0aCBhIHNldCBgdGV4dC1hbGlnbmAuXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcbi8vIHJlc3VsdHMgaW4gYSBsb3NzIG9mIHRoZSBkZWZhdWx0IGBidXR0b25gIGZvY3VzIHN0eWxlcy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAxcHggZG90dGVkO1xuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICBwYWRkaW5nOiAwOyAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtXG59XG5cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCBhcHBlYXJhbmNlIG9mIHRlbXBvcmFsIGlucHV0cyB0byBhdm9pZCBhIE1vYmlsZSBTYWZhcmlcbiAgLy8gYnVnIHdoZXJlIHNldHRpbmcgYSBjdXN0b20gbGluZS1oZWlnaHQgcHJldmVudHMgdGV4dCBmcm9tIGJlaW5nIHZlcnRpY2FsbHlcbiAgLy8gY2VudGVyZWQgd2l0aGluIHRoZSBpbnB1dC5cbiAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbiAgLy8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTEyNjZcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cblxuLy9cbi8vIENvbG9yIHN5c3RlbVxuLy9cblxuLy8gc3R5bGVsaW50LWRpc2FibGVcbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbiRncmF5czogbWFwLW1lcmdlKChcbiAgXCIxMDBcIjogJGdyYXktMTAwLFxuICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgXCI0MDBcIjogJGdyYXktNDAwLFxuICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgXCI3MDBcIjogJGdyYXktNzAwLFxuICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gIFwiOTAwXCI6ICRncmF5LTkwMFxuKSwgJGdyYXlzKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuJGNvbG9yczogbWFwLW1lcmdlKChcbiAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiksICRjb2xvcnMpO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoKFxuICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4pLCAkdGhlbWUtY29sb3JzKTtcbi8vIHN0eWxlbGludC1lbmFibGVcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuLy8gc3R5bGVsaW50LWRpc2FibGVcbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4kc3BhY2VyczogbWFwLW1lcmdlKChcbiAgMDogMCxcbiAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAyOiAoJHNwYWNlciAqIC41KSxcbiAgMzogJHNwYWNlcixcbiAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICA1OiAoJHNwYWNlciAqIDMpXG4pLCAkc3BhY2Vycyk7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4kc2l6ZXM6IG1hcC1tZXJnZSgoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJSxcbiAgYXV0bzogYXV0b1xuKSwgJHNpemVzKTtcbi8vIHN0eWxlbGludC1lbmFibGVcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgIHVuZGVybGluZSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIEZvbnRzXG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAuODc1KSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAgICAgIDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAgICAgIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkZ3JheS05MDAsIDcuNSUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0KSArICgkaW5wdXQtYnRuLXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lci1zbTogICAgICAgICAgICAgICAgICgkZm9udC1zaXplLXNtICogJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1zbX0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXItbGc6ICAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1sZyAqICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcpICsgKCRpbnB1dC1idG4tcGFkZGluZy15LWxnICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItbGd9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14OiAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2IDIuOTc0IDcuMjUgOCAyLjE5M3onLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDQnJTNFJTNDcGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNFJTNDY2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDUnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSwgMCAwIDVweCByZ2JhKCRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvciwgLjUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAxMjUlICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgKCRzcGFjZXIgLyAyKSAhZGVmYXVsdDtcblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBjYWxjKCN7JGNhcmQtYm9yZGVyLXJhZGl1c30gLSAjeyRjYXJkLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAuNzUpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAuNSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41LTIuNS0yLjUgMi41LTIuNS0xLjUtMS41eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC42cyBlYXNlICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2FsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlciB7XG4gICY6aG92ZXIgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBmb250LXNpemU6ICRoMS1mb250LXNpemU7IH1cbmgyLCAuaDIgeyBmb250LXNpemU6ICRoMi1mb250LXNpemU7IH1cbmgzLCAuaDMgeyBmb250LXNpemU6ICRoMy1mb250LXNpemU7IH1cbmg0LCAuaDQgeyBmb250LXNpemU6ICRoNC1mb250LXNpemU7IH1cbmg1LCAuaDUgeyBmb250LXNpemU6ICRoNS1mb250LXNpemU7IH1cbmg2LCAuaDYgeyBmb250LXNpemU6ICRoNi1mb250LXNpemU7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXkxLXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgZm9udC1zaXplOiAkZGlzcGxheTItc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBmb250LXNpemU6ICRkaXNwbGF5My1zaXplO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXk0LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDgwJTsgLy8gYmFjayB0byBkZWZhdWx0IGZvbnQtc2l6ZVxuICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNCBcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyIC8gMik7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBmb250LXNpemU6ICRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBpbmRlbnRhdGlvbiwgbWVkaWEtcXVlcnktbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbn1cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG4iLCIvLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGtiZC1mb250LXNpemU7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6ICRjb2RlLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXItbWF4LXdpZHRocygpO1xuICB9XG59XG5cbi8vIEZsdWlkIGNvbnRhaW5lclxuLy9cbi8vIFV0aWxpemVzIHRoZSBtaXhpbiBtZWFudCBmb3IgZml4ZWQgd2lkdGggY29udGFpbmVycywgYnV0IHdpdGggMTAwJSB3aWR0aCBmb3Jcbi8vIGZsdWlkLCBmdWxsIHdpZHRoIGxheW91dHMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cbn1cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgbmVnYXRpdmUgbWFyZ2luIGZyb20gZGVmYXVsdCAucm93LCB0aGVuIHRoZSBob3Jpem9udGFsIHBhZGRpbmdcbiAgLy8gZnJvbSBhbGwgaW1tZWRpYXRlIGNoaWxkcmVuIGNvbHVtbnMgKHRvIHByZXZlbnQgcnVuYXdheSBzdHlsZSBpbmhlcml0YW5jZSkuXG4gIC5uby1ndXR0ZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICA+IC5jb2wsXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLXJvdygpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAtMik7XG4gIG1hcmdpbi1sZWZ0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gLTIpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDsgLy8gUHJldmVudCBjb2xsYXBzaW5nXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAycHgsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDsgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkZ3V0dGVyIC8gMik7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogbm9uZTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7IC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTAwNTdcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdXRhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIEFub3RoZXIgZ3JpZCBtaXhpbiB0aGF0IGVuc3VyZXMgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwKSB7XG4gICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiBgJGdyaWQtYnJlYWtwb2ludHNgIG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG5AZnVuY3Rpb24gY29sb3IteWlxKCRjb2xvcikge1xuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gICR5aXE6ICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpIC8gMTAwMDtcblxuICBAaWYgKCR5aXEgPj0gJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZCkge1xuICAgIEByZXR1cm4gJHlpcS10ZXh0LWRhcms7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHlpcS10ZXh0LWxpZ2h0O1xuICB9XG59XG5cbi8vIFJldHJpZXZlIGNvbG9yIFNhc3MgbWFwc1xuQGZ1bmN0aW9uIGNvbG9yKCRrZXk6IFwiYmx1ZVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yKCRrZXk6IFwicHJpbWFyeVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIGdyYXkoJGtleTogXCIxMDBcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGdyYXlzLCAka2V5KTtcbn1cblxuLy8gUmVxdWVzdCBhIHRoZW1lIGNvbG9yIGxldmVsXG5AZnVuY3Rpb24gdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLW5hbWU6IFwicHJpbWFyeVwiLCAkbGV2ZWw6IDApIHtcbiAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XG4gICRjb2xvci1iYXNlOiBpZigkbGV2ZWwgPiAwLCAkYmxhY2ssICR3aGl0ZSk7XG4gICRsZXZlbDogYWJzKCRsZXZlbCk7XG5cbiAgQHJldHVybiBtaXgoJGNvbG9yLWJhc2UsICRjb2xvciwgJGxldmVsICogJHRoZW1lLWNvbG9yLWludGVydmFsKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgLy8gTWFudWFsbHkgdXNlIHRoZSBpZi9lbHNlIGluc3RlYWQgb2YgdGhlIG1peGluIHRvIGFjY291bnQgZm9yIGlPUyBvdmVycmlkZVxuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICB9IEBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2UgdW5kbyB0aGUgaU9TIGRlZmF1bHRcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXl9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPi88bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXNpemU6IGluaGVyaXQ7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktbGd9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktc219ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFRoZSBgLmZvcm0tZ3JvdXAtKiBmb3JtLWNvbnRyb2xgIHZhcmlhdGlvbnMgYXJlIHNhZGx5IGR1cGxpY2F0ZWQgdG8gYXZvaWQgdGhlXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wtc20ge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wtbGcge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xufVxuXG5cbi8vIEZvcm0gZ3JpZFxuLy9cbi8vIFNwZWNpYWwgcmVwbGFjZW1lbnQgZm9yIG91ciBncmlkIHN5c3RlbSdzIGAucm93YCBmb3IgdGlnaHRlciBmb3JtIGxheW91dHMuXG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICBtYXJnaW4tbGVmdDogLTVweDtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcInZhbGlkXCIsICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yKTtcbkBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcImludmFsaWRcIiwgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcik7XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLFxuICAgIC5jdXN0b20tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoKSB7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IpIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tZmVlZGJhY2stZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6IC41cmVtO1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAuOCk7XG4gICAgYm9yZGVyLXJhZGl1czogLjJyZW07XG4gIH1cblxuICAuZm9ybS1jb250cm9sLFxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wtZmlsZSB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMjUlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkYm9keS1iZywgMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7IGJvcmRlci1jb2xvcjogaW5oZXJpdDsgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIC8vIEFkZCB3aWR0aCAxJSBhbmQgZmxleC1iYXNpcyBhdXRvIHRvIGVuc3VyZSB0aGF0IGJ1dHRvbiB3aWxsIG5vdCB3cmFwIG91dFxuICAgIC8vIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUgRWRnZSsgYW5kIEZpcmVmb3guIENocm9tZSBkb2VzIG5vdCByZXF1aXJlIHRoaXMuXG4gICAgd2lkdGg6IDElO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5jdXN0b20tc2VsZWN0IHtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kXG4vL1xuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxuLy8gYXBwZW5kIGVsZW1lbnRzIGFsbG93IHVzIHRvIDEpIGJlIGxlc3MgY2xldmVyLCAyKSBzaW1wbGlmeSBvdXIgc2VsZWN0b3JzLCBhbmRcbi8vIDMpIHN1cHBvcnQgSFRNTDUgZm9ybSB2YWxpZGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgQGV4dGVuZCAuZm9ybS1jb250cm9sLWxnO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgQGV4dGVuZCAuZm9ybS1jb250cm9sLXNtO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkZm9udC1zaXplLWJhc2UsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICAvLyBTaGFyZSBob3ZlciBhbmQgZm9jdXMgc3R5bGVzXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gIC8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCAuYnRuIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGJ0bi1saW5lLWhlaWdodC1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbiAgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbiAgfVxufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRib3JkZXIsIC41KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGJvcmRlciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMCAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3ByaWdodCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAuYnRuLFxuICAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0biArIC5idG4sXG4gID4gLmJ0biArIC5idG4tZ3JvdXAsXG4gID4gLmJ0bi1ncm91cCArIC5idG4sXG4gID4gLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4uZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wcmlnaHQsXG4uZHJvcGRvd24sXG4uZHJvcGxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tc3BhY2VyIDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTsgLy8gUmVkZWNsYXJlIGJlY2F1c2UgbmVzdGluZyBjYW4gY2F1c2UgaW5oZXJpdGFuY2UgaXNzdWVzXG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG59XG5cbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcHJpZ2h0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChyaWdodCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wbGVmdCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGxlZnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiBlbmFibGVkIFBvcHBlci5qcywgcmVzZXQgYmFzaWMgZHJvcGRvd24gcG9zaXRpb25cbi8vIHN0eWxlbGludC1kaXNhYmxlIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5kcm9wZG93bi1tZW51IHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnKTtcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24ge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC13aWR0aCAqIC44NTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtd2lkdGggKiAuODU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd247XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cDtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15KSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICgxcmVtICogJGxpbmUtaGVpZ2h0LWJhc2UpO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICY6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ3VzdG9tIGNvbnRyb2wgaW5kaWNhdG9yc1xuLy9cbi8vIEJ1aWxkIHRoZSBjdXN0b20gY29udHJvbHMgb3V0IG9mIHBzZXVkby1lbGVtZW50cy5cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCgkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyKTtcbiAgICBsZWZ0OiAtJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCgkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyKTtcbiAgICBsZWZ0OiAtJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3Igbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuXG4gICAgJjo6LW1zLXZhbHVlIHtcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXG4gICAgICAvLyBzdXBwcmVzcyB0aGUgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBkZWZhdWx0IGNhcmV0IGluIElFMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15O1xuICBmb250LXNpemU6ICRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1sZztcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgZm9udC1zaXplOiAkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc7XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tZmlsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWJnO1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWJveC1zaGFkb3cpO1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjtcbiAgICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gICAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBjb250ZW50OiBcIkJyb3dzZVwiO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tZmlsZS1idXR0b24tYmcpO1xuICAgIGJvcmRlci1sZWZ0OiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIEZpcmVmb3ggc3BlY2lmaWNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IC0oJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAqIC4yNSk7IC8vIFdlYmtpdCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgLy8gTm8gbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHlcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IC8vIE5vIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IC8vIE5vIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogKCRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0ICogLjUpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IC8vIGFyYml0cmFyeT9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzIG9yIGA8dWw+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cbiAgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVyaXRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICA+IC5jb250YWluZXIsXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJG5hdmJhci1icmFuZC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW5hdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBmb250LXNpemU6ICRuYXZiYXItdG9nZ2xlci1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgLm5hdmJhci10b2dnbGVyIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgIC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgICAvLyBDaGFuZ2VzIGZsZXgtYmFzZXMgdG8gYXV0byBiZWNhdXNlIG9mIGFuIElFMTAgYnVnXG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0oJGNhcmQtc3BhY2VyLXkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cblxuICArIC5saXN0LWdyb3VwIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xuICBtYXJnaW4tbGVmdDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xufVxuXG4uY2FyZC1pbWcge1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDYXJkIGltYWdlIGNhcHNcbi5jYXJkLWltZy10b3Age1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIENhcmQgZGVja1xuXG4uY2FyZC1kZWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogLSRjYXJkLWRlY2stbWFyZ2luO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZ3JvdXAtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCg6b25seS1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtaGVhZGVyLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDb2x1bW5zXG4vL1xuXG4uY2FyZC1jb2x1bW5zIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGNvbHVtbi1jb3VudDogJGNhcmQtY29sdW1ucy1jb3VudDtcbiAgICBjb2x1bW4tZ2FwOiAkY2FyZC1jb2x1bW5zLWdhcDtcbiAgICBvcnBoYW5zOiAxO1xuICAgIHdpZG93czogMTtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBEb24ndCBsZXQgdGhlaXIgd2lkdGggY2hhbmdlXG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIEFjY29yZGlvblxuLy9cblxuLmFjY29yZGlvbiB7XG4gIC5jYXJkOm5vdCg6Zmlyc3Qtb2YtdHlwZSk6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAuY2FyZDpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAuY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG4gIH1cblxuICAuY2FyZDpmaXJzdC1vZi10eXBlIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cblxuICAuY2FyZDpsYXN0LW9mLXR5cGUge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIFN1cHByZXNzIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3IgaW4gbW9kZXJuIGJyb3dzZXJzXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6ICRicmVhZGNydW1iLWRpdmlkZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIC5wYWdlLWxpbmsgZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gT3BpbmlvbmF0ZWQ6IHJlbW92ZSB0aGUgXCJoYW5kXCIgY3Vyc29yIHNldCBwcmV2aW91c2x5IGZvciAucGFnZS1saW5rXG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJGJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gICZbaHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpICRqdW1ib3Ryb24tcGFkZGluZztcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogKCRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMik7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmFsZXJ0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJvcmRlci1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWNvbG9yLWxldmVsKSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGZvbnQtc2l6ZTogJHByb2dyZXNzLWZvbnQtc2l6ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc7XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xuICBtYXJnaW4tYm90dG9tOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2FjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAkY2xvc2UtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IC43NTtcbiAgfVxuXG4gIC8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCAuY2xvc2UgZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlXG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG5cbiAgLm1vZGFsLW9wZW4gJiB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAoI3skbW9kYWwtZGlhbG9nLW1hcmdpbn0gKiAyKSk7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIHNvIHRoZSBjbG9zZSBidG4gYWx3YXlzIHN0YXlzIG9uIHRoZSB1cHBlciByaWdodCBjb3JuZXJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nKSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZykgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gc2hvdWxkIHRoZXJlIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG5cbiAgLy8gRWFzaWx5IHBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7IG1hcmdpbi1sZWZ0OiAuMjVyZW07IH1cbiAgPiA6bm90KDpsYXN0LWNoaWxkKSB7IG1hcmdpbi1yaWdodDogLjI1cmVtOyB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gKCN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cH0gKiAyKSk7XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG5cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcgeyBtYXgtd2lkdGg6ICRtb2RhbC1sZzsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLWJsb2NrLW5vLWR1cGxpY2F0ZS1wcm9wZXJ0aWVzXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBmb250LXNpemU6ICRwb3BvdmVyLWZvbnQtc2l6ZTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJGJvcmRlci1yYWRpdXMtbGc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlLFxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUge1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgfVxuXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJGJvcmRlci1yYWRpdXMtbGcgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgbGVmdDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgdG9wOiBjYWxjKCgjeyRwb3BvdmVyLWFycm93LWhlaWdodH0gKyAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICogLTEpO1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAtMik7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiBjYWxjKCgjeyRwb3BvdmVyLWFycm93LWhlaWdodH0gKyAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICogLTEpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRib3JkZXItcmFkaXVzLWxnIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlLFxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgfVxuXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgJG9mZnNldC1ib3JkZXItd2lkdGg6IGNhbGMoI3skYm9yZGVyLXJhZGl1cy1sZ30gLSAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkb2Zmc2V0LWJvcmRlci13aWR0aCk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDIuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNC4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbi5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblxuICBAc3VwcG9ydHMgKHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG5cbiAgQHN1cHBvcnRzICh0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2LFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXG4gIEBzdXBwb3J0cyAodHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZCkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNnM7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LFxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXG4gICAgQHN1cHBvcnRzICh0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkKSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICAvLyBXZSBjYW4ndCBoYXZlIGEgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXG4gIC8vIGFuaW1hdGlvbiBpZiB5b3UgdHJpcCB0aGlzIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciBhbmltYXRpb24uXG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAuOTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZywgLjUpO1xuXG4gICAgLy8gVXNlIHBzZXVkbyBjbGFzc2VzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xMHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5hbGlnbi1iYXNlbGluZSAgICB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9IC8vIEJyb3dzZXIgZGVmYXVsdFxuLmFsaWduLXRvcCAgICAgICAgIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4uYWxpZ24tbWlkZGxlICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1ib3R0b20gICAgICB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtYm90dG9tIHsgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LXRvcCAgICB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSk7XG59XG5cbkBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSk7XG4gIH1cbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5kI3skaW5maXh9LW5vbmUgICAgICAgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWlubGluZSAgICAgICB7IGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0taW5saW5lLWJsb2NrIHsgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1ibG9jayAgICAgICAgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tdGFibGUgICAgICAgIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LXRhYmxlLXJvdyAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tdGFibGUtY2VsbCAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tZmxleCAgICAgICAgIHsgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0taW5saW5lLWZsZXggIHsgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDsgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICAuZC1wcmludC1ub25lICAgICAgICAgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtaW5saW5lICAgICAgIHsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtaW5saW5lLWJsb2NrIHsgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtYmxvY2sgICAgICAgIHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC10YWJsZSAgICAgICAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LXRhYmxlLXJvdyAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LXRhYmxlLWNlbGwgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1mbGV4ICAgICAgICAgeyBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtaW5saW5lLWZsZXggIHsgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDsgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTIxYnk5IHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSg5IC8gMjEpO1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5IHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSg5IC8gMTYpO1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTRieTMge1xuICAmOjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDMgLyA0KTtcbiAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0xYnkxIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgxIC8gMSk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZmlsbCAgICAgICAgIHsgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMCAgICAgICB7IGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMCAgICAgeyBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTEgICAgIHsgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IEBpbmNsdWRlIGZsb2F0LWxlZnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBAaW5jbHVkZSBmbG9hdC1yaWdodDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IEBpbmNsdWRlIGZsb2F0LW5vbmU7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBtaXhpbiBmbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cbkBtaXhpbiBmbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuQG1peGluIGZsb2F0LW5vbmUge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcblxuLy8gU2FzcyBsaXN0IG5vdCBpbiB2YXJpYWJsZXMgc2luY2UgaXQncyBub3QgaW50ZW5kZWQgZm9yIGN1c3RvbWl6YXRpb24uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3k7XG5cbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5zaGFkb3ctc20geyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbSAhaW1wb3J0YW50OyB9XG4uc2hhZG93IHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1sZyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbm9uZSB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuXG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGU7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaWYgKCRpZ25vcmUtd2FybmluZyAhPSB0cnVlKSB7XG4gICAgQHdhcm4gXCJUaGUgYHRleHQtaGlkZSgpYCBtaXhpbiBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mIHY0LjEuMC4gSXQgd2lsbCBiZSByZW1vdmVkIGVudGlyZWx5IGluIHY1LlwiO1xuICB9XG59XG4iLCIvL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgQGluY2x1ZGUgaW52aXNpYmxlKHZpc2libGUpO1xufVxuXG4uaW52aXNpYmxlIHtcbiAgQGluY2x1ZGUgaW52aXNpYmxlKGhpZGRlbik7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVmlzaWJpbGl0eVxuXG5AbWl4aW4gaW52aXNpYmxlKCR2aXNpYmlsaXR5KSB7XG4gIHZpc2liaWxpdHk6ICR2aXNpYmlsaXR5ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvbWFzdGVyL3NyYy9jc3MvbWFpbi5jc3NcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxuLy8gaHR0cHM6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmICRlbmFibGUtcHJpbnQtc3R5bGVzIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgb3V0IGBjb2xvcmAgYW5kIGBiYWNrZ3JvdW5kYFxuICAgICAgLy9jb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXJcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOm5vdCguYnRuKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xuICAgIC8vICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAvL31cblxuICAgIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICAvL1xuXG4gICAgLy9hW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcbiAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgIC8vfVxuXG4gICAgcHJlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGdyYXktNTAwOyAgIC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgLy9cblxuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiJdfQ== */
</pre></body></html>