/*!
 * Bootstrap v4.0.0 (https://getbootstrap.com)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

*,
*::before,
*::after {
  box-sizing: border-box; }

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

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

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

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

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

figure {
  margin: 0 0 1rem; }

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

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

table {
  border-collapse: collapse; }

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

th {
  text-align: inherit; }

label {
  display: inline-block;
  margin-bottom: .5rem; }

button {
  border-radius: 0; }

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

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

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

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

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

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

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

textarea {
  overflow: auto;
  resize: vertical; }

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

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

progress {
  vertical-align: baseline; }

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

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

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

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

output {
  display: inline-block; }

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

template {
  display: none; }

[hidden] {
  display: none !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.container-fluid {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }

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

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

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px; }

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%; }

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: none; }

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

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

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

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

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

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

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

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

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

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

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

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

.order-first {
  order: -1; }

.order-last {
  order: 13; }

.order-0 {
  order: 0; }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.order-3 {
  order: 3; }

.order-4 {
  order: 4; }

.order-5 {
  order: 5; }

.order-6 {
  order: 6; }

.order-7 {
  order: 7; }

.order-8 {
  order: 8; }

.order-9 {
  order: 9; }

.order-10 {
  order: 10; }

.order-11 {
  order: 11; }

.order-12 {
  order: 12; }

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-sm-first {
    order: -1; }
  .order-sm-last {
    order: 13; }
  .order-sm-0 {
    order: 0; }
  .order-sm-1 {
    order: 1; }
  .order-sm-2 {
    order: 2; }
  .order-sm-3 {
    order: 3; }
  .order-sm-4 {
    order: 4; }
  .order-sm-5 {
    order: 5; }
  .order-sm-6 {
    order: 6; }
  .order-sm-7 {
    order: 7; }
  .order-sm-8 {
    order: 8; }
  .order-sm-9 {
    order: 9; }
  .order-sm-10 {
    order: 10; }
  .order-sm-11 {
    order: 11; }
  .order-sm-12 {
    order: 12; }
  .offset-sm-0 {
    margin-left: 0; }
  .offset-sm-1 {
    margin-left: 8.33333%; }
  .offset-sm-2 {
    margin-left: 16.66667%; }
  .offset-sm-3 {
    margin-left: 25%; }
  .offset-sm-4 {
    margin-left: 33.33333%; }
  .offset-sm-5 {
    margin-left: 41.66667%; }
  .offset-sm-6 {
    margin-left: 50%; }
  .offset-sm-7 {
    margin-left: 58.33333%; }
  .offset-sm-8 {
    margin-left: 66.66667%; }
  .offset-sm-9 {
    margin-left: 75%; }
  .offset-sm-10 {
    margin-left: 83.33333%; }
  .offset-sm-11 {
    margin-left: 91.66667%; } }

@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-md-first {
    order: -1; }
  .order-md-last {
    order: 13; }
  .order-md-0 {
    order: 0; }
  .order-md-1 {
    order: 1; }
  .order-md-2 {
    order: 2; }
  .order-md-3 {
    order: 3; }
  .order-md-4 {
    order: 4; }
  .order-md-5 {
    order: 5; }
  .order-md-6 {
    order: 6; }
  .order-md-7 {
    order: 7; }
  .order-md-8 {
    order: 8; }
  .order-md-9 {
    order: 9; }
  .order-md-10 {
    order: 10; }
  .order-md-11 {
    order: 11; }
  .order-md-12 {
    order: 12; }
  .offset-md-0 {
    margin-left: 0; }
  .offset-md-1 {
    margin-left: 8.33333%; }
  .offset-md-2 {
    margin-left: 16.66667%; }
  .offset-md-3 {
    margin-left: 25%; }
  .offset-md-4 {
    margin-left: 33.33333%; }
  .offset-md-5 {
    margin-left: 41.66667%; }
  .offset-md-6 {
    margin-left: 50%; }
  .offset-md-7 {
    margin-left: 58.33333%; }
  .offset-md-8 {
    margin-left: 66.66667%; }
  .offset-md-9 {
    margin-left: 75%; }
  .offset-md-10 {
    margin-left: 83.33333%; }
  .offset-md-11 {
    margin-left: 91.66667%; } }

@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-lg-first {
    order: -1; }
  .order-lg-last {
    order: 13; }
  .order-lg-0 {
    order: 0; }
  .order-lg-1 {
    order: 1; }
  .order-lg-2 {
    order: 2; }
  .order-lg-3 {
    order: 3; }
  .order-lg-4 {
    order: 4; }
  .order-lg-5 {
    order: 5; }
  .order-lg-6 {
    order: 6; }
  .order-lg-7 {
    order: 7; }
  .order-lg-8 {
    order: 8; }
  .order-lg-9 {
    order: 9; }
  .order-lg-10 {
    order: 10; }
  .order-lg-11 {
    order: 11; }
  .order-lg-12 {
    order: 12; }
  .offset-lg-0 {
    margin-left: 0; }
  .offset-lg-1 {
    margin-left: 8.33333%; }
  .offset-lg-2 {
    margin-left: 16.66667%; }
  .offset-lg-3 {
    margin-left: 25%; }
  .offset-lg-4 {
    margin-left: 33.33333%; }
  .offset-lg-5 {
    margin-left: 41.66667%; }
  .offset-lg-6 {
    margin-left: 50%; }
  .offset-lg-7 {
    margin-left: 58.33333%; }
  .offset-lg-8 {
    margin-left: 66.66667%; }
  .offset-lg-9 {
    margin-left: 75%; }
  .offset-lg-10 {
    margin-left: 83.33333%; }
  .offset-lg-11 {
    margin-left: 91.66667%; } }

@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-xl-first {
    order: -1; }
  .order-xl-last {
    order: 13; }
  .order-xl-0 {
    order: 0; }
  .order-xl-1 {
    order: 1; }
  .order-xl-2 {
    order: 2; }
  .order-xl-3 {
    order: 3; }
  .order-xl-4 {
    order: 4; }
  .order-xl-5 {
    order: 5; }
  .order-xl-6 {
    order: 6; }
  .order-xl-7 {
    order: 7; }
  .order-xl-8 {
    order: 8; }
  .order-xl-9 {
    order: 9; }
  .order-xl-10 {
    order: 10; }
  .order-xl-11 {
    order: 11; }
  .order-xl-12 {
    order: 12; }
  .offset-xl-0 {
    margin-left: 0; }
  .offset-xl-1 {
    margin-left: 8.33333%; }
  .offset-xl-2 {
    margin-left: 16.66667%; }
  .offset-xl-3 {
    margin-left: 25%; }
  .offset-xl-4 {
    margin-left: 33.33333%; }
  .offset-xl-5 {
    margin-left: 41.66667%; }
  .offset-xl-6 {
    margin-left: 50%; }
  .offset-xl-7 {
    margin-left: 58.33333%; }
  .offset-xl-8 {
    margin-left: 66.66667%; }
  .offset-xl-9 {
    margin-left: 75%; }
  .offset-xl-10 {
    margin-left: 83.33333%; }
  .offset-xl-11 {
    margin-left: 91.66667%; } }

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1rem;
  background-color: transparent; }
  .table th,
  .table td {
    padding: 0.75rem;
    vertical-align: top;
    border-top: 1px solid #dee2e6; }
  .table thead th {
    vertical-align: bottom;
    border-bottom: 2px solid #dee2e6; }
  .table tbody + tbody {
    border-top: 2px solid #dee2e6; }
  .table .table {
    background-color: #fff; }

.table-sm th,
.table-sm td {
  padding: 0.3rem; }

.table-bordered {
  border: 1px solid #dee2e6; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6; }
  .table-bordered thead th,
  .table-bordered thead td {
    border-bottom-width: 2px; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.table-dark {
  color: #fff;
  background-color: #212529; }
  .table-dark th,
  .table-dark td,
  .table-dark thead th {
    border-color: #32383e; }
  .table-dark.table-bordered {
    border: 0; }
  .table-dark.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.05); }
  .table-dark.table-hover tbody tr:hover {
    background-color: rgba(255, 255, 255, 0.075); }

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

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
    .table-responsive-md > .table-bordered {
      border: 0; } }

@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
    .table-responsive-lg > .table-bordered {
      border: 0; } }

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
    .table-responsive-xl > .table-bordered {
      border: 0; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem; }
  .form-check-input:disabled ~ .form-check-label {
    color: #6c757d; }

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

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

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

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

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

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

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

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745; }
  .was-validated .custom-control-input:valid ~ .custom-control-label:before, .custom-control-input.is-valid ~ .custom-control-label:before {
    background-color: #71dd8a; }

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

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  background-color: #34ce57; }

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

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745; }
  .was-validated .custom-file-input:valid ~ .custom-file-label:before, .custom-file-input.is-valid ~ .custom-file-label:before {
    border-color: inherit; }

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

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

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

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

.was-validated .form-control:invalid, .form-control.is-invalid, .was-validated
.custom-select:invalid,
.custom-select.is-invalid {
  border-color: #dc3545; }
  .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus, .was-validated
  .custom-select:invalid:focus,
  .custom-select.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }
  .was-validated .form-control:invalid ~ .invalid-feedback,
  .was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,
  .form-control.is-invalid ~ .invalid-tooltip, .was-validated
  .custom-select:invalid ~ .invalid-feedback,
  .was-validated
  .custom-select:invalid ~ .invalid-tooltip,
  .custom-select.is-invalid ~ .invalid-feedback,
  .custom-select.is-invalid ~ .invalid-tooltip {
    display: block; }

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

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

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

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

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

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

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

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

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

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center; }
  .form-inline .form-check {
    width: 100%; }
  @media (min-width: 576px) {
    .form-inline label {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 0; }
    .form-inline .form-group {
      display: flex;
      flex: 0 0 auto;
      flex-flow: row wrap;
      align-items: center;
      margin-bottom: 0; }
    .form-inline .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .form-inline .form-control-plaintext {
      display: inline-block; }
    .form-inline .input-group {
      width: auto; }
    .form-inline .form-check {
      display: flex;
      align-items: center;
      justify-content: center;
      width: auto;
      padding-left: 0; }
    .form-inline .form-check-input {
      position: relative;
      margin-top: 0;
      margin-right: 0.25rem;
      margin-left: 0; }
    .form-inline .custom-control {
      align-items: center;
      justify-content: center; }
    .form-inline .custom-control-label {
      margin-bottom: 0; } }

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

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

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

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

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

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

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

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

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

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40; }
  .btn-dark:hover {
    color: #fff;
    background-color: #23272b;
    border-color: #1d2124; }
  .btn-dark:focus, .btn-dark.focus {
    box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }
  .btn-dark.disabled, .btn-dark:disabled {
    color: #fff;
    background-color: #343a40;
    border-color: #343a40; }
  .btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
  .show > .btn-dark.dropdown-toggle {
    color: #fff;
    background-color: #1d2124;
    border-color: #171a1d; }
    .btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
    .show > .btn-dark.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }

.btn-outline-primary {
  color: #007bff;
  background-color: transparent;
  background-image: none;
  border-color: #007bff; }
  .btn-outline-primary:hover {
    color: #fff;
    background-color: #007bff;
    border-color: #007bff; }
  .btn-outline-primary:focus, .btn-outline-primary.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }
  .btn-outline-primary.disabled, .btn-outline-primary:disabled {
    color: #007bff;
    background-color: transparent; }
  .btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,
  .show > .btn-outline-primary.dropdown-toggle {
    color: #fff;
    background-color: #007bff;
    border-color: #007bff; }
    .btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-primary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }

.btn-outline-secondary {
  color: #6c757d;
  background-color: transparent;
  background-image: none;
  border-color: #6c757d; }
  .btn-outline-secondary:hover {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d; }
  .btn-outline-secondary:focus, .btn-outline-secondary.focus {
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }
  .btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
    color: #6c757d;
    background-color: transparent; }
  .btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
  .show > .btn-outline-secondary.dropdown-toggle {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d; }
    .btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-secondary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

.btn-outline-success {
  color: #28a745;
  background-color: transparent;
  background-image: none;
  border-color: #28a745; }
  .btn-outline-success:hover {
    color: #fff;
    background-color: #28a745;
    border-color: #28a745; }
  .btn-outline-success:focus, .btn-outline-success.focus {
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }
  .btn-outline-success.disabled, .btn-outline-success:disabled {
    color: #28a745;
    background-color: transparent; }
  .btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
  .show > .btn-outline-success.dropdown-toggle {
    color: #fff;
    background-color: #28a745;
    border-color: #28a745; }
    .btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-success.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }

.btn-outline-info {
  color: #17a2b8;
  background-color: transparent;
  background-image: none;
  border-color: #17a2b8; }
  .btn-outline-info:hover {
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8; }
  .btn-outline-info:focus, .btn-outline-info.focus {
    box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }
  .btn-outline-info.disabled, .btn-outline-info:disabled {
    color: #17a2b8;
    background-color: transparent; }
  .btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
  .show > .btn-outline-info.dropdown-toggle {
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8; }
    .btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-info.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }

.btn-outline-warning {
  color: #ffc107;
  background-color: transparent;
  background-image: none;
  border-color: #ffc107; }
  .btn-outline-warning:hover {
    color: #212529;
    background-color: #ffc107;
    border-color: #ffc107; }
  .btn-outline-warning:focus, .btn-outline-warning.focus {
    box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }
  .btn-outline-warning.disabled, .btn-outline-warning:disabled {
    color: #ffc107;
    background-color: transparent; }
  .btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,
  .show > .btn-outline-warning.dropdown-toggle {
    color: #212529;
    background-color: #ffc107;
    border-color: #ffc107; }
    .btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-warning.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }

.btn-outline-danger {
  color: #dc3545;
  background-color: transparent;
  background-image: none;
  border-color: #dc3545; }
  .btn-outline-danger:hover {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545; }
  .btn-outline-danger:focus, .btn-outline-danger.focus {
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }
  .btn-outline-danger.disabled, .btn-outline-danger:disabled {
    color: #dc3545;
    background-color: transparent; }
  .btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
  .show > .btn-outline-danger.dropdown-toggle {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545; }
    .btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-danger.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.btn-outline-light {
  color: #f8f9fa;
  background-color: transparent;
  background-image: none;
  border-color: #f8f9fa; }
  .btn-outline-light:hover {
    color: #212529;
    background-color: #f8f9fa;
    border-color: #f8f9fa; }
  .btn-outline-light:focus, .btn-outline-light.focus {
    box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }
  .btn-outline-light.disabled, .btn-outline-light:disabled {
    color: #f8f9fa;
    background-color: transparent; }
  .btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
  .show > .btn-outline-light.dropdown-toggle {
    color: #212529;
    background-color: #f8f9fa;
    border-color: #f8f9fa; }
    .btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-light.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }

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

.btn-link {
  font-weight: 400;
  color: #007bff;
  background-color: transparent; }
  .btn-link:hover {
    color: #0056b3;
    text-decoration: underline;
    background-color: transparent;
    border-color: transparent; }
  .btn-link:focus, .btn-link.focus {
    text-decoration: underline;
    border-color: transparent;
    box-shadow: none; }
  .btn-link:disabled, .btn-link.disabled {
    color: #6c757d; }

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

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

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

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

.fade {
  opacity: 0;
  transition: opacity 0.15s linear; }
  .fade.show {
    opacity: 1; }

.collapse {
  display: none; }
  .collapse.show {
    display: block; }

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

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

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

.dropup,
.dropdown {
  position: relative; }

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

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

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

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

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

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

.dropright .dropdown-menu {
  margin-top: 0;
  margin-left: 0.125rem; }

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

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

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

.dropleft .dropdown-menu {
  margin-top: 0;
  margin-right: 0.125rem; }

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

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

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

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

.dropleft .dropdown-toggle:before {
  vertical-align: 0; }

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

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

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

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

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle; }
  .btn-group > .btn,
  .btn-group-vertical > .btn {
    position: relative;
    flex: 0 1 auto; }
    .btn-group > .btn:hover,
    .btn-group-vertical > .btn:hover {
      z-index: 1; }
    .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
    .btn-group-vertical > .btn:focus,
    .btn-group-vertical > .btn:active,
    .btn-group-vertical > .btn.active {
      z-index: 1; }
  .btn-group .btn + .btn,
  .btn-group .btn + .btn-group,
  .btn-group .btn-group + .btn,
  .btn-group .btn-group + .btn-group,
  .btn-group-vertical .btn + .btn,
  .btn-group-vertical .btn + .btn-group,
  .btn-group-vertical .btn-group + .btn,
  .btn-group-vertical .btn-group + .btn-group {
    margin-left: -1px; }

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start; }
  .btn-toolbar .input-group {
    width: auto; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0; }
  .custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    background-color: #007bff; }
  .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 1px #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 {
  margin-bottom: 0; }
  .custom-control-label:before {
    position: absolute;
    top: 0.25rem;
    left: 0;
    display: block;
    width: 1rem;
    height: 1rem;
    pointer-events: none;
    content: "";
    user-select: none;
    background-color: #dee2e6; }
  .custom-control-label:after {
    position: absolute;
    top: 0.25rem;
    left: 0;
    display: block;
    width: 1rem;
    height: 1rem;
    content: "";
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(2.25rem + 2px);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem; }
  .custom-file-label:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    display: block;
    height: calc(calc(2.25rem + 2px) - 1px * 2);
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    color: #495057;
    content: "Browse";
    background-color: #e9ecef;
    border-left: 1px solid #ced4da;
    border-radius: 0 0.25rem 0.25rem 0; }

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

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

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

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

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

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

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

.tab-content > .tab-pane {
  display: none; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.card-body {
  flex: 1 1 auto;
  padding: 1.25rem; }

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

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0; }

.card-text:last-child {
  margin-bottom: 0; }

.card-link:hover {
  text-decoration: none; }

.card-link + .card-link {
  margin-left: 1.25rem; }

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125); }
  .card-header:first-child {
    border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; }
  .card-header + .list-group .list-group-item:first-child {
    border-top: 0; }

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

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

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

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

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

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

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

.card-deck {
  display: flex;
  flex-direction: column; }
  .card-deck .card {
    margin-bottom: 15px; }
  @media (min-width: 576px) {
    .card-deck {
      flex-flow: row wrap;
      margin-right: -15px;
      margin-left: -15px; }
      .card-deck .card {
        display: flex;
        flex: 1 0 0%;
        flex-direction: column;
        margin-right: 15px;
        margin-bottom: 0;
        margin-left: 15px; } }

.card-group {
  display: flex;
  flex-direction: column; }
  .card-group > .card {
    margin-bottom: 15px; }
  @media (min-width: 576px) {
    .card-group {
      flex-flow: row wrap; }
      .card-group > .card {
        flex: 1 0 0%;
        margin-bottom: 0; }
        .card-group > .card + .card {
          margin-left: 0;
          border-left: 0; }
        .card-group > .card:first-child {
          border-top-right-radius: 0;
          border-bottom-right-radius: 0; }
          .card-group > .card:first-child .card-img-top,
          .card-group > .card:first-child .card-header {
            border-top-right-radius: 0; }
          .card-group > .card:first-child .card-img-bottom,
          .card-group > .card:first-child .card-footer {
            border-bottom-right-radius: 0; }
        .card-group > .card:last-child {
          border-top-left-radius: 0;
          border-bottom-left-radius: 0; }
          .card-group > .card:last-child .card-img-top,
          .card-group > .card:last-child .card-header {
            border-top-left-radius: 0; }
          .card-group > .card:last-child .card-img-bottom,
          .card-group > .card:last-child .card-footer {
            border-bottom-left-radius: 0; }
        .card-group > .card:only-child {
          border-radius: 0.25rem; }
          .card-group > .card:only-child .card-img-top,
          .card-group > .card:only-child .card-header {
            border-top-left-radius: 0.25rem;
            border-top-right-radius: 0.25rem; }
          .card-group > .card:only-child .card-img-bottom,
          .card-group > .card:only-child .card-footer {
            border-bottom-right-radius: 0.25rem;
            border-bottom-left-radius: 0.25rem; }
        .card-group > .card:not(:first-child):not(:last-child):not(:only-child) {
          border-radius: 0; }
          .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-top,
          .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,
          .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-header,
          .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-footer {
            border-radius: 0; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.badge-danger {
  color: #fff;
  background-color: #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;
  background-color: #007bff;
  transition: width 0.6s ease; }

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

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

.media {
  display: flex;
  align-items: flex-start; }

.media-body {
  flex: 1 0 0; }

.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%); }
  .modal.show .modal-dialog {
    transform: translate(0, 0); }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.carousel {
  position: relative; }

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

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

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

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

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

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

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

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

.carousel-control-prev {
  left: 0; }

.carousel-control-next {
  right: 0; }

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: transparent no-repeat center center;
  background-size: 100% 100%; }

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E"); }

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E"); }

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none; }
  .carousel-indicators li {
    position: relative;
    flex: 0 1 auto;
    width: 30px;
    height: 3px;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    background-color: rgba(255, 255, 255, 0.5); }
    .carousel-indicators li:before {
      position: absolute;
      top: -10px;
      left: 0;
      display: inline-block;
      width: 100%;
      height: 10px;
      content: ""; }
    .carousel-indicators li:after {
      position: absolute;
      bottom: -10px;
      left: 0;
      display: inline-block;
      width: 100%;
      height: 10px;
      content: ""; }
  .carousel-indicators .active {
    background-color: #fff; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.rounded {
  border-radius: 0.25rem !important; }

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important; }

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important; }

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important; }

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important; }

.rounded-circle {
  border-radius: 50% !important; }

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

.clearfix:after {
  display: block;
  clear: both;
  content: ""; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important; }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important; }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important; }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important; }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important; }
  .m-sm-1 {
    margin: 0.25rem !important; }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important; }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important; }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important; }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important; }
  .m-sm-2 {
    margin: 0.5rem !important; }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important; }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important; }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important; }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important; }
  .m-sm-3 {
    margin: 1rem !important; }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important; }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important; }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important; }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important; }
  .m-sm-4 {
    margin: 1.5rem !important; }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important; }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important; }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important; }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important; }
  .m-sm-5 {
    margin: 3rem !important; }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important; }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important; }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important; }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important; }
  .p-sm-0 {
    padding: 0 !important; }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important; }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important; }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important; }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important; }
  .p-sm-1 {
    padding: 0.25rem !important; }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important; }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important; }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important; }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important; }
  .p-sm-2 {
    padding: 0.5rem !important; }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important; }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important; }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important; }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important; }
  .p-sm-3 {
    padding: 1rem !important; }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important; }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important; }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important; }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important; }
  .p-sm-4 {
    padding: 1.5rem !important; }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important; }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important; }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important; }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important; }
  .p-sm-5 {
    padding: 3rem !important; }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important; }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important; }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important; }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important; }
  .m-sm-auto {
    margin: auto !important; }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important; }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important; }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important; }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important; } }

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important; }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important; }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important; }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important; }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important; }
  .m-md-1 {
    margin: 0.25rem !important; }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important; }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important; }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important; }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important; }
  .m-md-2 {
    margin: 0.5rem !important; }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important; }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important; }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important; }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important; }
  .m-md-3 {
    margin: 1rem !important; }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important; }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important; }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important; }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important; }
  .m-md-4 {
    margin: 1.5rem !important; }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important; }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important; }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important; }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important; }
  .m-md-5 {
    margin: 3rem !important; }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important; }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important; }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important; }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important; }
  .p-md-0 {
    padding: 0 !important; }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important; }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important; }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important; }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important; }
  .p-md-1 {
    padding: 0.25rem !important; }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important; }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important; }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important; }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important; }
  .p-md-2 {
    padding: 0.5rem !important; }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important; }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important; }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important; }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important; }
  .p-md-3 {
    padding: 1rem !important; }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important; }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important; }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important; }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important; }
  .p-md-4 {
    padding: 1.5rem !important; }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important; }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important; }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important; }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important; }
  .p-md-5 {
    padding: 3rem !important; }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important; }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important; }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important; }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important; }
  .m-md-auto {
    margin: auto !important; }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important; }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important; }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important; }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important; } }

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important; }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important; }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important; }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important; }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important; }
  .m-lg-1 {
    margin: 0.25rem !important; }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important; }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important; }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important; }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important; }
  .m-lg-2 {
    margin: 0.5rem !important; }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important; }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important; }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important; }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important; }
  .m-lg-3 {
    margin: 1rem !important; }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important; }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important; }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important; }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important; }
  .m-lg-4 {
    margin: 1.5rem !important; }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important; }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important; }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important; }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important; }
  .m-lg-5 {
    margin: 3rem !important; }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important; }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important; }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important; }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important; }
  .p-lg-0 {
    padding: 0 !important; }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important; }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important; }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important; }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important; }
  .p-lg-1 {
    padding: 0.25rem !important; }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important; }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important; }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important; }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important; }
  .p-lg-2 {
    padding: 0.5rem !important; }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important; }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important; }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important; }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important; }
  .p-lg-3 {
    padding: 1rem !important; }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important; }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important; }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important; }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important; }
  .p-lg-4 {
    padding: 1.5rem !important; }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important; }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important; }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important; }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important; }
  .p-lg-5 {
    padding: 3rem !important; }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important; }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important; }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important; }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important; }
  .m-lg-auto {
    margin: auto !important; }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important; }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important; }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important; }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important; } }

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important; }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important; }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important; }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important; }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important; }
  .m-xl-1 {
    margin: 0.25rem !important; }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important; }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important; }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important; }
  .m-xl-2 {
    margin: 0.5rem !important; }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important; }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important; }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important; }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important; }
  .m-xl-3 {
    margin: 1rem !important; }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important; }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important; }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important; }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important; }
  .m-xl-4 {
    margin: 1.5rem !important; }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important; }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important; }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important; }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important; }
  .m-xl-5 {
    margin: 3rem !important; }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important; }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important; }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important; }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important; }
  .p-xl-0 {
    padding: 0 !important; }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important; }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important; }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important; }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important; }
  .p-xl-1 {
    padding: 0.25rem !important; }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important; }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important; }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important; }
  .p-xl-2 {
    padding: 0.5rem !important; }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important; }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important; }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important; }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important; }
  .p-xl-3 {
    padding: 1rem !important; }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important; }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important; }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important; }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important; }
  .p-xl-4 {
    padding: 1.5rem !important; }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important; }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important; }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important; }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important; }
  .p-xl-5 {
    padding: 3rem !important; }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important; }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important; }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important; }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important; }
  .m-xl-auto {
    margin: auto !important; }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important; }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important; }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important; }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important; } }

.text-justify {
  text-align: justify !important; }

.text-nowrap {
  white-space: nowrap !important; }

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.text-left {
  text-align: left !important; }

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

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important; }
  .text-sm-right {
    text-align: right !important; }
  .text-sm-center {
    text-align: center !important; } }

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important; }
  .text-md-right {
    text-align: right !important; }
  .text-md-center {
    text-align: center !important; } }

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important; }
  .text-lg-right {
    text-align: right !important; }
  .text-lg-center {
    text-align: center !important; } }

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important; }
  .text-xl-right {
    text-align: right !important; }
  .text-xl-center {
    text-align: center !important; } }

.text-lowercase {
  text-transform: lowercase !important; }

.text-uppercase {
  text-transform: uppercase !important; }

.text-capitalize {
  text-transform: capitalize !important; }

.font-weight-light {
  font-weight: 300 !important; }

.font-weight-normal {
  font-weight: 400 !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

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

body {
  color: #444444;
  font: normal 16px/1.4 "Montserrat", sans-serif; }

h1, h2, h3, h4, h5, h6 {
  font-family: "Baloo Da", cursive;
  font-weight: 700; }

a, a:visited {
  color: #42beb2;
  text-decoration: none; }

a:focus {
  outline: thin dotted; }

a:hover, a:active {
  outline: 0; }

a:hover {
  text-decoration: underline; }

p {
  margin: 0 0 1.5em; }

blockquote {
  color: #444444;
  font-style: italic;
  margin: 1.5em; }

b, strong, dfn {
  font-weight: bold; }

em, dfn {
  font-style: italic; }

abbr, acronym {
  cursor: help; }

abbr[title] {
  border-bottom: none;
  text-transform: uppercase; }

address {
  font-style: normal;
  margin: 0 0 1.5em; }

del {
  color: #666; }

ins {
  background: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background: #ff0;
  color: #000;
  font-style: italic;
  font-weight: bold; }

pre {
  margin: 1.5em 0;
  white-space: pre; }

pre, code, kbd, samp, tt {
  font: 1em 'andale mono', 'lucida console', monospace;
  line-height: 1.5; }

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word; }

q {
  quotes: none; }

q:before, q:after {
  content: "";
  content: none; }

small {
  font-size: 85%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

nav ul, nav ol {
  list-style: none;
  list-style-image: none;
  margin: 0;
  padding: 0; }

li ul, li ol {
  margin: 0; }

ul, ol {
  margin: 0 1.5em 1.5em 0;
  padding-left: 1.5em; }

ul {
  list-style-type: disc; }

ol {
  list-style-type: decimal; }

dl {
  margin: 0 0 1.5em 0; }

dl dt {
  font-weight: bold; }

dd {
  margin-left: 1.5em; }

::-moz-selection {
  background: #42beb2;
  color: #fff;
  text-shadow: none; }

::selection {
  background: #42beb2;
  color: #fff;
  text-shadow: none; }

body {
  position: relative;
  z-index: 1; }

@media (min-width: 576px) {
  h1, h2, h3, h4, h5, h6 {
    letter-spacing: 1px; } }

.sticky-top {
  z-index: 900; }

.btn {
  border-radius: 2px; }

ul.parsley-errors-list {
  list-style: none;
  padding: 10px 0px;
  margin: 0; }
  ul.parsley-errors-list li {
    display: block;
    color: red; }

.ui-datepicker {
  z-index: 1000 !important; }

* {
  outline: none !important; }

.dropdown:hover > .dropdown-menu {
  display: block; }

form label {
  display: none; }

form input.form-control {
  border: 0px;
  border-bottom: 1px solid #444444;
  border-radius: 0px;
  color: #444444;
  background-color: transparent;
  padding-left: 0px; }

form .datepicker {
  position: relative; }
  form .datepicker button.ui-datepicker-trigger {
    position: absolute;
    right: 10px;
    top: 0;
    background-color: transparent;
    border: 0px;
    padding: 0px 0px 0px 0px;
    width: 22px;
    height: 22px;
    margin: 7px;
    cursor: pointer; }
    form .datepicker button.ui-datepicker-trigger img {
      margin-top: -2px;
      width: 100%;
      height: 100%; }

form button[type="submit"] {
  position: relative;
  z-index: 0;
  text-transform: uppercase;
  color: #42beb2;
  background-color: white;
  border: 1px solid #42beb2;
  letter-spacing: 2px; }
  form button[type="submit"]:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #42beb2;
    transform: scaleX(0);
    transform-origin: 0 50%;
    transition: transform .3s ease-out; }
  form button[type="submit"]:hover {
    color: white; }
    form button[type="submit"]:hover:before {
      transform: scaleX(1); }

.light-orange {
  color: #ec9132; }

.dark-orange {
  color: #e85434; }

.teal {
  color: #42beb2; }

.callout {
  width: 100%;
  display: flex;
  flex-direction: row;
  border-bottom: 10px solid #fff;
  text-align: center; }
  .callout-holder {
    border: 10px solid #fff; }
  .callout:nth-child(odd) .callout-image {
    border-right: 10px solid white; }
  .callout:nth-child(even) {
    flex-direction: row-reverse; }
    .callout:nth-child(even) .callout-image {
      border-left: 10px solid white; }
  .callout-image {
    display: none; }
    @media (min-width: 768px) {
      .callout-image {
        display: flex;
        flex: 5;
        background-position: center center;
        background-size: cover; }
        .callout-image:before {
          content: "";
          outline: 1px solid white !important;
          outline-offset: -10px;
          width: 100%;
          height: 100%; } }
  .callout-content {
    flex: 3;
    padding: 30px;
    color: white;
    font-size: 14px; }
    .callout-content h3 {
      margin: 0px;
      margin-bottom: 10px; }
    .callout-content p {
      margin: 0px;
      margin-bottom: 10px; }
    .callout-content .button-callout {
      position: relative;
      z-index: 500;
      border-width: 1px;
      border-style: solid;
      text-transform: uppercase;
      letter-spacing: 2px;
      padding: 10px 20px;
      color: white;
      border-color: white; }
      .callout-content .button-callout:before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        transform: scaleX(0);
        transform-origin: 0 50%;
        transition: transform .3s ease-out; }
      .callout-content .button-callout:hover:before {
        transform: scaleX(1); }
  .callout:nth-child(4n + 1) {
    background-color: #f1f1f1; }
    .callout:nth-child(4n + 1) h3 {
      color: #ec9132; }
    .callout:nth-child(4n + 1) .callout-content {
      color: black; }
    .callout:nth-child(4n + 1) .button-callout {
      color: #42beb2;
      border-color: #42beb2; }
      .callout:nth-child(4n + 1) .button-callout:before {
        background: #42beb2; }
      .callout:nth-child(4n + 1) .button-callout:hover {
        color: white; }
  .callout:nth-child(4n + 2) {
    background-color: #ec9132;
    color: white; }
    .callout:nth-child(4n + 2) .button-callout:before {
      background: white; }
    .callout:nth-child(4n + 2) .button-callout:hover {
      color: #ec9132; }
  .callout:nth-child(4n + 3) {
    background-color: #e85434; }
    .callout:nth-child(4n + 3) .button-callout:before {
      background: white; }
    .callout:nth-child(4n + 3) .button-callout:hover {
      color: #e85434; }
  .callout:nth-child(4n + 4) {
    background-color: #42beb2; }
    .callout:nth-child(4n + 4) .button-callout:before {
      background: white; }
    .callout:nth-child(4n + 4) .button-callout:hover {
      color: #42beb2; }
  .callout:last-child {
    border-bottom: 0; }

@media (max-width: 1199.98px) {
  .container {
    padding-left: 0px;
    padding-right: 0px;
    max-width: 100%;
    width: 100%; } }

.container.content {
  padding-left: 0px;
  padding-right: 0px; }

.sticky {
  position: fixed;
  top: 0;
  width: 100%; }

.bm-ebs-button {
  position: relative;
  z-index: 0;
  text-transform: uppercase;
  padding: 5px 15px;
  color: #42beb2;
  background-color: white;
  border: 1px solid #42beb2;
  letter-spacing: 2px;
  display: block;
  margin-bottom: 15px; }
  .bm-ebs-button:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: scaleX(0);
    transform-origin: 0 50%;
    transition: transform .3s ease-out;
    background: #42beb2; }
  .bm-ebs-button:hover {
    color: white; }
    .bm-ebs-button:hover:before {
      transform: scaleX(1); }

.hero {
  position: relative;
  overflow: hidden;
  z-index: 0;
  height: 250px; }
  @media (min-width: 576px) {
    .hero {
      height: 300px; } }
  @media (min-width: 768px) {
    .hero {
      height: 350px; } }
  @media (min-width: 992px) {
    .hero {
      height: 475px; } }
  .hero .image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    z-index: 1; }
  .hero .overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2; }
  .hero .content {
    z-index: 3;
    position: absolute;
    left: 45px;
    bottom: 25px;
    color: white; }
    @media (min-width: 768px) {
      .hero .content {
        left: 50px;
        bottom: 50px; } }
    .hero .content h1 {
      font-size: 30px;
      line-height: 30px;
      margin-bottom: 10px;
      margin-right: 100px; }
      @media (min-width: 768px) {
        .hero .content h1 {
          max-width: 300px; } }
    .hero .content .hero-body {
      font-size: 23px;
      margin-bottom: 10px; }
      .hero .content .hero-body p {
        margin-bottom: 0px; }
    .hero .content .hero-button {
      position: relative;
      z-index: 0;
      text-transform: uppercase;
      letter-spacing: 2px;
      padding: 10px 20px;
      border: 1px solid white;
      color: white; }
      .hero .content .hero-button:before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: white;
        transform: scaleX(0);
        transform-origin: 0 50%;
        transition: transform .3s ease-out; }
      .hero .content .hero-button:hover {
        color: #ff571f; }
        .hero .content .hero-button:hover:before {
          transform: scaleX(1); }
  .hero.masked {
    z-index: 500;
    mask: url(../../images/content-swoop-mask.svg);
    -webkit-mask: url(../../images/content-swoop-mask.svg) bottom left/cover;
    -o-mask: url(../../images/content-swoop-mask.svg) bottom left/cover;
    -ms-mask: url(../../images/content-swoop-mask.svg) bottom left/cover;
    -webkit-mask-repeat: no-repeat; }
    .hero.masked .overlay {
      height: 250px;
      background-image: url(../../images/content-swoop-lines.svg);
      background-repeat: no-repeat;
      background-position: bottom left;
      background-size: cover;
      margin-top: 5px; }
      @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        .hero.masked .overlay {
          background-image: url(../../images/hooters-white-wave.png);
          background-repeat: no-repeat;
          background-position: bottom left;
          background-size: cover;
          margin-top: 1px; } }
      @media (min-width: 576px) {
        .hero.masked .overlay {
          height: 300px; } }
      @media (min-width: 768px) {
        .hero.masked .overlay {
          height: 350px; } }
      @media (min-width: 992px) {
        .hero.masked .overlay {
          height: 475px; } }
  .hero.type-homepage {
    position: relative;
    height: 460px; }
    @media (min-width: 768px) {
      .hero.type-homepage {
        height: 485px; } }
    @media (min-width: 992px) {
      .hero.type-homepage {
        height: 594px; } }
    .hero.type-homepage .image {
      max-height: 80%; }
      @media (max-width: 575.98px) {
        .hero.type-homepage .image {
          max-height: 65%; } }
    .hero.type-homepage .overlay {
      width: 100%;
      height: 100%;
      background-position: 15% 100%;
      background-repeat: no-repeat;
      overflow: hidden;
      background-image: url(../../images/home-hero-swoop.svg);
      background-size: 1380px 290px; }
      @media (min-width: 768px) {
        .hero.type-homepage .overlay {
          background-position: 15% 100%;
          background-size: 1380px 290px; } }
      @media (min-width: 992px) {
        .hero.type-homepage .overlay {
          background-position: center bottom;
          background-size: 1380px 290px; } }
    @media (min-width: 768px) {
      .hero.type-homepage .content h1 {
        font-size: 26px; }
      .hero.type-homepage .content .hero-body {
        font-size: 18px;
        max-width: 300px; } }
    @media (min-width: 992px) {
      .hero.type-homepage .content h1 {
        font-size: 30px; }
      .hero.type-homepage .content .hero-body {
        font-size: 23px;
        max-width: 100%; } }

#heros .slick-arrow {
  position: absolute;
  bottom: 80px;
  width: 18px;
  height: 30px;
  line-height: 0;
  font-size: 0;
  background-color: transparent;
  background-image: url(../../images/arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  border: 0px;
  cursor: pointer;
  z-index: 501;
  opacity: 0; }
  @media (max-width: 767.98px) {
    #heros .slick-arrow {
      opacity: 1; } }

#heros .slick-prev {
  left: 10px; }

#heros .slick-next {
  right: 10px;
  transform: scaleX(-1); }

#heros .slick-dots {
  margin-top: -40px;
  margin-bottom: 14px;
  margin-left: 65px;
  margin-right: 27px;
  padding: 0px;
  list-style: none; }
  #heros .slick-dots li {
    position: relative;
    display: inline-block;
    padding: 0; }
    #heros .slick-dots li button {
      margin-left: 5px;
      margin-right: 5px;
      background-color: transparent;
      border: 0px;
      cursor: pointer;
      font-size: 0;
      padding: 0;
      width: 15px;
      height: 15px;
      background-image: url(../../images/gallery-dot.svg);
      background-repeat: no-repeat; }
    #heros .slick-dots li.slick-active button {
      background-image: url(../../images/gallery-dot-selected.svg); }
  @media (max-width: 767.98px) {
    #heros .slick-dots {
      opacity: 0; } }

.footer {
  position: relative;
  z-index: 100;
  background-color: #f7f7f7; }
  .footer:before {
    content: '';
    width: 100%;
    height: 5px;
    display: block;
    background-image: url(../../images/ruler-footer.svg);
    background-position: 0%; }
  .footer h2 {
    font-size: 1.5rem;
    color: #ec9132;
    margin-bottom: 20px; }
  .footer .container {
    padding: 50px; }
  .footer .newsletter-form input {
    color: #9e9e93;
    border-bottom: 1px solid #9e9e93; }
  .footer .newsletter-form button {
    border: 1px solid #42beb2; }
  .footer .newsletter-form #newsletterMessage {
    display: none; }
  .footer .links-and-social {
    position: relative;
    z-index: 100;
    display: block;
    padding: 40px 0px; }
    @media (min-width: 768px) {
      .footer .links-and-social {
        padding: 15px 0px; } }
    .footer .links-and-social a.link {
      display: block;
      text-align: center;
      padding: 15px;
      text-transform: uppercase;
      font-family: "Montserrat", sans-serif;
      font-size: 14px;
      color: #444444; }
  .footer .social-icons {
    display: inline-block;
    position: relative;
    z-index: 100;
    width: 100%;
    padding-top: 20px;
    padding-bottom: 20px;
    text-align: center; }
    .footer .social-icons .socialIcon {
      display: inline-block;
      width: 35px;
      height: 35px;
      margin-right: 6px;
      margin-left: 6px; }
      .footer .social-icons .socialIcon svg {
        fill: #42beb2; }
        .footer .social-icons .socialIcon svg:hover {
          fill: #ec9132; }
  .footer .location {
    text-align: center; }
    @media (min-width: 576px) {
      .footer .location {
        text-align: left; } }
    .footer .location a.btn {
      position: relative;
      z-index: 0;
      text-transform: uppercase;
      color: #42beb2;
      background-color: white;
      border: 1px solid #42beb2;
      letter-spacing: 2px; }
      .footer .location a.btn:before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #42beb2;
        transform: scaleX(0);
        transform-origin: 0 50%;
        transition: transform .3s ease-out; }
      .footer .location a.btn:hover {
        color: white; }
        .footer .location a.btn:hover:before {
          transform: scaleX(1); }

@media (max-width: 1000000px) {
  .offcanvas-collapse {
    z-index: 1000;
    position: fixed;
    top: 0;
    left: 0;
    /* Height of navbar */
    bottom: 0;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    transition: -webkit-transform .3s ease-in-out;
    transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out;
    -webkit-transform: translateX(100%);
    transform: translateX(100%); }
    .offcanvas-collapse.open {
      -webkit-transform: translateX(0);
      transform: translateX(0);
      /* Account for horizontal padding on navbar */ }
    .offcanvas-collapse .background {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; } }

@media (max-width: 991.98px) {
  .auto-hiding-header {
    transform: translateZ(0);
    will-change: transform;
    transition: all .3s; }
    .auto-hiding-header.is-hidden {
      transform: translateY(-131px); } }
    @media (max-width: 991.98px) and (min-width: 768px) {
      .auto-hiding-header.is-hidden {
        transform: translateY(-80px); } }

@media (max-width: 991.98px) {
      .auto-hiding-header.is-hidden .navbar-brand-holder {
        max-height: 60px;
        will-change: transform;
        transition: all .3s; }
      .auto-hiding-header.is-hidden .navbar-brand-holder-inner .brand .logo img {
        left: 10px;
        top: 5px;
        transform: translateX(0);
        will-change: transform;
        transition: all .3s;
        max-height: 45px; }
      .auto-hiding-header.is-hidden .navbar-brand-holder-inner .navbar-toggle {
        opacity: 1.0;
        transition: all .3s; } }

.navbar {
  background-color: #ec9132;
  padding: 0; }
  .navbar-toggler {
    margin-right: 10px; }
    .navbar-toggler-icon {
      background-image: url(../../images/hamburger.svg);
      background-size: cover;
      background-repeat: no-repeat;
      padding: 0; }
      .navbar-toggler-icon.close {
        background-size: contain;
        float: none;
        opacity: 1;
        background-image: url(../../images/close.svg);
        max-height: 24px; }
  .navbar-header {
    width: 100%; }
    .navbar-header-content {
      text-align: right;
      display: flex;
      justify-content: space-between;
      align-items: center;
      height: 80px; }
      .navbar-header-content .offers {
        background-color: white;
        color: #ec9132; }
        .navbar-header-content .offers:hover {
          color: #0c4d9f; }
      .navbar-header-content .social-icons {
        padding-left: 0px; }
        @media (min-width: 576px) {
          .navbar-header-content .social-icons {
            padding-left: 10px;
            padding-right: 9px; } }
        @media (min-width: 1200px) {
          .navbar-header-content .social-icons {
            padding-left: 0px;
            padding-right: 0px; } }
        .navbar-header-content .social-icons .socialIcon {
          width: 35px;
          height: 35px;
          margin-right: 0px;
          margin-left: 12px;
          float: left !important; }
          @media (min-width: 576px) {
            .navbar-header-content .social-icons .socialIcon {
              width: 28px;
              height: 28px;
              margin-left: 10px; } }
          @media (min-width: 1200px) {
            .navbar-header-content .social-icons .socialIcon {
              margin-left: 0px;
              margin-right: 12px; } }
          .navbar-header-content .social-icons .socialIcon svg {
            fill: white; }
            .navbar-header-content .social-icons .socialIcon svg:hover {
              fill: #42beb2; }
      .navbar-header-content .header-links .btn {
        color: white;
        text-transform: uppercase;
        padding: 5px 8px;
        border-radius: 2px;
        padding: 5px 15px;
        font-size: 12px; }
        @media (max-width: 1199.98px) {
          .navbar-header-content .header-links .btn {
            font-size: 11px; } }
        .navbar-header-content .header-links .btn.offers {
          color: #ec9132; }
          .navbar-header-content .header-links .btn.offers:hover {
            color: #0c4d9f; }
    .navbar-header-booking {
      padding: 0px 15px 15px 15px; }
    .navbar-header .form-booking-holder .date {
      padding-right: 0px; }
    .navbar-header .form-booking-holder input[type=text] {
      height: 35px;
      padding: 5px;
      text-align: center;
      background-color: #ec9132;
      border: 1px solid white;
      border-radius: 2px;
      color: white;
      font-family: "Montserrat", sans-serif;
      font-weight: 200;
      font-size: 12px;
      letter-spacing: 2px; }
      .navbar-header .form-booking-holder input[type=text]::placeholder {
        color: white; }
      @media (max-width: 320px) {
        .navbar-header .form-booking-holder input[type=text] {
          font-size: 10px; } }
      .navbar-header .form-booking-holder input[type=text].parsley-error {
        background-color: red; }
    .navbar-header .form-booking-holder button.ui-datepicker-trigger {
      background-color: transparent;
      border: 0px;
      padding: 0px 0px 0px 0px;
      width: 22px;
      height: 22px;
      margin: 7px;
      cursor: pointer; }
      .navbar-header .form-booking-holder button.ui-datepicker-trigger img {
        margin-top: -2px;
        width: 100%;
        height: 100%; }
    .navbar-header .form-booking-holder .submit {
      padding-left: 0px; }
      @media (min-width: 576px) {
        .navbar-header .form-booking-holder .submit {
          padding-left: 10px; } }
    .navbar-header .form-booking-holder .submit-booking-hero {
      position: relative;
      z-index: 0;
      height: 35px;
      padding: 5px 15px;
      background-color: #ff571f;
      border: 1px solid white;
      border-radius: 2px;
      color: white;
      font-family: "Montserrat", sans-serif;
      font-weight: 200;
      font-size: 12px;
      letter-spacing: 2px; }
      .navbar-header .form-booking-holder .submit-booking-hero:before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: white;
        transform: scaleX(0);
        transform-origin: 0 50%;
        transition: transform .3s ease-out; }
      .navbar-header .form-booking-holder .submit-booking-hero:hover {
        color: #ff571f; }
        .navbar-header .form-booking-holder .submit-booking-hero:hover:before {
          transform: scaleX(1); }
      .navbar-header .form-booking-holder .submit-booking-hero:after {
        content: "BOOK NOW"; }
        @media (max-width: 375px) {
          .navbar-header .form-booking-holder .submit-booking-hero:after {
            content: "BOOK"; } }
      @media (max-width: 320px) {
        .navbar-header .form-booking-holder .submit-booking-hero {
          font-size: 10px; } }
    .navbar-header .form-booking-holder ul.parsley-errors-list {
      display: none; }
  .navbar-brand-holder {
    background-color: white;
    border-top: 2px solid #e85434;
    border-bottom: 2px solid #e85434;
    width: 100%;
    height: 100%;
    height: 94px;
    justify-content: center; }
    .navbar-brand-holder:before {
      content: '';
      display: block;
      width: 100%;
      border-top: 1px solid transparent;
      border-bottom: 1px dotted #231f20;
      box-shadow: 0 0 0 0 #e85434; }
    .navbar-brand-holder:after {
      content: '';
      display: block;
      width: 100%;
      border-top: 1px dotted #231f20;
      box-shadow: 0 0 0 0 #e85434; }
    .navbar-brand-holder-inner {
      height: 100%;
      margin-bottom: -4px;
      position: relative; }
      @media (min-width: 992px) {
        .navbar-brand-holder-inner .brand {
          text-align: left; } }
      .navbar-brand-holder-inner .brand .row {
        margin: 0px; }
        @media (min-width: 992px) {
          .navbar-brand-holder-inner .brand .row {
            height: 82px; } }
      .navbar-brand-holder-inner .brand .logo {
        padding-left: 0px;
        padding-right: 0px; }
        @media (min-width: 992px) {
          .navbar-brand-holder-inner .brand .logo {
            padding-left: 15px;
            padding-right: 15px; } }
        @media (min-width: 1200px) {
          .navbar-brand-holder-inner .brand .logo {
            padding-left: 0px;
            padding-top: 0px;
            padding-right: 20px; } }
        .navbar-brand-holder-inner .brand .logo img {
          height: 64px;
          width: 100%;
          position: absolute;
          top: 10px;
          left: 50%;
          transform: translateX(-50%); }
          @media (min-width: 992px) {
            .navbar-brand-holder-inner .brand .logo img {
              position: relative; } }
      .navbar-brand-holder-inner .brand .navbar-toggle {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 35px;
        height: auto;
        opacity: 0; }
      .navbar-brand-holder-inner .brand .menu {
        padding-left: 0px;
        padding-right: 0px; }
        .navbar-brand-holder-inner .brand .menu .navbar {
          background-color: transparent !important;
          width: 100%;
          height: 90px;
          margin-top: -2px;
          float: right !important; }
          .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav {
            flex-direction: row; }
            .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item a {
              color: #ff571f;
              font-family: "Baloo Da", cursive;
              font-size: 18px;
              text-transform: uppercase; }
              .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item a:focus {
                outline: none; }
              @media (max-width: 1199.98px) {
                .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item a {
                  font-size: 16px; } }
              .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item a.nav-link {
                line-height: 70px; }
              .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item a.dropdown-toggle::after {
                border: 0px; }
            .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item.home {
              display: none; }
            .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item.dropdown.show .nav-link {
              background-color: #ff571f;
              color: white; }
            .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item.dropdown:hover .nav-link, .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item.dropdown.active .nav-link {
              background-color: #ff571f;
              color: white; }
            .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item .dropdown-menu {
              position: absolute;
              margin-top: -1px;
              padding: 0px;
              border-radius: 0px;
              border: 0px;
              -webkit-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
              -moz-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
              box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1); }
              .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item .dropdown-menu:before {
                content: '';
                display: block;
                width: 100%;
                border-top: 1px solid transparent;
                border-bottom: 1px dotted #231f20;
                box-shadow: 0 0 0 0 #e85434; }
              .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item {
                padding-left: 24px;
                line-height: 50px; }
                .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item:first-child {
                  border-top: 2px solid #e85434;
                  margin-top: 1px; }
                .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item:hover, .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item.active {
                  background-color: #ff571f;
                  color: white; }
            .navbar-brand-holder-inner .brand .menu .navbar .navbar-nav .nav-item .dropdown-menu-right {
              right: 0;
              left: auto; }
  .navbar-collapse {
    padding: 0; }
    .navbar-collapse .nav-container {
      overflow-y: auto;
      margin-left: 15vw;
      height: 100%;
      background-color: #f7f7f7; }
      .navbar-collapse .nav-container .navbar-nav {
        display: block;
        width: 100%; }
      .navbar-collapse .nav-container ul {
        padding: 0px; }
        .navbar-collapse .nav-container ul > li.nav-item {
          z-index: 100;
          background-color: white;
          min-height: 50px;
          font-family: "Baloo Da", cursive;
          font-size: 24px;
          line-height: 50px;
          border-bottom: 1px solid #f0f0f0; }
          .navbar-collapse .nav-container ul > li.nav-item.closer button {
            text-transform: uppercase;
            margin-left: 25px;
            padding: 0px;
            color: #707070; }
          .navbar-collapse .nav-container ul > li.nav-item .nav-link {
            padding: 0px;
            color: #ec9132;
            padding-left: 25px; }
          .navbar-collapse .nav-container ul > li.nav-item.dropdown .dropdown-toggle {
            margin-right: 50px; }
            .navbar-collapse .nav-container ul > li.nav-item.dropdown .dropdown-toggle:after {
              display: none; }
          .navbar-collapse .nav-container ul > li.nav-item.dropdown .caret {
            position: absolute;
            top: 0px;
            right: 0px;
            border: 1px solid #e1e1e1;
            border-radius: 15px;
            width: 30px;
            height: 30px;
            margin-top: 10px;
            margin-right: 20px;
            background-image: url(../../images/menu-open.png);
            background-repeat: no-repeat;
            background-position: center; }
          .navbar-collapse .nav-container ul > li.nav-item.dropdown.show .caret {
            background-image: url(../../images/menu-close.png); }
          .navbar-collapse .nav-container ul > li.nav-item.dropdown.show .dropdown-menu {
            max-height: 1000px; }
          .navbar-collapse .nav-container ul > li.nav-item.dropdown .dropdown-menu {
            z-index: 99;
            border: 0px;
            margin: 0px;
            padding: 0px;
            display: block;
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s; }
            .navbar-collapse .nav-container ul > li.nav-item.dropdown .dropdown-menu .dropdown-item {
              margin: 0px;
              padding: 0px;
              padding-left: 25px;
              border-top: 1px solid #f0f0f0;
              font-size: 20px;
              color: #707070; }
              .navbar-collapse .nav-container ul > li.nav-item.dropdown .dropdown-menu .dropdown-item:visited {
                color: #707070; }
              .navbar-collapse .nav-container ul > li.nav-item.dropdown .dropdown-menu .dropdown-item.active {
                background-color: #f7f7f7; }
      .navbar-collapse .nav-container .nav-footer {
        position: relative; }
        .navbar-collapse .nav-container .nav-footer .nav-bg {
          position: absolute;
          z-index: 90;
          width: 100%;
          height: 100%;
          background-image: url(../../images/palm-tree-silver.svg);
          background-repeat: no-repeat;
          transform: translate(-12%, 10%) rotate(15deg); }
          @media (min-width: 576px) {
            .navbar-collapse .nav-container .nav-footer .nav-bg {
              width: 200%;
              height: 200%;
              transform: translate(-9%, 20%) rotate(15deg); } }
        .navbar-collapse .nav-container .nav-footer .nav-links {
          position: relative;
          z-index: 100;
          display: block;
          padding-top: 20px; }
          .navbar-collapse .nav-container .nav-footer .nav-links a.link {
            display: block;
            text-align: center;
            padding: 15px;
            text-transform: uppercase;
            font-family: "Montserrat", sans-serif;
            font-size: 12px;
            color: #444444; }
        .navbar-collapse .nav-container .nav-footer .social-icons {
          display: inline-block;
          position: relative;
          z-index: 100;
          width: 100%;
          padding-top: 20px;
          padding-bottom: 20px;
          text-align: center; }
          .navbar-collapse .nav-container .nav-footer .social-icons .socialIcon {
            display: inline-block;
            width: 35px;
            height: 35px;
            margin-right: 6px;
            margin-left: 6px; }
            .navbar-collapse .nav-container .nav-footer .social-icons .socialIcon svg {
              fill: #42beb2; }
              .navbar-collapse .nav-container .nav-footer .social-icons .socialIcon svg:hover {
                fill: white; }

/* Homepage Template */
.homepage-template .container.content {
  position: relative;
  overflow: hidden;
  padding-top: 225px; }
  @media (min-width: 768px) {
    .homepage-template .container.content {
      padding-top: 174px; } }
  .homepage-template .container.content .tree1 {
    display: none;
    z-index: 300; }
    @media (min-width: 768px) {
      .homepage-template .container.content .tree1 {
        display: block;
        position: absolute;
        top: 574px;
        right: 0px;
        transform: scaleX(-1) translateX(-100px) rotate(15deg);
        height: 500px;
        width: 486px;
        fill: #fdfdfd; } }
    @media (min-width: 992px) {
      .homepage-template .container.content .tree1 {
        top: 674px; } }
    @media (min-width: 1200px) {
      .homepage-template .container.content .tree1 {
        height: 500px;
        top: 754px;
        transform: scaleX(-1) translateX(-170px) rotate(15deg); } }
  .homepage-template .container.content .tree2 {
    display: none; }
    @media (min-width: 768px) {
      .homepage-template .container.content .tree2 {
        display: block;
        position: absolute;
        top: 1474px;
        left: 0px;
        transform: translateX(-35%);
        height: 350px;
        width: 259px;
        fill: #f7f7f7; } }
  .homepage-template .container.content .tree3 {
    display: none; }
    @media (min-width: 768px) {
      .homepage-template .container.content .tree3 {
        display: block;
        position: absolute;
        z-index: 800;
        bottom: -100px;
        right: -40px;
        transform: scaleX(-1) translateX(-50px) rotate(15deg);
        height: 350px;
        width: 340.5px;
        fill: #ececec; } }
  .homepage-template .container.content .hero-booking {
    display: none;
    -webkit-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
    z-index: 400;
    text-align: center;
    color: #e85434;
    text-transform: uppercase; }
    @media (min-width: 768px) {
      .homepage-template .container.content .hero-booking {
        display: flex;
        flex-direction: column;
        position: absolute;
        right: 30px;
        top: 450px;
        width: 350px;
        height: 310px; } }
    @media (min-width: 992px) {
      .homepage-template .container.content .hero-booking {
        top: 554px;
        right: 50px; } }
    .homepage-template .container.content .hero-booking .back-box {
      background-color: #42beb2;
      position: absolute;
      right: -5px;
      top: -5px;
      width: 90%;
      height: 90%;
      z-index: 401; }
    .homepage-template .container.content .hero-booking .inner {
      padding: 30px;
      background-color: white;
      z-index: 402; }
    .homepage-template .container.content .hero-booking .dates {
      display: flex;
      flex: 2;
      flex-direction: row;
      height: 145px; }
      .homepage-template .container.content .hero-booking .dates .date {
        position: relative;
        display: flex;
        flex: 1 0 0;
        flex-direction: column;
        border: 1px solid #e85434;
        padding: 15px;
        cursor: pointer; }
        .homepage-template .container.content .hero-booking .dates .date.arrival {
          margin-right: 15px; }
        .homepage-template .container.content .hero-booking .dates .date.departure {
          margin-left: 15px; }
        .homepage-template .container.content .hero-booking .dates .date .label {
          font-size: 14px;
          margin-top: -24px;
          background-color: white;
          margin-left: 15px;
          margin-right: 15px;
          margin-bottom: 10px; }
        .homepage-template .container.content .hero-booking .dates .date .month {
          font-weight: bold;
          flex: 1 0 0; }
        .homepage-template .container.content .hero-booking .dates .date .day {
          flex: 2;
          font-size: 40px;
          font-weight: 100; }
        .homepage-template .container.content .hero-booking .dates .date .year {
          flex: 1 0 0; }
        .homepage-template .container.content .hero-booking .dates .date .ui-datepicker-inline {
          position: absolute;
          bottom: 0px;
          right: 0px; }
    .homepage-template .container.content .hero-booking .guests {
      position: relative;
      flex: 1 0 0;
      text-align: center;
      line-height: 67px;
      font-size: 30px;
      font-weight: 100;
      margin: 5px 0; }
      .homepage-template .container.content .hero-booking .guests img {
        cursor: pointer; }
      .homepage-template .container.content .hero-booking .guests .up {
        position: absolute;
        width: 15px;
        height: 15px;
        top: 3px;
        left: 50%;
        margin-left: -7px; }
      .homepage-template .container.content .hero-booking .guests .down {
        position: absolute;
        width: 15px;
        height: 15px;
        bottom: 3px;
        left: 50%;
        margin-left: -7px;
        transform: scaleY(-1); }
  .homepage-template .container.content .content-holder {
    background-image: url(../../images/homepage-content-mobile.png);
    background-repeat: no-repeat;
    background-size: cover;
    color: white;
    padding-top: 5px;
    padding-bottom: 5px; }
    .homepage-template .container.content .content-holder:before, .homepage-template .container.content .content-holder:after {
      content: '';
      width: 100%;
      height: 5px;
      display: block;
      background-image: url(../../images/ruler.svg);
      background-position: 0%; }
    .homepage-template .container.content .content-holder:after {
      background-position: 100%; }
    .homepage-template .container.content .content-holder .inner {
      padding: 50px 45px; }
      @media (min-width: 768px) {
        .homepage-template .container.content .content-holder .inner {
          margin-right: 350px; } }
      @media (min-width: 992px) {
        .homepage-template .container.content .content-holder .inner {
          max-width: 600px; } }
  .homepage-template .container.content .offers-holder {
    border-left: 10px solid white;
    border-right: 10px solid white;
    border-bottom: 10px solid white;
    padding-bottom: 30px; }

/* Content Template */
.content-template .container.content {
  position: relative;
  overflow: hidden;
  padding-top: 225px; }
  @media (min-width: 768px) {
    .content-template .container.content {
      padding-top: 174px; } }
  .content-template .container.content .tree1 {
    display: none; }
    @media (min-width: 992px) {
      .content-template .container.content .tree1 {
        display: block;
        position: absolute;
        z-index: 800;
        bottom: -100px;
        right: 0px;
        transform: scaleX(-1) translateX(-50px) rotate(15deg);
        height: 350px;
        width: 340px;
        fill: #ececec; } }
  .content-template .container.content .content-holder {
    position: relative;
    z-index: 400;
    margin-top: -75px;
    margin-left: 0px;
    margin-right: 0px; }
    .content-template .container.content .content-holder .content-mask {
      position: absolute;
      top: 0;
      height: 100px;
      width: 100%;
      background-image: url(../../images/content-swoop-mask.svg);
      background-repeat: no-repeat; }
    .content-template .container.content .content-holder .content-column {
      padding-top: 120px;
      padding-bottom: 250px; }
      .content-template .container.content .content-holder .content-column h1 {
        color: #ec9132; }
      .content-template .container.content .content-holder .content-column h2 {
        font-family: "Montserrat", sans-serif;
        font-weight: 100;
        color: #42beb2; }
      .content-template .container.content .content-holder .content-column h3 {
        color: #42beb2; }
      .content-template .container.content .content-holder .content-column .wysiwyg img {
        outline: 1px solid white !important;
        outline-offset: -10px;
        width: 100%;
        height: auto; }
        @media (min-width: 576px) {
          .content-template .container.content .content-holder .content-column .wysiwyg img {
            margin-left: 10px;
            width: auto;
            height: auto; } }
      .content-template .container.content .content-holder .content-column ul {
        list-style: none;
        padding-left: 0px; }
        .content-template .container.content .content-holder .content-column ul li::before {
          content: "\2022";
          /* Unicode of character to precede the list item */
          font-size: 1.5em;
          /* em or %*/
          padding-right: .5em;
          /* use em*/
          position: relative;
          top: 0em;
          color: #42beb2; }
    .content-template .container.content .content-holder .content-sidebar {
      padding-top: 30px; }
      @media (min-width: 992px) {
        .content-template .container.content .content-holder .content-sidebar {
          padding-top: 120px; } }
      .content-template .container.content .content-holder .content-sidebar .offers-holder {
        padding: 0px;
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 20px; }
        .content-template .container.content .content-holder .content-sidebar .offers-holder .slick-prev {
          left: -27px; }
        .content-template .container.content .content-holder .content-sidebar .offers-holder .slick-next {
          right: -27px; }
        .content-template .container.content .content-holder .content-sidebar .offers-holder .slick-dots {
          margin-top: -50px; }
        @media (min-width: 992px) {
          .content-template .container.content .content-holder .content-sidebar .offers-holder {
            margin-left: 30px;
            margin-right: 30px;
            padding-bottom: 10px; } }
        .content-template .container.content .content-holder .content-sidebar .offers-holder .offers-inner .offer {
          padding-bottom: 40px; }
      .content-template .container.content .content-holder .content-sidebar .instagram-holder {
        margin-left: 40px;
        margin-right: 40px;
        text-align: center; }
        .content-template .container.content .content-holder .content-sidebar .instagram-holder .socialIcon {
          width: 30px;
          height: 30px;
          margin-left: auto;
          margin-right: auto;
          margin-bottom: 10px; }
          .content-template .container.content .content-holder .content-sidebar .instagram-holder .socialIcon svg {
            fill: white; }
        .content-template .container.content .content-holder .content-sidebar .instagram-holder a {
          color: white;
          font-family: "Baloo Da", cursive;
          font-weight: 100; }
        .content-template .container.content .content-holder .content-sidebar .instagram-holder .instagram-inner {
          margin-top: 10px;
          padding: 20px;
          background-color: white; }
          .content-template .container.content .content-holder .content-sidebar .instagram-holder .instagram-inner .lightwidget-widget {
            width: 100%;
            border: 0;
            overflow: hidden; }

/* Title Template */
.title-template .container.content {
  position: relative;
  overflow: hidden;
  padding-top: 225px; }
  @media (min-width: 768px) {
    .title-template .container.content {
      padding-top: 174px; } }
  .title-template .container.content .tree1 {
    display: none; }
    @media (min-width: 992px) {
      .title-template .container.content .tree1 {
        display: block;
        position: absolute;
        top: 554px;
        left: 0px;
        transform: translateX(-35%);
        height: 600px;
        width: 443.5px;
        fill: #f7f7f7;
        z-index: 600; } }
  .title-template .container.content .tree2 {
    display: none; }
    @media (min-width: 992px) {
      .title-template .container.content .tree2 {
        display: block;
        position: absolute;
        z-index: 800;
        bottom: -100px;
        right: -40px;
        transform: scaleX(-1) translateX(-50px) rotate(15deg);
        height: 350px;
        width: 340px;
        fill: #ececec; } }

.title-template .content-holder {
  text-align: center;
  padding: 20px; }
  @media (min-width: 992px) {
    .title-template .content-holder {
      padding: 20px 250px; } }
  .title-template .content-holder h1 {
    color: #ec9132; }
  .title-template .content-holder h2 {
    font-family: "Montserrat", sans-serif;
    font-weight: 100;
    color: #42beb2;
    font-size: 20px; }
  .title-template .content-holder h3 {
    color: #42beb2; }
  .title-template .content-holder img {
    margin-left: 10px;
    outline: 1px solid white !important;
    outline-offset: -10px; }
  .title-template .content-holder ul {
    list-style: none;
    padding-left: 0px; }
    .title-template .content-holder ul li::before {
      content: "\2022";
      /* Unicode of character to precede the list item */
      font-size: 1.5em;
      /* em or %*/
      padding-right: .5em;
      /* use em*/
      position: relative;
      top: 0em;
      color: #42beb2; }

.title-template .callout-holder .callout:nth-child(4n + 1) {
  background-color: #e85434; }
  .title-template .callout-holder .callout:nth-child(4n + 1) h3 {
    color: white; }
  .title-template .callout-holder .callout:nth-child(4n + 1) .callout-content {
    color: white; }
    .title-template .callout-holder .callout:nth-child(4n + 1) .callout-content .button-callout {
      color: white;
      border-color: white; }
      .title-template .callout-holder .callout:nth-child(4n + 1) .callout-content .button-callout:before {
        background: white; }
      .title-template .callout-holder .callout:nth-child(4n + 1) .callout-content .button-callout:hover {
        color: #e85434; }

.title-template .callout-holder .callout:nth-child(4n + 2) {
  background-color: #42beb2; }
  .title-template .callout-holder .callout:nth-child(4n + 2) .callout-content .button-callout:before {
    background: white; }
  .title-template .callout-holder .callout:nth-child(4n + 2) .callout-content .button-callout:hover {
    color: #42beb2; }

.title-template .callout-holder .callout:nth-child(4n + 3) {
  background-color: #f1f1f1; }
  .title-template .callout-holder .callout:nth-child(4n + 3) h3 {
    color: #ec9132; }
  .title-template .callout-holder .callout:nth-child(4n + 3) .callout-content {
    color: black; }
    .title-template .callout-holder .callout:nth-child(4n + 3) .callout-content .button-callout {
      color: #42beb2;
      border-color: #42beb2; }
      .title-template .callout-holder .callout:nth-child(4n + 3) .callout-content .button-callout:before {
        background: #42beb2; }
      .title-template .callout-holder .callout:nth-child(4n + 3) .callout-content .button-callout:hover {
        color: white; }

.title-template .callout-holder .callout:nth-child(4n + 4) {
  background-color: #ec9132;
  color: white; }
  .title-template .callout-holder .callout:nth-child(4n + 4) .callout-content .button-callout:before {
    background: white; }
  .title-template .callout-holder .callout:nth-child(4n + 4) .callout-content .button-callout:hover {
    color: #ec9132; }

.title-template .offers-holder {
  border-left: 10px solid white;
  border-right: 10px solid white;
  border-bottom: 10px solid white;
  padding-bottom: 30px; }

/* Rooms Template */
.rooms-template .container.content {
  position: relative;
  overflow: hidden;
  padding-top: 225px; }
  @media (min-width: 768px) {
    .rooms-template .container.content {
      padding-top: 174px; } }
  .rooms-template .container.content .tree1 {
    display: none; }
    @media (min-width: 992px) {
      .rooms-template .container.content .tree1 {
        display: block;
        position: absolute;
        z-index: 800;
        top: 100px;
        right: -40px;
        transform: scaleX(-1) translateX(-50px) rotate(15deg);
        height: 350px;
        width: 340.5px;
        fill: #ececec; } }
  .rooms-template .container.content .content-holder {
    text-align: center;
    background-color: #42beb2;
    color: white;
    padding-bottom: 5px; }
    .rooms-template .container.content .content-holder .inner {
      padding: 30px; }
      @media (min-width: 992px) {
        .rooms-template .container.content .content-holder .inner {
          padding: 30px 300px; } }
    .rooms-template .container.content .content-holder:after {
      content: '';
      width: 100%;
      height: 5px;
      display: block;
      background-image: url(../../images/ruler.svg);
      background-position: 50%; }
  .rooms-template .container.content .rooms-holder {
    padding: 20px; }
    .rooms-template .container.content .rooms-holder .room {
      margin-bottom: 20px;
      -webkit-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
      box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1); }
      @media (min-width: 992px) {
        .rooms-template .container.content .rooms-holder .room {
          margin-bottom: 30px; } }
      .rooms-template .container.content .rooms-holder .room .row {
        margin-left: 0px;
        margin-right: 0px; }
        @media (min-width: 768px) {
          .rooms-template .container.content .rooms-holder .room .row {
            border-bottom: 1px solid #e5e5e5; } }
        .rooms-template .container.content .rooms-holder .room .row .gallery {
          width: 100%;
          height: 160px;
          padding: 0px;
          background-color: black;
          overflow: hidden;
          position: relative;
          z-index: 500; }
          @media (min-width: 768px) {
            .rooms-template .container.content .rooms-holder .room .row .gallery {
              height: 320px; } }
          .rooms-template .container.content .rooms-holder .room .row .gallery .slick-arrow {
            position: absolute;
            top: 65px;
            width: 18px;
            height: 30px;
            line-height: 0;
            font-size: 0;
            background-color: transparent;
            background-image: url(../../images/arrow.svg);
            background-repeat: no-repeat;
            background-position: center;
            border: 0px;
            cursor: pointer;
            z-index: 501; }
            @media (min-width: 768px) {
              .rooms-template .container.content .rooms-holder .room .row .gallery .slick-arrow {
                top: 135px; } }
          .rooms-template .container.content .rooms-holder .room .row .gallery .slick-prev {
            left: 10px; }
          .rooms-template .container.content .rooms-holder .room .row .gallery .slick-next {
            right: 10px;
            transform: scaleX(-1); }
          .rooms-template .container.content .rooms-holder .room .row .gallery .slick-dots {
            margin-top: -60px;
            margin-left: 9.5px;
            margin-right: 9.5px;
            padding: 0px;
            list-style: none;
            text-align: center; }
            .rooms-template .container.content .rooms-holder .room .row .gallery .slick-dots li {
              position: relative;
              display: inline-block;
              padding: 0; }
              .rooms-template .container.content .rooms-holder .room .row .gallery .slick-dots li button {
                margin-left: 5px;
                margin-right: 5px;
                background-color: transparent;
                border: 0px;
                cursor: pointer;
                font-size: 0;
                padding: 0;
                width: 27px;
                height: 27px;
                background-image: url(../../images/gallery-dot.svg);
                background-repeat: no-repeat; }
              .rooms-template .container.content .rooms-holder .room .row .gallery .slick-dots li.slick-active button {
                background-image: url(../../images/gallery-dot-selected.svg); }
          .rooms-template .container.content .rooms-holder .room .row .gallery .room-image {
            width: 100%;
            height: 160px;
            background-repeat: no-repeat;
            background-position: center center;
            background-size: cover; }
            @media (min-width: 768px) {
              .rooms-template .container.content .rooms-holder .room .row .gallery .room-image {
                height: 320px; } }
        .rooms-template .container.content .rooms-holder .room .row .info {
          display: flex;
          flex-direction: column;
          padding: 20px; }
          @media (min-width: 992px) {
            .rooms-template .container.content .rooms-holder .room .row .info {
              padding: 40px; } }
          .rooms-template .container.content .rooms-holder .room .row .info h3 {
            flex: 1 0 0;
            text-align: center;
            color: #42beb2; }
          .rooms-template .container.content .rooms-holder .room .row .info h4 {
            flex: 1 0 0;
            text-align: center;
            color: #42beb2;
            font-family: "Montserrat", sans-serif;
            font-weight: 100;
            font-size: 20px; }
          .rooms-template .container.content .rooms-holder .room .row .info .descr {
            flex: 1 0 0;
            font-size: 14px; }
          .rooms-template .container.content .rooms-holder .room .row .info .booking {
            flex: 1 0 0; }
      .rooms-template .container.content .rooms-holder .room .features {
        display: flex;
        flex-wrap: wrap;
        padding: 0px 20px; }
        @media (min-width: 992px) {
          .rooms-template .container.content .rooms-holder .room .features {
            padding: 20px 100px; } }
        .rooms-template .container.content .rooms-holder .room .features .feat {
          flex: 0 0 100%;
          box-sizing: border-box;
          font-size: 12px;
          line-height: 20px;
          width: 50%;
          min-height: 30px;
          margin-bottom: 10px;
          padding-left: 32px;
          background-repeat: no-repeat;
          background-size: 20px 20px;
          background-position: 5px 0px; }
          @media (min-width: 576px) {
            .rooms-template .container.content .rooms-holder .room .features .feat {
              flex: 0 0 43%; } }
          @media (min-width: 768px) {
            .rooms-template .container.content .rooms-holder .room .features .feat {
              flex: 0 0 28%; } }
        .rooms-template .container.content .rooms-holder .room .features .sertaMattress {
          background-image: url(../../images/room-feat-serta.svg); }
        .rooms-template .container.content .rooms-holder .room .features .threadCount {
          background-image: url(../../images/room-feat-linens.svg); }
        .rooms-template .container.content .rooms-holder .room .features .safe {
          background-image: url(../../images/room-feat-safe.svg); }
        .rooms-template .container.content .rooms-holder .room .features .hairDryer {
          background-image: url(../../images/room-feat-dryer.svg); }
        .rooms-template .container.content .rooms-holder .room .features .tv {
          background-image: url(../../images/room-feat-tv.svg); }
        .rooms-template .container.content .rooms-holder .room .features .iron {
          background-image: url(../../images/room-feat-iron.svg); }
        .rooms-template .container.content .rooms-holder .room .features .internet {
          background-image: url(../../images/room-feat-internet.svg); }
        .rooms-template .container.content .rooms-holder .room .features .artwork {
          background-image: url(../../images/room-feat-art.svg); }
        .rooms-template .container.content .rooms-holder .room .features .sq-ft {
          background-image: url(../../images/room-feat-sqft.svg); }
        .rooms-template .container.content .rooms-holder .room .features .stripView {
          background-image: url(../../images/room-feat-view.svg); }
        .rooms-template .container.content .rooms-holder .room .features .beds {
          background-image: url(../../images/room-feat-bed.svg); }
        .rooms-template .container.content .rooms-holder .room .features .stripView {
          background-image: url(../../images/room-feat-view.svg); }
        .rooms-template .container.content .rooms-holder .room .features .poolView {
          background-image: url(../../images/room-feat-view.svg); }
        .rooms-template .container.content .rooms-holder .room .features .livingRoom {
          background-image: url(../../images/room-feat-fridge.svg); }
        .rooms-template .container.content .rooms-holder .room .features .pullOut {
          background-image: url(../../images/room-feat-couch.svg); }
        .rooms-template .container.content .rooms-holder .room .features .bathrooms {
          background-image: url(../../images/room-feat-bathroom.svg); }
        .rooms-template .container.content .rooms-holder .room .features .jacuzziTub {
          background-image: url(../../images/room-feat-jacuzzi.svg); }
        .rooms-template .container.content .rooms-holder .room .features .kingBed {
          background-image: url(../../images/room-feat-bed.svg); }
        .rooms-template .container.content .rooms-holder .room .features .parking {
          background-image: url(../../images/room-feat-parking.svg); }
      .rooms-template .container.content .rooms-holder .room .booking {
        padding: 20px; }
        @media (min-width: 768px) {
          .rooms-template .container.content .rooms-holder .room .booking {
            padding: 0px; } }
        .rooms-template .container.content .rooms-holder .room .booking a.btn {
          width: 200px;
          text-align: center;
          margin-left: auto;
          margin-right: auto;
          text-transform: uppercase;
          letter-spacing: 2px;
          background-color: #ff571f;
          color: white; }
        .rooms-template .container.content .rooms-holder .room .booking .call {
          text-align: center;
          font-family: "Baloo Da", cursive;
          text-transform: uppercase;
          padding: 20px 40px; }
          @media (min-width: 768px) {
            .rooms-template .container.content .rooms-holder .room .booking .call {
              padding: 0px; } }
          .rooms-template .container.content .rooms-holder .room .booking .call a {
            color: #ff571f; }
  .rooms-template .container.content .offers-holder {
    border-left: 10px solid white;
    border-right: 10px solid white;
    border-bottom: 10px solid white;
    padding-bottom: 30px; }

/* Offers Template */
.offers-template .container.content {
  position: relative;
  overflow: hidden;
  padding-top: 225px; }
  @media (min-width: 768px) {
    .offers-template .container.content {
      padding-top: 174px; } }
  .offers-template .container.content .tree1 {
    display: none; }
    @media (min-width: 992px) {
      .offers-template .container.content .tree1 {
        display: block;
        position: absolute;
        z-index: 800;
        top: 100px;
        right: -40px;
        transform: scaleX(-1) translateX(-50px) rotate(15deg);
        height: 350px;
        width: 340.5px;
        fill: #ececec; } }
  .offers-template .container.content .content-holder {
    text-align: center;
    background-color: #42beb2;
    color: white;
    padding-bottom: 5px; }
    .offers-template .container.content .content-holder .inner {
      padding: 30px; }
      @media (min-width: 992px) {
        .offers-template .container.content .content-holder .inner {
          padding: 30px 300px; } }
    .offers-template .container.content .content-holder:after {
      content: '';
      width: 100%;
      height: 5px;
      display: block;
      background-image: url(../../images/ruler.svg);
      background-position: 50%; }
  .offers-template .container.content .offers-listing-holder {
    padding: 30px; }
    .offers-template .container.content .offers-listing-holder .offers-listing-inner {
      display: flex;
      flex-wrap: wrap;
      padding: 0; }
      @media (min-width: 576px) {
        .offers-template .container.content .offers-listing-holder .offers-listing-inner {
          margin: -10px; } }
      .offers-template .container.content .offers-listing-holder .offers-listing-inner .offer {
        flex: 1 0 100%;
        margin: 0 0 30px 0;
        -webkit-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
        box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1); }
        @media (min-width: 576px) {
          .offers-template .container.content .offers-listing-holder .offers-listing-inner .offer {
            flex: 0 0 46.9%;
            margin: 10px auto; } }
        @media (min-width: 992px) {
          .offers-template .container.content .offers-listing-holder .offers-listing-inner .offer {
            flex: 0 0 31%;
            margin: 10px; } }
  @media screen and (min-width: 992px) and (-ms-high-contrast: active), (min-width: 992px) and (-ms-high-contrast: none) {
    .offers-template .container.content .offers-listing-holder .offers-listing-inner .offer {
      flex: 0 0 29%; } }
    .offers-template .container.content .offers-listing-holder nav {
      margin-top: 30px;
      background-color: white; }
      .offers-template .container.content .offers-listing-holder nav .page-item.active .page-link {
        background-color: transparent;
        color: black; }
      .offers-template .container.content .offers-listing-holder nav .page-item:nth-child(2) {
        margin-left: 20px; }
      .offers-template .container.content .offers-listing-holder nav .page-item:nth-last-child(2) {
        margin-right: 20px; }
      .offers-template .container.content .offers-listing-holder nav .page-item .page-link {
        cursor: pointer;
        border: 0px;
        border-radius: 0px;
        color: #c5c5c5;
        padding: 10px 15px; }
        .offers-template .container.content .offers-listing-holder nav .page-item .page-link.back {
          padding: 10px;
          color: transparent; }
        .offers-template .container.content .offers-listing-holder nav .page-item .page-link.next {
          padding: 10px;
          color: transparent; }
          .offers-template .container.content .offers-listing-holder nav .page-item .page-link.next img {
            transform: scaleX(-1); }
        .offers-template .container.content .offers-listing-holder nav .page-item .page-link img {
          margin-top: -2px;
          width: 15px;
          height: 15px; }

/* Offer Detail Template */
.offer-template .container.content {
  position: relative;
  overflow: hidden;
  padding-top: 225px; }
  @media (min-width: 768px) {
    .offer-template .container.content {
      padding-top: 174px; } }

.offer-template .container {
  position: relative; }
  .offer-template .container .content-holder {
    position: relative;
    z-index: 400;
    margin-top: -75px;
    margin-left: 0px;
    margin-right: 0px; }
    .offer-template .container .content-holder .content-mask {
      position: absolute;
      top: 0;
      height: 100px;
      width: 100%;
      background-image: url(../../images/content-swoop-mask.svg);
      background-repeat: no-repeat; }
    .offer-template .container .content-holder .content-column {
      padding-top: 120px; }
      .offer-template .container .content-holder .content-column h1 {
        color: #ec9132;
        margin-bottom: 0px; }
      .offer-template .container .content-holder .content-column h2 {
        color: #42beb2;
        font-family: "Montserrat", sans-serif;
        font-size: 20px;
        font-weight: 100; }
      .offer-template .container .content-holder .content-column .btn {
        position: relative;
        z-index: 0;
        text-transform: uppercase;
        color: #42beb2;
        background-color: white;
        border: 1px solid #42beb2;
        letter-spacing: 2px;
        margin-bottom: 10px; }
        .offer-template .container .content-holder .content-column .btn:before {
          content: "";
          position: absolute;
          z-index: -1;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          transform: scaleX(0);
          transform-origin: 0 50%;
          transition: transform .3s ease-out;
          background: #42beb2; }
        .offer-template .container .content-holder .content-column .btn:hover {
          color: white; }
          .offer-template .container .content-holder .content-column .btn:hover:before {
            transform: scaleX(1); }
    .offer-template .container .content-holder .content-sidebar {
      padding-top: 30px; }
      @media (min-width: 992px) {
        .offer-template .container .content-holder .content-sidebar {
          padding-top: 120px; } }
      .offer-template .container .content-holder .content-sidebar .offers-holder {
        padding: 0px;
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 20px; }
        .offer-template .container .content-holder .content-sidebar .offers-holder .slick-prev {
          left: -27px; }
        .offer-template .container .content-holder .content-sidebar .offers-holder .slick-next {
          right: -27px; }
        .offer-template .container .content-holder .content-sidebar .offers-holder .slick-dots {
          margin-top: -50px; }
        @media (min-width: 992px) {
          .offer-template .container .content-holder .content-sidebar .offers-holder {
            margin-left: 30px;
            margin-right: 30px;
            padding-bottom: 10px; } }
        .offer-template .container .content-holder .content-sidebar .offers-holder .offers-inner .offer {
          padding-bottom: 40px; }

/* Entertainment Calendar Template */
.entertainment-calendar-template .container.content {
  position: relative;
  overflow: hidden;
  padding-top: 225px; }
  @media (min-width: 768px) {
    .entertainment-calendar-template .container.content {
      padding-top: 174px; } }

.entertainment-calendar-template .content .content-holder {
  padding: 30px; }
  .entertainment-calendar-template .content .content-holder h2 {
    display: none; }
  .entertainment-calendar-template .content .content-holder h3 {
    color: #ec9132;
    margin-left: 15px; }
  .entertainment-calendar-template .content .content-holder .shows .inner, .entertainment-calendar-template .content .content-holder .events .inner {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 20px; }
    .entertainment-calendar-template .content .content-holder .shows .inner .event, .entertainment-calendar-template .content .content-holder .events .inner .event {
      flex: 1 0 100%;
      margin-bottom: 30px;
      -webkit-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
      box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1); }
      @media (min-width: 576px) {
        .entertainment-calendar-template .content .content-holder .shows .inner .event, .entertainment-calendar-template .content .content-holder .events .inner .event {
          flex: 0 0 46.9%;
          margin-bottom: 0px;
          margin: 10px; } }
      @media (min-width: 768px) {
        .entertainment-calendar-template .content .content-holder .shows .inner .event, .entertainment-calendar-template .content .content-holder .events .inner .event {
          flex: 0 0 30%; } }
      .entertainment-calendar-template .content .content-holder .shows .inner .event .event-thumbnail, .entertainment-calendar-template .content .content-holder .events .inner .event .event-thumbnail {
        background-color: black;
        height: 130px;
        background-position: center center;
        background-size: cover; }
      .entertainment-calendar-template .content .content-holder .shows .inner .event .event-content, .entertainment-calendar-template .content .content-holder .events .inner .event .event-content {
        padding: 30px;
        position: relative;
        font-size: 14px; }
        .entertainment-calendar-template .content .content-holder .shows .inner .event .event-content h4, .entertainment-calendar-template .content .content-holder .events .inner .event .event-content h4 {
          color: #42beb2;
          font-size: 20px;
          text-align: center;
          min-height: 50px; }
        .entertainment-calendar-template .content .content-holder .shows .inner .event .event-content .schedule, .entertainment-calendar-template .content .content-holder .events .inner .event .event-content .schedule {
          font-size: 12px;
          text-align: center;
          margin-left: -30px;
          margin-bottom: 15px; }
          .entertainment-calendar-template .content .content-holder .shows .inner .event .event-content .schedule img, .entertainment-calendar-template .content .content-holder .events .inner .event .event-content .schedule img {
            width: 20px;
            height: 20px;
            margin-right: 10px; }
        .entertainment-calendar-template .content .content-holder .shows .inner .event .event-content a.button-event, .entertainment-calendar-template .content .content-holder .events .inner .event .event-content a.button-event {
          position: relative;
          z-index: 0;
          text-transform: uppercase;
          color: #42beb2;
          background-color: white;
          border: 1px solid #42beb2;
          letter-spacing: 2px;
          display: block;
          margin-bottom: 15px; }
          .entertainment-calendar-template .content .content-holder .shows .inner .event .event-content a.button-event:before, .entertainment-calendar-template .content .content-holder .events .inner .event .event-content a.button-event:before {
            content: "";
            position: absolute;
            z-index: -1;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            transform: scaleX(0);
            transform-origin: 0 50%;
            transition: transform .3s ease-out;
            background: #42beb2; }
          .entertainment-calendar-template .content .content-holder .shows .inner .event .event-content a.button-event:hover, .entertainment-calendar-template .content .content-holder .events .inner .event .event-content a.button-event:hover {
            color: white; }
            .entertainment-calendar-template .content .content-holder .shows .inner .event .event-content a.button-event:hover:before, .entertainment-calendar-template .content .content-holder .events .inner .event .event-content a.button-event:hover:before {
              transform: scaleX(1); }
        .entertainment-calendar-template .content .content-holder .shows .inner .event .event-content a.button-link, .entertainment-calendar-template .content .content-holder .events .inner .event .event-content a.button-link {
          display: block;
          color: #42beb2;
          text-decoration: underline; }

.entertainment-calendar-template .content .offers-holder {
  padding-bottom: 30px; }

/* Event Detail Template */
.event-template .container.content {
  position: relative;
  overflow: hidden;
  padding-top: 225px; }
  @media (min-width: 768px) {
    .event-template .container.content {
      padding-top: 174px; } }

.event-template .container {
  position: relative; }
  .event-template .container .content-holder {
    position: relative;
    z-index: 400;
    margin-top: -75px;
    margin-left: 0px;
    margin-right: 0px; }
    .event-template .container .content-holder .content-mask {
      position: absolute;
      top: 0;
      height: 100px;
      width: 100%;
      background-image: url(../../images/content-swoop-mask.svg);
      background-repeat: no-repeat; }
    .event-template .container .content-holder .content-column {
      padding-top: 120px; }
      .event-template .container .content-holder .content-column h1 {
        color: #ec9132;
        margin-bottom: 0px;
        font-size: 32px; }
      .event-template .container .content-holder .content-column h2 {
        color: #42beb2;
        font-family: "Montserrat", sans-serif;
        font-size: 20px;
        font-weight: 100; }
      .event-template .container .content-holder .content-column .btn {
        text-transform: uppercase;
        color: #42beb2;
        background-color: white;
        border: 1px solid #42beb2;
        letter-spacing: 2px;
        margin-bottom: 10px;
        position: relative;
        z-index: 0; }
        .event-template .container .content-holder .content-column .btn:before {
          content: "";
          position: absolute;
          z-index: -1;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          transform: scaleX(0);
          transform-origin: 0 50%;
          transition: transform .3s ease-out;
          background: #42beb2; }
        .event-template .container .content-holder .content-column .btn:hover {
          color: white; }
          .event-template .container .content-holder .content-column .btn:hover:before {
            transform: scaleX(1); }
    .event-template .container .content-holder .content-sidebar {
      padding-top: 30px; }
      @media (min-width: 992px) {
        .event-template .container .content-holder .content-sidebar {
          padding-top: 120px; } }
      .event-template .container .content-holder .content-sidebar .gallery-holder {
        padding: 0px;
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 20px; }
        @media (min-width: 992px) {
          .event-template .container .content-holder .content-sidebar .gallery-holder {
            margin-left: 30px;
            margin-right: 30px;
            padding-bottom: 10px; } }
        .event-template .container .content-holder .content-sidebar .gallery-holder .slick-prev {
          left: -27px; }
        .event-template .container .content-holder .content-sidebar .gallery-holder .slick-next {
          right: -27px; }
        .event-template .container .content-holder .content-sidebar .gallery-holder .slick-dots {
          margin-top: 10px; }
        .event-template .container .content-holder .content-sidebar .gallery-holder .gallery-inner .gallery-image .gallery-image-thumbnail {
          height: 200px;
          background-position: center center;
          background-size: cover;
          margin: 0px 10px;
          outline: 1px solid white !important;
          outline-offset: -10px; }
      .event-template .container .content-holder .content-sidebar .offers-holder {
        padding: 0px;
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 20px; }
        .event-template .container .content-holder .content-sidebar .offers-holder .slick-prev {
          left: -27px; }
        .event-template .container .content-holder .content-sidebar .offers-holder .slick-next {
          right: -27px; }
        .event-template .container .content-holder .content-sidebar .offers-holder .slick-dots {
          margin-top: -50px; }
        @media (min-width: 992px) {
          .event-template .container .content-holder .content-sidebar .offers-holder {
            margin-left: 30px;
            margin-right: 30px;
            padding-bottom: 10px; } }
        .event-template .container .content-holder .content-sidebar .offers-holder .offers-inner .offer {
          padding-bottom: 40px; }

/* Common Sections */
.horizontal-orange {
  background: #e85434;
  /* Old browsers */
  background: -moz-linear-gradient(left, #e85434 0%, #ec8e33 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #e85434 0%, #ec8e33 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #e85434 0%, #ec8e33 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e85434', endColorstr='#ec8e33',GradientType=1 );
  /* IE6-9 */ }

.vertical-orange {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ec8d33+0,e85434+100 */
  background: #ec8d33;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ec8d33 0%, #e85434 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ec8d33 0%, #e85434 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ec8d33 0%, #e85434 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ec8d33', endColorstr='#e85434',GradientType=0 );
  /* IE6-9 */ }

.offers-holder {
  position: relative;
  text-align: center;
  padding-left: 30px;
  padding-right: 30px; }
  .offers-holder h3 {
    color: white;
    line-height: 80px;
    margin: 0; }
  .offers-holder .offers-inner .slick-arrow {
    position: absolute;
    top: 160px;
    width: 18px;
    height: 30px;
    line-height: 0;
    font-size: 0;
    background-color: transparent;
    background-image: url(../../images/arrow.svg);
    background-repeat: no-repeat;
    background-position: center;
    border: 0px;
    cursor: pointer; }
  .offers-holder .offers-inner .slick-prev {
    left: -20px; }
  .offers-holder .offers-inner .slick-next {
    right: -20px;
    transform: scaleX(-1); }
  .offers-holder .offers-inner .slick-dots {
    margin-left: 9.5px;
    margin-right: 9.5px;
    padding: 0px;
    list-style: none;
    text-align: center; }
    .offers-holder .offers-inner .slick-dots li {
      position: relative;
      display: inline-block;
      padding: 0; }
      .offers-holder .offers-inner .slick-dots li button {
        margin-left: 5px;
        margin-right: 5px;
        background-color: transparent;
        border: 0px;
        cursor: pointer;
        font-size: 0;
        padding: 0;
        width: 27px;
        height: 27px;
        background-image: url(../../images/offer-dot.svg);
        background-repeat: no-repeat; }
      .offers-holder .offers-inner .slick-dots li.slick-active button {
        background-image: url(../../images/offer-dot-selected.svg); }

.offers-holder.offers-1 .slick-arrow {
  display: none; }

.offers-holder.offers-1 .slick-dots {
  display: none; }

.offer {
  text-align: center;
  background-color: white;
  border: 10px solid white;
  margin: 0 10px; }
  .offer .offer-thumbnail {
    height: 130px;
    background-position: center center;
    background-size: cover; }
  .offer .offer-content {
    padding: 20px;
    height: 220px;
    position: relative;
    font-size: 13px; }
    .offer .offer-content h3 {
      color: #42beb2;
      font-size: 20px;
      line-height: 20px; }
    .offer .offer-content h4 {
      color: #42beb2;
      font-family: "Montserrat", sans-serif;
      font-size: 14px;
      font-weight: 100; }
    .offer .offer-content a.button-offer {
      position: absolute;
      bottom: 20px;
      left: 20px;
      right: 20px;
      text-transform: uppercase;
      color: #42beb2;
      background-color: white;
      border: 1px solid #42beb2;
      letter-spacing: 2px;
      display: block;
      z-index: 0; }
      .offer .offer-content a.button-offer:before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #42beb2;
        transform: scaleX(0);
        transform-origin: 0 50%;
        transition: transform .3s ease-out; }
      .offer .offer-content a.button-offer:hover {
        color: white; }
        .offer .offer-content a.button-offer:hover:before {
          transform: scaleX(1); }

.gallery-1 .slick-arrow {
  display: none; }

.gallery-1 .slick-dots {
  display: none; }

.gallery-holder {
  position: relative;
  text-align: center;
  padding-left: 30px;
  padding-right: 30px; }
  .gallery-holder h3 {
    color: white;
    line-height: 80px;
    margin: 0; }
  .gallery-holder .gallery-inner .slick-arrow {
    position: absolute;
    top: 85px;
    width: 18px;
    height: 30px;
    line-height: 0;
    font-size: 0;
    background-color: transparent;
    background-image: url(../../images/arrow.svg);
    background-repeat: no-repeat;
    background-position: center;
    border: 0px;
    cursor: pointer; }
  .gallery-holder .gallery-inner .slick-prev {
    left: -20px; }
  .gallery-holder .gallery-inner .slick-next {
    right: -20px;
    transform: scaleX(-1); }
  .gallery-holder .gallery-inner .slick-dots {
    margin-left: 9.5px;
    margin-right: 9.5px;
    padding: 0px;
    list-style: none;
    text-align: center; }
    .gallery-holder .gallery-inner .slick-dots li {
      position: relative;
      display: inline-block;
      padding: 0; }
      .gallery-holder .gallery-inner .slick-dots li button {
        margin-left: 5px;
        margin-right: 5px;
        background-color: transparent;
        border: 0px;
        cursor: pointer;
        font-size: 0;
        padding: 0;
        width: 27px;
        height: 27px;
        background-image: url(../../images/gallery-dot.svg);
        background-repeat: no-repeat; }
      .gallery-holder .gallery-inner .slick-dots li.slick-active button {
        background-image: url(../../images/gallery-dot-selected.svg); }

.content-holder .content-column form {
  margin-bottom: 20px; }
  .content-holder .content-column form button[type="submit"] {
    border: 1px solid #42beb2; }

.promotion-holder {
  display: flex;
  flex-direction: column;
  text-align: center;
  padding: 40px; }
  @media (min-width: 768px) {
    .promotion-holder {
      flex-direction: row;
      text-align: left;
      padding: 20px 20px;
      align-items: center; } }
  .promotion-holder .promotion-thumb {
    order: 2;
    margin-bottom: 20px; }
    @media (min-width: 768px) {
      .promotion-holder .promotion-thumb {
        order: 1;
        margin-right: 20px; } }
    .promotion-holder .promotion-thumb img {
      width: 100%;
      height: auto; }
  .promotion-holder .promotion-content {
    order: 1;
    font-size: 14px; }
    @media (min-width: 768px) {
      .promotion-holder .promotion-content {
        order: 2;
        padding-right: 250px; } }
    .promotion-holder .promotion-content h4 {
      color: #42beb2; }
    .promotion-holder .promotion-content .btn {
      display: none; }
      @media (min-width: 768px) {
        .promotion-holder .promotion-content .btn {
          display: inline-block; } }
  .promotion-holder .extra-promotion-button {
    order: 3; }
    @media (min-width: 768px) {
      .promotion-holder .extra-promotion-button {
        display: none; } }
  .promotion-holder .btn {
    text-transform: uppercase;
    color: #42beb2;
    background-color: white;
    border: 1px solid #42beb2;
    letter-spacing: 2px;
    display: block;
    position: relative;
    z-index: 0; }
    .promotion-holder .btn:before {
      content: "";
      position: absolute;
      z-index: -1;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: #42beb2;
      transform: scaleX(0);
      transform-origin: 0 50%;
      transition: transform .3s ease-out; }
    .promotion-holder .btn:hover {
      color: white; }
      .promotion-holder .btn:hover:before {
        transform: scaleX(1); }
    @media (min-width: 768px) {
      .promotion-holder .btn {
        display: inline-block; } }

.cookie-accept, .browser-update {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 10px;
  background-color: white;
  -webkit-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
  font-family: "Montserrat", sans-serif;
  font-weight: 100;
  font-size: 14px;
  z-index: 2000; }
  .cookie-accept .btn, .browser-update .btn {
    background-color: #ec9132;
    color: white;
    text-transform: uppercase;
    margin-left: 10px;
    letter-spacing: 2px;
    position: relative;
    z-index: 0; }
    .cookie-accept .btn:before, .browser-update .btn:before {
      content: "";
      position: absolute;
      z-index: -1;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: white;
      transform: scaleX(0);
      transform-origin: 0 50%;
      transition: transform .3s ease-out; }
    .cookie-accept .btn:hover, .browser-update .btn:hover {
      color: #ec9132; }
      .cookie-accept .btn:hover:before, .browser-update .btn:hover:before {
        transform: scaleX(1); }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l0ZS5jc3MiLCJzb3VyY2VzIjpbInNpdGUuc2NzcyIsImJvb3RzdHJhcC9fYm9vdHN0cmFwLnNjc3MiLCJib290c3RyYXAvX2Z1bmN0aW9ucy5zY3NzIiwiYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsImJvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9faG92ZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19iYWRnZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Zpc2liaWxpdHkuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2FsZXJ0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jYXJldC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbGlzdHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JveC1zaGFkb3cuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19mbG9hdC5zY3NzIiwiYm9vdHN0cmFwL19yb290LnNjc3MiLCJib290c3RyYXAvX3JlYm9vdC5zY3NzIiwiYm9vdHN0cmFwL190eXBlLnNjc3MiLCJib290c3RyYXAvX2ltYWdlcy5zY3NzIiwiYm9vdHN0cmFwL19jb2RlLnNjc3MiLCJib290c3RyYXAvX2dyaWQuc2NzcyIsImJvb3RzdHJhcC9fdGFibGVzLnNjc3MiLCJib290c3RyYXAvX2Zvcm1zLnNjc3MiLCJib290c3RyYXAvX2J1dHRvbnMuc2NzcyIsImJvb3RzdHJhcC9fdHJhbnNpdGlvbnMuc2NzcyIsImJvb3RzdHJhcC9fZHJvcGRvd24uc2NzcyIsImJvb3RzdHJhcC9fYnV0dG9uLWdyb3VwLnNjc3MiLCJib290c3RyYXAvX2lucHV0LWdyb3VwLnNjc3MiLCJib290c3RyYXAvX2N1c3RvbS1mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL19uYXYuc2NzcyIsImJvb3RzdHJhcC9fbmF2YmFyLnNjc3MiLCJib290c3RyYXAvX2NhcmQuc2NzcyIsImJvb3RzdHJhcC9fYnJlYWRjcnVtYi5zY3NzIiwiYm9vdHN0cmFwL19wYWdpbmF0aW9uLnNjc3MiLCJib290c3RyYXAvX2JhZGdlLnNjc3MiLCJib290c3RyYXAvX2p1bWJvdHJvbi5zY3NzIiwiYm9vdHN0cmFwL19hbGVydC5zY3NzIiwiYm9vdHN0cmFwL19wcm9ncmVzcy5zY3NzIiwiYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwiYm9vdHN0cmFwL19saXN0LWdyb3VwLnNjc3MiLCJib290c3RyYXAvX2Nsb3NlLnNjc3MiLCJib290c3RyYXAvX21vZGFsLnNjc3MiLCJib290c3RyYXAvX3Rvb2x0aXAuc2NzcyIsImJvb3RzdHJhcC9fcG9wb3Zlci5zY3NzIiwiYm9vdHN0cmFwL19jYXJvdXNlbC5zY3NzIiwiYm9vdHN0cmFwL191dGlsaXRpZXMuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19jbGVhcmZpeC5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2ZsZXguc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJib290c3RyYXAvX3ByaW50LnNjc3MiLCJzaXRlL192YXJpYWJsZXMuc2NzcyIsInNpdGUvX3R5cG9ncmFwaHkuc2NzcyIsInNpdGUvX2VsZW1lbnRzLnNjc3MiLCJzaXRlL19jYXJkLnNjc3MiLCJzaXRlL19jYWxsb3V0LnNjc3MiLCJzaXRlL19sYXlvdXQuc2NzcyIsInNpdGUvX2hlcm8uc2NzcyIsInNpdGUvX2Zvb3Rlci5zY3NzIiwic2l0ZS9fbmF2aWdhdGlvbi5zY3NzIiwic2l0ZS9fY29udGVudC5zY3NzIiwiLi4vc2xpY2svc2xpY2suc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBCb290c3RyYXBcbi8vID09PT09PT09PVxuXG4vLyBCb290c3RyYXAgY2FuIGJlIHJlbW92ZWQgZW50aXJlbHkgYnkgZGVsZXRpbmcgdGhpcyBsaW5lLlxuXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Jvb3RzdHJhcFwiO1xuXG4vLyBUaGUgZWFzaWVzdCB3YXkgdG8gY3VzdG9taXNlIEJvb3RzdHJhcCB2YXJpYWJsZXMgd2hpbGVcbi8vIGJlaW5nIGFibGUgdG8gZWFzaWx5IG92ZXJyaWRlIHRoZSBzb3VyY2UgZmlsZXMgd2l0aCBuZXdcbi8vIHZlcnNpb25zIGlzIHRvIG92ZXJyaWRlIHRoZSBvbmVzIHlvdSB3YW50IGluIGFub3RoZXIgZmlsZS5cbi8vXG4vLyBZb3UgY2FuIGFsc28gYWRkIHlvdXIgb3duIGN1c3RvbSB2YXJpYWJsZXMgdG8gdGhpcyBmaWxlIGZvclxuLy8gdXNlIGluIHlvdXIgc2l0ZSBzdHlsZXNoZWV0cy5cblxuQGltcG9ydCBcInNpdGUvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwic2l0ZS90eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwic2l0ZS9lbGVtZW50c1wiO1xuQGltcG9ydCBcInNpdGUvY2FyZFwiO1xuQGltcG9ydCBcInNpdGUvY2FsbG91dFwiO1xuXG4vLyBTaXRlIFN0eWxlc1xuLy8gPT09PT09PT09PT1cblxuLy8gQWRkIHlvdXIgb3duIHNpdGUgc3R5bGUgaW5jbHVkZXMgaGVyZVxuQGltcG9ydCBcInNpdGUvbGF5b3V0XCI7XG5AaW1wb3J0IFwic2l0ZS9oZXJvXCI7XG5AaW1wb3J0IFwic2l0ZS9mb290ZXJcIjtcbkBpbXBvcnQgXCJzaXRlL25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJzaXRlL2NvbnRlbnRcIjtcblxuQGltcG9ydCBcIi4uL3NsaWNrL3NsaWNrLnNjc3NcIjtcbiIsIi8qIVxuICogQm9vdHN0cmFwIHY0LjAuMCAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxOCBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMTggVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImN1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwianVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcIm1lZGlhXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwicHJpbnRcIjtcbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdXRhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIEFub3RoZXIgZ3JpZCBtaXhpbiB0aGF0IGVuc3VyZXMgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwKSB7XG4gICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiBgJGdyaWQtYnJlYWtwb2ludHNgIG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG5AZnVuY3Rpb24gY29sb3IteWlxKCRjb2xvcikge1xuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gICR5aXE6ICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpIC8gMTAwMDtcblxuICBAaWYgKCR5aXEgPj0gJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZCkge1xuICAgIEByZXR1cm4gJHlpcS10ZXh0LWRhcms7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHlpcS10ZXh0LWxpZ2h0O1xuICB9XG59XG5cbi8vIFJldHJpZXZlIGNvbG9yIFNhc3MgbWFwc1xuQGZ1bmN0aW9uIGNvbG9yKCRrZXk6IFwiYmx1ZVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yKCRrZXk6IFwicHJpbWFyeVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIGdyYXkoJGtleTogXCIxMDBcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGdyYXlzLCAka2V5KTtcbn1cblxuLy8gUmVxdWVzdCBhIHRoZW1lIGNvbG9yIGxldmVsXG5AZnVuY3Rpb24gdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLW5hbWU6IFwicHJpbWFyeVwiLCAkbGV2ZWw6IDApIHtcbiAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XG4gICRjb2xvci1iYXNlOiBpZigkbGV2ZWwgPiAwLCAjMDAwLCAjZmZmKTtcbiAgJGxldmVsOiBhYnMoJGxldmVsKTtcblxuICBAcmV0dXJuIG1peCgkY29sb3ItYmFzZSwgJGNvbG9yLCAkbGV2ZWwgKiAkdGhlbWUtY29sb3ItaW50ZXJ2YWwpO1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuXG4vL1xuLy8gQ29sb3Igc3lzdGVtXG4vL1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZVxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuJGdyYXlzOiBtYXAtbWVyZ2UoKFxuICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgXCIzMDBcIjogJGdyYXktMzAwLFxuICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgXCI2MDBcIjogJGdyYXktNjAwLFxuICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgXCI5MDBcIjogJGdyYXktOTAwXG4pLCAkZ3JheXMpO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4kY29sb3JzOiBtYXAtbWVyZ2UoKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSwgJGNvbG9ycyk7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZSgoXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbiksICR0aGVtZS1jb2xvcnMpO1xuLy8gc3R5bGVsaW50LWVuYWJsZVxuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZVxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoKFxuICAwOiAwLFxuICAxOiAoJHNwYWNlciAqIC4yNSksXG4gIDI6ICgkc3BhY2VyICogLjUpLFxuICAzOiAkc3BhY2VyLFxuICA0OiAoJHNwYWNlciAqIDEuNSksXG4gIDU6ICgkc3BhY2VyICogMylcbiksICRzcGFjZXJzKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbiRzaXplczogbWFwLW1lcmdlKChcbiAgMjU6IDI1JSxcbiAgNTA6IDUwJSxcbiAgNzU6IDc1JSxcbiAgMTAwOiAxMDAlXG4pLCAkc2l6ZXMpO1xuLy8gc3R5bGVsaW50LWVuYWJsZVxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBGb250c1xuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogLjg3NSkgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAoJHNwYWNlciAvIDIpICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJGdyYXktOTAwLCA3LjUlKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogJGlucHV0LWJ0bi1saW5lLWhlaWdodCkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lcn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXItc206ICAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1zbSAqICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20pICsgKCRpbnB1dC1idG4tcGFkZGluZy15LXNtICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyLWxnOiAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtbGcgKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLWxnfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA0JyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNFJTNDY2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM0UlM0NwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpLCAwIDAgNXB4IHJnYmEoJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yLCAuNSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgIDc1JSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgIDEyNSUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIGNhbGMoI3skY2FyZC1ib3JkZXItcmFkaXVzfSAtICN7JGNhcmQtYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgKCRncmlkLWd1dHRlci13aWR0aCAvIDIpICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6IDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogLjc1KSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjUtMi41LTIuNSAyLjUtMi41LTEuNS0xLjV6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZD0nTTIuNzUgMGwtMS41IDEuNSAyLjUgMi41LTIuNSAyLjUgMS41IDEuNSA0LTQtNC00eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gVG9nZ2xlc1xuLy9cbi8vIFVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBnbG9iYWwgdmFyaWFibGVzIHRvIGVuYWJsZSBjZXJ0YWluIHRoZW1lIGZlYXR1cmVzLlxuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaG92ZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYmFkZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NjcmVlbi1yZWFkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1oaWRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtdHJ1bmNhdGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmlzaWJpbGl0eVwiO1xuXG4vLyAvLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0XCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyAvLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ib3gtc2hhZG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuQGltcG9ydCBcIm1peGlucy90cmFuc2l0aW9uXCI7XG5cbi8vIC8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuLy8gQGltcG9ydCBcIm1peGlucy9uYXZiYXItYWxpZ25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuQGltcG9ydCBcIm1peGlucy9mbG9hdFwiO1xuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMnB4LCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbmZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgaW5kZW50YXRpb25cblxuLy8gSG92ZXIgbWl4aW4gYW5kIGAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5YCBhcmUgZGVwcmVjYXRlZC5cbi8vXG4vLyBPcmlnYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9T4oCUYW4gaXNzdWUgd2hlcmUgaG92ZXIgc3R5bGVzXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXG4vL1xuLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlJ3ZlIGtlcHQgdGhlc2UgbWl4aW5zIGFuZCB1cGRhdGVkIHRoZW0gdG9cbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc3VlZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTE5NVxuXG5AbWl4aW4gaG92ZXIge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgaW5kZW50YXRpb24sIG1lZGlhLXF1ZXJ5LWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHsgLy8gU3RhbmRhcmRpemVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCJAbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG5cbiAgJltocmVmXSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICBjbGlwLXBhdGg6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLWJsb2NrLW5vLWR1cGxpY2F0ZS1wcm9wZXJ0aWVzXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVmlzaWJpbGl0eVxuXG5AbWl4aW4gaW52aXNpYmxlKCR2aXNpYmlsaXR5KSB7XG4gIHZpc2liaWxpdHk6ICR2aXNpYmlsaXR5ICFpbXBvcnRhbnQ7XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRib3JkZXIsIC41KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGJvcmRlciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4iLCJAbWl4aW4gY2FyZXQtZG93biB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC13aWR0aCAqIC44NTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bjtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICgkc3BhY2VyIC8gMikgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCkge1xuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAuNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsIC44KTtcbiAgICBib3JkZXItcmFkaXVzOiAuMnJlbTtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wsXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMjUlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkYm9keS1iZywgMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6YmVmb3JlIHsgYm9yZGVyLWNvbG9yOiBpbmhlcml0OyB9XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG4iLCJAbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDsgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkZ3V0dGVyIC8gMik7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogbm9uZTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2Utcm93KCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIC0yKTtcbiAgbWFyZ2luLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAtMik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4OyAvLyBQcmV2ZW50IGNvbGxhcHNpbmdcbiAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AbWl4aW4gZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5AbWl4aW4gZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbkBtaXhpbiBmbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtbm8tdmVuZG9yLXByZWZpeCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIFNldHRpbmcgQHZpZXdwb3J0IGNhdXNlcyBzY3JvbGxiYXJzIHRvIG92ZXJsYXAgY29udGVudCBpbiBJRTExIGFuZCBFZGdlLCBzb1xuLy8gICAgd2UgZm9yY2UgYSBub24tb3ZlcmxhcHBpbmcsIG5vbi1hdXRvLWhpZGluZyBzY3JvbGxiYXIgdG8gY291bnRlcmFjdC5cbi8vIDYuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7IC8vIDVcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyAvLyA2XG59XG5cbi8vIElFMTArIGRvZXNuJ3QgaG9ub3IgYDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiPmAgaW4gc29tZSBjYXNlcy5cbkBhdC1yb290IHtcbiAgQC1tcy12aWV3cG9ydCB7XG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgfVxufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG5hcnRpY2xlLCBhc2lkZSwgZGlhbG9nLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlIHRoZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxufVxuXG4vLyBTdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZSBvbiBlbGVtZW50cyB0aGF0IGNhbm5vdCBiZSBhY2Nlc3NlZCB2aWEga2V5Ym9hcmQuXG4vLyBUaGlzIHByZXZlbnRzIGFuIHVud2FudGVkIGZvY3VzIG91dGxpbmUgZnJvbSBhcHBlYXJpbmcgYXJvdW5kIGVsZW1lbnRzIHRoYXRcbi8vIG1pZ2h0IHN0aWxsIHJlc3BvbmQgdG8gcG9pbnRlciBldmVudHMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDFcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtXG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGZvbnQtd2VpZ2h0LW5vdGF0aW9uXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBmb250LXdlaWdodC1ub3RhdGlvblxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvLyBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpXG4vLyB3aGljaCBoYXZlIG5vdCBiZWVuIG1hZGUgZXhwbGljaXRseSBrZXlib2FyZC1mb2N1c2FibGUgKHdpdGhvdXQgdGFiaW5kZXgpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKTpub3QoW3RhYmluZGV4XSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cblxuLy9cbi8vIENvZGVcbi8vXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGZvbnQtZmFtaWx5LW5vLWR1cGxpY2F0ZS1uYW1lc1xucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIGZvbnQtc2l6ZTogMWVtOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZvbnQtZmFtaWx5LW5vLWR1cGxpY2F0ZS1uYW1lc1xuXG5wcmUge1xuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbiAgbWFyZ2luLXRvcDogMDtcbiAgLy8gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG4gIG92ZXJmbG93OiBhdXRvO1xuICAvLyBXZSBoYXZlIEB2aWV3cG9ydCBzZXQgd2hpY2ggY2F1c2VzIHNjcm9sbGJhcnMgdG8gb3ZlcmxhcCBjb250ZW50IGluIElFMTEgYW5kIEVkZ2UsIHNvXG4gIC8vIHdlIGZvcmNlIGEgbm9uLW92ZXJsYXBwaW5nLCBub24tYXV0by1oaWRpbmcgc2Nyb2xsYmFyIHRvIGNvdW50ZXJhY3QuXG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRVxufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG50aCB7XG4gIC8vIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgZnJvbSB0aGUgYDxib2R5PmAsIG9yIHRoZVxuICAvLyBjbG9zZXN0IHBhcmVudCB3aXRoIGEgc2V0IGB0ZXh0LWFsaWduYC5cbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbmxhYmVsIHtcbiAgLy8gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gV29yayBhcm91bmQgYSBGaXJlZm94L0lFIGJ1ZyB3aGVyZSB0aGUgdHJhbnNwYXJlbnQgYGJ1dHRvbmAgYmFja2dyb3VuZFxuLy8gcmVzdWx0cyBpbiBhIGxvc3Mgb2YgdGhlIGRlZmF1bHQgYGJ1dHRvbmAgZm9jdXMgc3R5bGVzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZS9cbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQ7XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2Vcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxufVxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtXG4gIHBhZGRpbmc6IDA7IC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC1cbn1cblxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGFwcGVhcmFuY2Ugb2YgdGVtcG9yYWwgaW5wdXRzIHRvIGF2b2lkIGEgTW9iaWxlIFNhZmFyaVxuICAvLyBidWcgd2hlcmUgc2V0dGluZyBhIGN1c3RvbSBsaW5lLWhlaWdodCBwcmV2ZW50cyB0ZXh0IGZyb20gYmVpbmcgdmVydGljYWxseVxuICAvLyBjZW50ZXJlZCB3aXRoaW4gdGhlIGlucHV0LlxuICAvLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxuICAvLyBhbmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTI2NlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGxpc3Rib3g7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy9cbi8vIEhlYWRpbmdzXG4vL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSwgLmgxIHsgZm9udC1zaXplOiAkaDEtZm9udC1zaXplOyB9XG5oMiwgLmgyIHsgZm9udC1zaXplOiAkaDItZm9udC1zaXplOyB9XG5oMywgLmgzIHsgZm9udC1zaXplOiAkaDMtZm9udC1zaXplOyB9XG5oNCwgLmg0IHsgZm9udC1zaXplOiAkaDQtZm9udC1zaXplOyB9XG5oNSwgLmg1IHsgZm9udC1zaXplOiAkaDUtZm9udC1zaXplOyB9XG5oNiwgLmg2IHsgZm9udC1zaXplOiAkaDYtZm9udC1zaXplOyB9XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbi5kaXNwbGF5LTEge1xuICBmb250LXNpemU6ICRkaXNwbGF5MS1zaXplO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMiB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXkyLXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0zIHtcbiAgZm9udC1zaXplOiAkZGlzcGxheTMtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTQge1xuICBmb250LXNpemU6ICRkaXNwbGF5NC1zaXplO1xuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG4vL1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRoci1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGhyLW1hcmdpbi15O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQgJGhyLWJvcmRlci1jb2xvcjtcbn1cblxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG59XG5cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGZvbnQtc2l6ZTogJGJsb2NrcXVvdGUtZm9udC1zaXplO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNCBcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQ7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQ7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogKCRzcGFjZXIgLyAyKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIElubGluZSBhbmQgYmxvY2sgY29kZSBzdHlsZXNcbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG59XG5cbi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAka2JkLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cbn1cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aCAxMDAlIHdpZHRoIGZvclxuLy8gZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxufVxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7IC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyZWQgdmVyc2lvblxuLy9cbi8vIEFkZCBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTAwNTdcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIFRleHR1YWwgZm9ybSBjb250cm9sc1xuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIC8vIE1hbnVhbGx5IHVzZSB0aGUgaWYvZWxzZSBpbnN0ZWFkIG9mIHRoZSBtaXhpbiB0byBhY2NvdW50IGZvciBpT1Mgb3ZlcnJpZGVcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgLy8gT3RoZXJ3aXNlIHVuZG8gdGhlIGlPUyBkZWZhdWx0XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoKTtcblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJjpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSkge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICY6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgLy8gU3VwcHJlc3MgdGhlIG5lc3RlZCBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLCBhcyBpdCBsb29rcyBiYWQgYW5kIGNhbm5vdCBiZSBtYWRlIHRvXG4gICAgLy8gbWF0Y2ggdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIG5hdGl2ZSB3aWRnZXQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIH1cbn1cblxuLy8gTWFrZSBmaWxlIGlucHV0cyBiZXR0ZXIgbWF0Y2ggdGV4dCBpbnB1dHMgYnkgZm9yY2luZyB0aGVtIHRvIG5ldyBsaW5lcy5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuLy9cbi8vIExhYmVsc1xuLy9cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zaXplOiBpbmhlcml0OyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1sZ30gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1zbX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG59XG5cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFRoZSBgLmZvcm0tZ3JvdXAtKiBmb3JtLWNvbnRyb2xgIHZhcmlhdGlvbnMgYXJlIHNhZGx5IGR1cGxpY2F0ZWQgdG8gYXZvaWQgdGhlXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wtc20ge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wtbGcge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xufVxuXG5cbi8vIEZvcm0gZ3JpZFxuLy9cbi8vIFNwZWNpYWwgcmVwbGFjZW1lbnQgZm9yIG91ciBncmlkIHN5c3RlbSdzIGAucm93YCBmb3IgdGlnaHRlciBmb3JtIGxheW91dHMuXG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICBtYXJnaW4tbGVmdDogLTVweDtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcInZhbGlkXCIsICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yKTtcbkBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcImludmFsaWRcIiwgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcik7XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRmb250LXNpemUtYmFzZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gIC8vIFNoYXJlIGhvdmVyIGFuZCBmb2N1cyBzdHlsZXNcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIC5idG4gZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkYnRuLWxpbmUtaGVpZ2h0LWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4uZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJi5zaG93IHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gICYuc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxudHIge1xuICAmLmNvbGxhcHNlLnNob3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgfVxufVxuXG50Ym9keSB7XG4gICYuY29sbGFwc2Uuc2hvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7IC8vIFJlZGVjbGFyZSBiZWNhdXNlIG5lc3RpbmcgY2FuIGNhdXNlIGluaGVyaXRhbmNlIGlzc3Vlc1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wcmlnaHQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHJpZ2h0KTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAwIDEgYXV0bztcblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwICsgLmJ0bixcbiAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgLmJ0bixcbiAgLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi5idG4tZ3JvdXAtdG9nZ2xlIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgLy8gQWRkIHdpZHRoIDElIGFuZCBmbGV4LWJhc2lzIGF1dG8gdG8gZW5zdXJlIHRoYXQgYnV0dG9uIHdpbGwgbm90IHdyYXAgb3V0XG4gICAgLy8gdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRSBFZGdlKyBhbmQgRmlyZWZveC4gQ2hyb21lIGRvZXMgbm90IHJlcXVpcmUgdGhpcy5cbiAgICB3aWR0aDogMSU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmJlZm9yZSB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YmVmb3JlIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHsgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7IG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBAZXh0ZW5kIC5mb3JtLWNvbnRyb2wtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBAZXh0ZW5kIC5mb3JtLWNvbnRyb2wtc207XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuIiwiLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogKDFyZW0gKiAkbGluZS1oZWlnaHQtYmFzZSk7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tY29udHJvbC1zcGFjZXIteDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc3VlZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgLy8gQmFja2dyb3VuZC1jb2xvciBhbmQgKHdoZW4gZW5hYmxlZCkgZ3JhZGllbnRcbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgoJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMik7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoKCRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDIpO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXNcbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgY2hlY2tib3hlcy5cblxuLmN1c3RvbS1jaGVja2JveCB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHA6Ly9wcmltZXJjc3MuaW8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmcgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yIG5vLXJlcGVhdCByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRjdXN0b20tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgZm9udC1zaXplOiAkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc207XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk7XG4gIGZvbnQtc2l6ZTogJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tZmlsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWJnO1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWJveC1zaGFkb3cpO1xuXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBjYWxjKCN7JGN1c3RvbS1maWxlLWhlaWdodH0gLSAjeyRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGh9ICogMik7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAwKTtcbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzIG9yIGA8dWw+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cbiAgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVyaXRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICA+IC5jb250YWluZXIsXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJG5hdmJhci1icmFuZC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW5hdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBmb250LXNpemU6ICRuYXZiYXItdG9nZ2xlci1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgLm5hdmJhci10b2dnbGVyIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRyb3B1cCB7XG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0oJGNhcmQtc3BhY2VyLXkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cblxuICArIC5saXN0LWdyb3VwIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xuICBtYXJnaW4tbGVmdDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xufVxuXG4uY2FyZC1pbWcge1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDYXJkIGltYWdlIGNhcHNcbi5jYXJkLWltZy10b3Age1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIENhcmQgZGVja1xuXG4uY2FyZC1kZWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogLSRjYXJkLWRlY2stbWFyZ2luO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzIzQtZmxleC1zaG9ydGhhbmQtZGVjbGFyYXRpb25zLXdpdGgtdW5pdGxlc3MtZmxleC1iYXNpcy12YWx1ZXMtYXJlLWlnbm9yZWRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHRcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjNC1mbGV4LXNob3J0aGFuZC1kZWNsYXJhdGlvbnMtd2l0aC11bml0bGVzcy1mbGV4LWJhc2lzLXZhbHVlcy1hcmUtaWdub3JlZFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6b25seS1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KDpvbmx5LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIsXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIFN1cHByZXNzIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3IgaW4gbW9kZXJuIGJyb3dzZXJzXG4gICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiI3skYnJlYWRjcnVtYi1kaXZpZGVyfVwiO1xuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCAucGFnZS1saW5rIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJGJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICgkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDIpO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5hbGVydC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQodGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1ib3JkZXItbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1jb2xvci1sZXZlbCkpO1xuICB9XG59XG4iLCJAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBmb250LXNpemU6ICRwcm9ncmVzcy1mb250LXNpemU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nO1xufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMSAwIDA7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICAvLyBQbGFjZSB0aGUgYm9yZGVyIG9uIHRoZSBsaXN0IGl0ZW1zIGFuZCBuZWdhdGl2ZSBtYXJnaW4gdXAgZm9yIGJldHRlciBzdHlsaW5nXG4gIG1hcmdpbi1ib3R0b206IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAkY2xvc2UtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IC43NTtcbiAgfVxuXG4gIC8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCAuY2xvc2UgZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlXG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG5cbiAgLm1vZGFsLW9wZW4gJiB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAoI3skbW9kYWwtZGlhbG9nLW1hcmdpbn0gKiAyKSk7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nKSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZykgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiBzaG91bGQgdGhlcmUgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcblxuICAvLyBFYXNpbHkgcGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHsgbWFyZ2luLWxlZnQ6IC4yNXJlbTsgfVxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHsgbWFyZ2luLXJpZ2h0OiAuMjVyZW07IH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAoI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwfSAqIDIpKTtcbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cblxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyB7IG1heC13aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXRvcCB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBmb250LXNpemU6ICRwb3BvdmVyLWZvbnQtc2l6ZTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJGJvcmRlci1yYWRpdXMtbGc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgYm90dG9tOiBjYWxjKCgjeyRwb3BvdmVyLWFycm93LWhlaWdodH0gKyAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICogLTEpO1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkYm9yZGVyLXJhZGl1cy1sZyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSxcbiAgLmFycm93OjphZnRlciB7XG4gICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlIHtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gIH1cblxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSxcbiAgLmFycm93OjphZnRlciB7XG4gICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gIH1cblxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIC0yKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJGJvcmRlci1yYWRpdXMtbGcgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICAkb2Zmc2V0LWJvcmRlci13aWR0aDogY2FsYygjeyRib3JkZXItcmFkaXVzLWxnfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSk7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRvZmZzZXQtYm9yZGVyLXdpZHRoKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBXcmFwcGVyIGZvciB0aGUgc2xpZGUgY29udGFpbmVyIGFuZCBpbmRpY2F0b3JzXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcGVyc3BlY3RpdmU6IDEwMDBweDtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbn1cblxuLy8gQ1NTMyB0cmFuc2Zvcm1zIHdoZW4gc3VwcG9ydGVkIGJ5IHRoZSBicm93c2VyXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbi5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblxuICBAc3VwcG9ydHMgKHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG5cbiAgQHN1cHBvcnRzICh0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2LFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXG4gIEBzdXBwb3J0cyAodHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZCkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIC8vIFdlIGNhbid0IGhhdmUgYSB0cmFuc2l0aW9uIGhlcmUgYmVjYXVzZSBXZWJLaXQgY2FuY2VscyB0aGUgY2Fyb3VzZWxcbiAgLy8gYW5pbWF0aW9uIGlmIHlvdSB0cmlwIHRoaXMgd2hpbGUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIGFuaW1hdGlvbi5cblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6IC45O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMCwgMCwgLjI1KSwgcmdiYSgwLCAwLCAwLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDAsIDAsIDAsIC4yNSksIHJnYmEoMCwgMCwgMCwgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnLCAuNSk7XG5cbiAgICAvLyBVc2UgcHNldWRvIGNsYXNzZXMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgJjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMTBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKCgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMik7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQGltcG9ydCBcInV0aWxpdGllcy9hbGlnblwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9iYWNrZ3JvdW5kXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2JvcmRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZGlzcGxheVwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9lbWJlZFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9mbGV4XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2Zsb2F0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NjcmVlbnJlYWRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2l6aW5nXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NwYWNpbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdGV4dFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy92aXNpYmlsaXR5XCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmQjeyRpbmZpeH0tbm9uZSAgICAgICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0taW5saW5lICAgICAgIHsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWJsb2NrICAgICAgICB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZSAgICAgICAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tdGFibGUtcm93ICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZS1jZWxsICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1mbGV4ICAgICAgICAgeyBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtZmxleCAgeyBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIC5kLXByaW50LW5vbmUgICAgICAgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUgICAgICAgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1ibG9jayAgICAgICAgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LXRhYmxlICAgICAgICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUtcm93ICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUtY2VsbCAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWZsZXggICAgICAgICB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtZmxleCAgeyBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0yMWJ5OSB7XG4gICY6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSg5IC8gMjEpO1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5IHtcbiAgJjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDkgLyAxNik7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XG4gICY6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgzIC8gNCk7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMWJ5MSB7XG4gICY6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgxIC8gMSk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgQGluY2x1ZGUgZmxvYXQtbGVmdDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IEBpbmNsdWRlIGZsb2F0LXJpZ2h0OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgQGluY2x1ZGUgZmxvYXQtbm9uZTsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuXG4vLyBTYXNzIGxpc3Qgbm90IGluIHZhcmlhYmxlcyBzaW5jZSBpdCdzIG5vdCBpbnRlbmRlZCBmb3IgY3VzdG9taXphdGlvbi5cbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5O1xuXG5AZWFjaCAkcG9zaXRpb24gaW4gJHBvc2l0aW9ucyB7XG4gIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0geyBwb3NpdGlvbjogJHBvc2l0aW9uICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gV2lkdGggYW5kIGhlaWdodFxuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAod2lkdGg6IHcsIGhlaWdodDogaCkge1xuICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc2l6ZXMge1xuICAgIC4jeyRhYmJyZXZ9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi5tdy0xMDAgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuLm1oLTEwMCB7IG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG5cbiAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fXIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1sI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFRleHRcbi8vXG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtbm93cmFwICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXRydW5jYXRlIHsgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LW5vcm1hbCB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSk7XG59XG5cbi50ZXh0LW11dGVkIHsgY29sb3I6ICR0ZXh0LW11dGVkICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCk7XG59XG4iLCIvL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgQGluY2x1ZGUgaW52aXNpYmxlKHZpc2libGUpO1xufVxuXG4uaW52aXNpYmxlIHtcbiAgQGluY2x1ZGUgaW52aXNpYmxlKGhpZGRlbik7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvbWFzdGVyL3NyYy9jc3MvbWFpbi5jc3NcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxuLy8gaHR0cDovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGh0dHA6Ly93d3cuc2FuYmVpamkuY29tL2FyY2hpdmVzLzk1M1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAjOTk5OyAgIC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgLy9cblxuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICMwMDA7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIi8vQ29sb3JzXG4kY29sb3JDaW5uYWJhcjogICAgICAgICAgICAgICAgICAgICAgICAgICNlODU0MzQ7XG4kY29sb3JCcmlnaHQ6ICNmZjU3MWY7XG4kY29sb3JQdWVydG9SaWNvOiAgICAgICAgICAgICAgICAgICAgICAgIzQyYmViMjtcbiRjb2xvckZpcmVCdXNoOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2VjOTEzMjtcbiRjb2xvclNpbHZlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2Y3ZjdmNztcbiRjb2xvclR1bmRvcmE6ICAgICAgICAgICAgICAgICAgICAgICAjNDQ0NDQ0O1xuJGNvbG9yU3RvbmU6ICM5ZTllOTM7XG4kY29sb3JTZWFzaGVsbDogICAgICAgICAgICAgICAgICAgICAgICNmMWYxZjE7XG4kY29sb3JCbGFja1RyYW5zcGFyZW5jeTogICAgICAgICAgICAgIHJnYmEoYmxhY2ssIDAuNSk7XG4kY29sb3JOYXZ5OiAjMGM0ZDlmO1xuXG4kY29sb3JCYXNlOiAgICAgICAgICAgICAgICAgICAgICAgJGNvbG9yVHVuZG9yYTtcbiRjb2xvckhpZ2hsaWdodDogICAgICAgICAgICAgICAkY29sb3JQdWVydG9SaWNvO1xuXG4kZm9udC1zaXplLWJhc2U6IDE2cHg7XG5cblxuLy9Gb250c1xuJGZvbnRCYWxvb0RhOiAgICAgICAgICAgICAgICAgICAgICAgICAnQmFsb28gRGEnLCBjdXJzaXZlO1xuJGZvbnRNb250c2VycmF0OiAgICAgICAgICAgICAgICAgICAgICAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udE1vbnRzZXJyYXQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvbnRCYWxvb0RhO1xuXG4kZm9udEJvZHk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiRmb250SGVhZGluZ3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC1mYW1pbHktc2VyaWY7XG5cbiRmb250V2VpZ2h0VWx0cmFMdDogICAgICAgICAgICAgICAgICAgMjAwO1xuJGZvbnRXZWlnaHRMdDogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMDtcbiRmb250V2VpZ2h0U2VtaUJvbGQ6ICAgICAgICAgICAgICA2MDA7XG4iLCJib2R5IHtcblx0Y29sb3I6ICRjb2xvckJhc2U7XG5cdGZvbnQ6IG5vcm1hbCAjeyRmb250LXNpemUtYmFzZX0vMS40ICRmb250Qm9keTtcbn1cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1x0SGVhZGluZ3Ncbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udEhlYWRpbmdzO1xuXHRmb250LXdlaWdodDogNzAwO1xufVxuXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cdFRleHQgRWxlbWVudHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYSwgYTp2aXNpdGVkIHtcblx0Y29sb3I6ICRjb2xvckhpZ2hsaWdodDsgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuYTpmb2N1cyB7IG91dGxpbmU6IHRoaW4gZG90dGVkOyB9XG5hOmhvdmVyLCBhOmFjdGl2ZSB7IG91dGxpbmU6IDA7IH1cbmE6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxucCB7IG1hcmdpbjogMCAwIDEuNWVtOyB9XG5ibG9ja3F1b3RlIHsgY29sb3I6ICRjb2xvclR1bmRvcmE7IGZvbnQtc3R5bGU6IGl0YWxpYzsgbWFyZ2luOiAxLjVlbTsgfVxuYiwgc3Ryb25nLCBkZm4geyBmb250LXdlaWdodDogYm9sZDsgfVxuZW0sIGRmbiB7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuYWJiciwgYWNyb255bSB7IGN1cnNvcjogaGVscDsgfVxuYWJiclt0aXRsZV0geyBib3JkZXItYm90dG9tOiBub25lOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5hZGRyZXNzIHsgZm9udC1zdHlsZTogbm9ybWFsOyBtYXJnaW46IDAgMCAxLjVlbTsgfVxuZGVsIHsgY29sb3I6ICM2NjY7IH1cbmlucyB7IGJhY2tncm91bmQ6ICNmZjk7IGNvbG9yOiAjMDAwOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbm1hcmsgeyBiYWNrZ3JvdW5kOiAjZmYwOyBjb2xvcjogIzAwMDsgZm9udC1zdHlsZTogaXRhbGljOyBmb250LXdlaWdodDogYm9sZDsgfVxucHJlIHsgbWFyZ2luOiAxLjVlbSAwOyB3aGl0ZS1zcGFjZTogcHJlOyB9XG5wcmUsIGNvZGUsIGtiZCwgc2FtcCwgdHQgeyBmb250OiAxZW0gJ2FuZGFsZSBtb25vJywgJ2x1Y2lkYSBjb25zb2xlJywgbW9ub3NwYWNlOyBsaW5lLWhlaWdodDogMS41OyB9XG5wcmUgeyB3aGl0ZS1zcGFjZTogcHJlOyB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7IHdvcmQtd3JhcDogYnJlYWstd29yZDsgfVxucSB7IHF1b3Rlczogbm9uZTsgfVxucTpiZWZvcmUsIHE6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBjb250ZW50OiBub25lOyB9XG5zbWFsbCB7IGZvbnQtc2l6ZTogODUlOyB9XG5zdWIsIHN1cCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZm9udC1zaXplOiA3NSU7IGxpbmUtaGVpZ2h0OiAwOyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cbnN1cCB7IHRvcDogLTAuNWVtOyB9XG5zdWIgeyBib3R0b206IC0wLjI1ZW07IH1cbm5hdiB1bCwgbmF2IG9sIHsgbGlzdC1zdHlsZTogbm9uZTsgbGlzdC1zdHlsZS1pbWFnZTogbm9uZTsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9XG5cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1x0TGlzdCBFbGVtZW50c1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5saSB1bCwgbGkgb2wgeyBtYXJnaW46IDA7IH1cbnVsLCBvbCB7IG1hcmdpbjogMCAxLjVlbSAxLjVlbSAwOyBwYWRkaW5nLWxlZnQ6IDEuNWVtOyB9XG51bCB7IGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxub2wgeyBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7IH1cbmRsIHsgbWFyZ2luOiAwIDAgMS41ZW0gMDsgfVxuZGwgZHQgeyBmb250LXdlaWdodDogYm9sZDsgfVxuZGQgeyBtYXJnaW4tbGVmdDogMS41ZW07IH1cblxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXHRNaXNjLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG46Oi1tb3otc2VsZWN0aW9uIHsgYmFja2dyb3VuZDogJGNvbG9ySGlnaGxpZ2h0OyBjb2xvcjogI2ZmZjsgdGV4dC1zaGFkb3c6IG5vbmU7IH1cbjo6c2VsZWN0aW9uIHsgYmFja2dyb3VuZDogJGNvbG9ySGlnaGxpZ2h0OyBjb2xvcjogI2ZmZjsgdGV4dC1zaGFkb3c6IG5vbmU7IH1cbiIsImJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgfVxufVxuXG4uc3RpY2t5LXRvcCB7XG4gIHotaW5kZXg6IDkwMDtcbn1cblxuLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxudWwucGFyc2xleS1lcnJvcnMtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHggMHB4O1xuICBtYXJnaW46IDA7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogcmVkO1xuICB9XG59XG5cbi51aS1kYXRlcGlja2VyIHtcbiAgei1pbmRleDogMTAwMCAhaW1wb3J0YW50O1xufVxuXG4qIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZHJvcGRvd246aG92ZXI+LmRyb3Bkb3duLW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuZm9ybSB7XG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIGlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyOiAwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvclR1bmRvcmE7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgIGNvbG9yOiAkY29sb3JUdW5kb3JhO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICB9XG4gIC5kYXRlcGlja2VyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW5wdXQge1xuXG4gICAgfVxuICAgIGJ1dHRvbi51aS1kYXRlcGlja2VyLXRyaWdnZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICB0b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMHB4O1xuICAgICAgcGFkZGluZzogMHB4IDBweCAwcHggMHB4O1xuICAgICAgd2lkdGg6IDIycHg7XG4gICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICBtYXJnaW46IDdweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDowO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yUHVlcnRvUmljbztcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4Oi0xO1xuICAgICAgdG9wOiAwOyAgbGVmdDogMDsgIHJpZ2h0OiAwOyBib3R0b206IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7XG5cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubGlnaHQtb3JhbmdlIHtcbiAgY29sb3I6ICRjb2xvckZpcmVCdXNoO1xufVxuXG4uZGFyay1vcmFuZ2Uge1xuICBjb2xvcjogJGNvbG9yQ2lubmFiYXI7XG59XG5cbi50ZWFsIHtcbiAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG59XG4iLCIiLCIuY2FsbG91dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmLWhvbGRlciB7XG4gICAgYm9yZGVyOiAxMHB4IHNvbGlkICNmZmY7XG4gIH1cblxuICAmOm50aC1jaGlsZChvZGQpe1xuICAgIC5jYWxsb3V0LWltYWdlIHtcbiAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB3aGl0ZTtcbiAgICB9XG5cbiAgfVxuXG4gICY6bnRoLWNoaWxkKGV2ZW4pe1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAuY2FsbG91dC1pbWFnZSB7XG4gICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB3aGl0ZTtcbiAgICB9XG4gIH1cblxuICAmLWltYWdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiA1O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogLTEwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1jb250ZW50IHtcblxuICAgIGZsZXg6IDM7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIC5idXR0b24tY2FsbG91dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiA1MDA7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogd2hpdGU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDotMTtcbiAgICAgICAgdG9wOiAwOyAgbGVmdDogMDsgIHJpZ2h0OiAwOyBib3R0b206IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLW91dDtcblxuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgJjpudGgtY2hpbGQoNG4gKyAxKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yU2Vhc2hlbGw7XG4gICAgaDMge1xuICAgICAgY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgIH1cbiAgICAuY2FsbG91dC1jb250ZW50IHtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICB9XG4gICAgLmJ1dHRvbi1jYWxsb3V0IHtcbiAgICAgIGNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOm50aC1jaGlsZCg0biArIDIpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JGaXJlQnVzaDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgLmJ1dHRvbi1jYWxsb3V0IHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6bnRoLWNoaWxkKDRuICsgMykge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckNpbm5hYmFyO1xuICAgIC5idXR0b24tY2FsbG91dCB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3JDaW5uYWJhcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOm50aC1jaGlsZCg0biArIDQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgIC5idXR0b24tY2FsbG91dCB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxuXG59XG4iLCIuY29udGFpbmVyIHtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcblxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmLmNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgfVxuXG59XG5cbi5zdGlja3kge1xuICAvL3Bvc2l0aW9uOiAtd2Via2l0LXN0aWNreTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYm0tZWJzLWJ1dHRvbiB7IFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDVweCAxNXB4O1xuICBjb2xvcjogJGNvbG9yUHVlcnRvUmljbztcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvclB1ZXJ0b1JpY287XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDotMTtcbiAgICB0b3A6IDA7ICBsZWZ0OiAwOyAgcmlnaHQ6IDA7IGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xuICAgIGJhY2tncm91bmQ6ICRjb2xvclB1ZXJ0b1JpY287XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIH1cbiAgfVxufVxuIiwiLmhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDA7XG5cbiAgaGVpZ2h0OiAyNTBweDtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIGhlaWdodDogMzUwcHg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIGhlaWdodDogNDc1cHg7XG4gIH1cblxuICAuaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC5vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAuY29udGVudCB7XG4gICAgei1pbmRleDogMztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNDVweDtcbiAgICBib3R0b206IDI1cHg7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICBib3R0b206IDUwcHg7XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTAwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5oZXJvLWJvZHkge1xuICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5oZXJvLWJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OjA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6LTE7XG4gICAgICAgIHRvcDogMDsgIGxlZnQ6IDA7ICByaWdodDogMDsgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xuXG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvckJyaWdodDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5tYXNrZWQge1xuICAgIHotaW5kZXg6IDUwMDtcbiAgICBtYXNrOiB1cmwoL2ltYWdlcy9jb250ZW50LXN3b29wLW1hc2suc3ZnKTtcbiAgICAtd2Via2l0LW1hc2s6IHVybCgvaW1hZ2VzL2NvbnRlbnQtc3dvb3AtbWFzay5zdmcpIGJvdHRvbSBsZWZ0IC8gY292ZXI7XG4gICAgLW8tbWFzazogdXJsKC9pbWFnZXMvY29udGVudC1zd29vcC1tYXNrLnN2ZykgYm90dG9tIGxlZnQgLyBjb3ZlcjtcbiAgICAtbXMtbWFzazogdXJsKC9pbWFnZXMvY29udGVudC1zd29vcC1tYXNrLnN2ZykgYm90dG9tIGxlZnQgLyBjb3ZlcjtcbiAgICAtd2Via2l0LW1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgICAub3ZlcmxheSB7XG4gICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvY29udGVudC1zd29vcC1saW5lcy5zdmcpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBsZWZ0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvaG9vdGVycy13aGl0ZS13YXZlLnBuZyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGhlaWdodDogNDc1cHg7XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAmLnR5cGUtaG9tZXBhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDQ2MHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIGhlaWdodDogNDg1cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgIGhlaWdodDogNTk0cHg7XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICBtYXgtaGVpZ2h0OiA4MCU7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgbWF4LWhlaWdodDogNjUlO1xuICAgICAgfVxuICAgIH1cbiAgICAub3ZlcmxheSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDE1JSAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9ob21lLWhlcm8tc3dvb3Auc3ZnKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTM4MHB4IDI5MHB4O1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNSUgMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMzgwcHggMjkwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTM4MHB4IDI5MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmhlcm8tYm9keSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAuaGVyby1ib2R5IHtcbiAgICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi50eXBlLWNvbnRlbnQge1xuICB9XG5cbiAgJi50eXBlLXRpdGxlIHtcbiAgfVxuXG4gICYudHlwZS1kZXRhaWxzIHtcbiAgfVxuXG59XG5cblxuXG4jaGVyb3Mge1xuICAuc2xpY2stYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDgwcHg7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvdy5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJvcmRlcjogMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiA1MDE7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAxMHB4O1xuICB9XG4gIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogMTBweDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gIH1cbiAgLnNsaWNrLWRvdHMge1xuICAgIG1hcmdpbi10b3A6IC00MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDY1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyN3B4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBidXR0b24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvZ2FsbGVyeS1kb3Quc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIH1cbiAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9nYWxsZXJ5LWRvdC1zZWxlY3RlZC5zdmcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn1cblxuIiwiLmZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JTaWx2ZXI7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvcnVsZXItZm9vdGVyLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCU7XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiA1MHB4O1xuXG4gIH1cblxuICAubmV3c2xldHRlci1mb3JtIHtcbiAgICBpbnB1dCB7XG4gICAgICBjb2xvcjogJGNvbG9yU3RvbmU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yU3RvbmU7XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JQdWVydG9SaWNvO1xuICAgIH1cbiAgICAjbmV3c2xldHRlck1lc3NhZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubGlua3MtYW5kLXNvY2lhbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA0MHB4IDBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMHB4O1xuICAgIH1cblxuICAgIGEubGluayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGNvbG9yOiAjNDQ0NDQ0O1xuICAgIH1cblxuICB9XG5cbiAgLnNvY2lhbC1pY29ucyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLnNvY2lhbEljb24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBmaWxsOiAkY29sb3JGaXJlQnVzaDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sb2NhdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBhLmJ0biB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OjA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6LTE7XG4gICAgICAgIHRvcDogMDsgIGxlZnQ6IDA7ICByaWdodDogMDsgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7XG5cbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbn1cbiIsIkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwMDAwcHgpIHtcbiAgLm9mZmNhbnZhcy1jb2xsYXBzZSB7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLyogSGVpZ2h0IG9mIG5hdmJhciAqL1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvLyBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgIC8vIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCbGFja1RyYW5zcGFyZW5jeTtcbiAgICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2UtaW4tb3V0LCAtd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICYub3BlbiB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgIC8qIEFjY291bnQgZm9yIGhvcml6b250YWwgcGFkZGluZyBvbiBuYXZiYXIgKi9cbiAgICB9XG4gICAgLmJhY2tncm91bmQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuXG4gICAgfVxuICB9XG59XG5cbiRjb2xvckRvdHM6ICMyMzFmMjA7XG5cbi5hdXRvLWhpZGluZy1oZWFkZXIge1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcblxuICAgICYuaXMtaGlkZGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMxcHgpO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpO1xuICAgICAgfVxuICAgICAgLm5hdmJhci1icmFuZC1ob2xkZXIge1xuICAgICAgICBtYXgtaGVpZ2h0OiA2MHB4O1xuICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgICAgfVxuICAgICAgLm5hdmJhci1icmFuZC1ob2xkZXItaW5uZXIgLmJyYW5kIC5sb2dvIGltZyB7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQ1cHg7XG4gICAgICB9XG4gICAgICAubmF2YmFyLWJyYW5kLWhvbGRlci1pbm5lciAubmF2YmFyLXRvZ2dsZSB7XG4gICAgICAgIG9wYWNpdHk6IDEuMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59XG5cbi5uYXZiYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JGaXJlQnVzaDtcbiAgcGFkZGluZzogMDtcblxuICAmLXRvZ2dsZXIge1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgJi1pY29uIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvaGFtYnVyZ2VyLnN2Zyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICYuY2xvc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2Nsb3NlLnN2Zyk7XG4gICAgICAgIG1heC1oZWlnaHQ6IDI0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1oZWFkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi1jb250ZW50IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG5cbiAgICAgIC5vZmZlcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yTmF2eTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc29jaWFsLWljb25zIHtcblxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDlweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbEljb24ge1xuICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICAgICAgICBAaW5jbHVkZSBmbG9hdC1sZWZ0O1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBmaWxsOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmhlYWRlci1saW5rcyB7XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIHBhZGRpbmc6IDVweCA4cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5vZmZlcnMge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JOYXZ5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaGVhZGVyLWJvb2tpbmcge1xuICAgICAgICAvL21hcmdpbi1yaWdodDogMTVweDtcblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi1ib29raW5nIHtcblxuICAgICAgcGFkZGluZzogMHB4IDE1cHggMTVweCAxNXB4O1xuXG4gICAgfVxuXG4gICAgLmZvcm0tYm9va2luZy1ob2xkZXIge1xuXG4gICAgICAuZGF0ZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgICAgICAgJi1hcnJpdmUge1xuXG4gICAgICAgIH1cbiAgICAgICAgJi1kZXBhcnQge1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodFVsdHJhTHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcblxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5wYXJzbGV5LWVycm9yIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBidXR0b24udWktZGF0ZXBpY2tlci10cmlnZ2VyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMHB4O1xuICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAwcHg7XG4gICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgIG1hcmdpbjogN3B4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnN1Ym1pdCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zdWJtaXQtYm9va2luZy1oZXJvIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OjA7XG4gICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJyaWdodDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRVbHRyYUx0O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHotaW5kZXg6LTE7XG4gICAgICAgICAgdG9wOiAwOyAgbGVmdDogMDsgIHJpZ2h0OiAwOyBib3R0b206IDA7XG4gICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLW91dDtcblxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JCcmlnaHQ7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJCT09LIE5PV1wiO1xuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNzVweCkge1xuICAgICAgICAgICAgY29udGVudDogXCJCT09LXCI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgdWwucGFyc2xleS1lcnJvcnMtbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gICYtYnJhbmQge1xuXG4gICAgJi1ob2xkZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGNvbG9yQ2lubmFiYXI7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG9yQ2lubmFiYXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGhlaWdodDogOTRweDtcbiAgICAgIC8vZGlzcGxheTogZmxleDtcbiAgICAgIC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkY29sb3JEb3RzO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwICRjb2xvckNpbm5hYmFyO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy9ib3JkZXItYm90dG9tOiAxcHggc29saWQgd2hpdGU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgJGNvbG9yRG90cztcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCAkY29sb3JDaW5uYWJhcjtcbiAgICAgIH1cblxuICAgICAgJi1pbm5lciB7XG4gICAgICAgIC8vaGVpZ2h0OiA5MHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuYnJhbmQge1xuICAgICAgICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucm93IHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDgycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGhlaWdodDogNjRweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdmJhci10b2dnbGUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuXG4gICAgICAgICAgICAubmF2YmFyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxvYXQtcmlnaHQ7XG5cbiAgICAgICAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAgICAgICAubmF2LWl0ZW0ge1xuXG4gICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvckJyaWdodDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250QmFsb29EYTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXN7XG4gICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmLmhvbWUgeyAvL3RoZSBtZW51IGl0ZW0ncyBjbGFzc05hbWVzIHByb3BlcnR5IGluIHRoZSBDTVMgbXVzdCBiZSBzZXQgdG8gaG9tZVxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgICAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLCAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJyaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMTBweCAzNXB4IDBweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgICAgICAgICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDEwcHggMzVweCAwcHggcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMTBweCAzNXB4IDBweCByZ2JhKDAsMCwwLDAuMSk7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRjb2xvckRvdHM7XG4gICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCAkY29sb3JDaW5uYWJhcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGNvbG9yQ2lubmFiYXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAmLWNvbGxhcHNlIHtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLm5hdi1jb250YWluZXIge1xuXG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICBtYXJnaW4tbGVmdDogMTV2dztcbiAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yU2lsdmVyO1xuXG4gICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgdWwge1xuXG4gICAgICAgIHBhZGRpbmc6IDBweDtcblxuICAgICAgICAmID4gbGkge1xuXG4gICAgICAgICAgJi5uYXYtaXRlbSB7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRCYWxvb0RhO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMDtcblxuICAgICAgICAgICAgJi5jbG9zZXIge1xuICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNzA3MDcwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZHJvcGRvd24ge1xuXG4gICAgICAgICAgICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNTBweDtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5jYXJldCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9tZW51LW9wZW4ucG5nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgLmNhcmV0IHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL21lbnUtY2xvc2UucG5nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzO1xuXG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjBmMDtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNzA3MDcwO1xuICAgICAgICAgICAgICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM3MDcwNzA7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclNpbHZlcjtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5uYXYtZm9vdGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5uYXYtYmcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB6LWluZGV4OiA5MDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvcGFsbS10cmVlLXNpbHZlci5zdmcpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEyJSwgMTAlKSByb3RhdGUoMTVkZWcpO1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMDAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTklLCAyMCUpIHJvdGF0ZSgxNWRlZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdi1saW5rcyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcblxuICAgICAgICAgIGEubGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNDQ0NDQ0O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1pY29ucyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgLnNvY2lhbEljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICBmaWxsOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbn1cbiIsIi8qIEhvbWVwYWdlIFRlbXBsYXRlICovXG4uaG9tZXBhZ2UtdGVtcGxhdGUge1xuXG4gIC5jb250YWluZXIuY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy10b3A6IDIyNXB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgcGFkZGluZy10b3A6IDE3NHB4O1xuICAgIH1cblxuICAgIC50cmVlMSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgei1pbmRleDogMzAwO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDU3NHB4O1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSkgdHJhbnNsYXRlWCgtMTAwcHgpIHJvdGF0ZSgxNWRlZyk7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgIHdpZHRoOiA0ODZweDtcbiAgICAgICAgZmlsbDogI2ZkZmRmZDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgdG9wOiA2NzRweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICAgICAgdG9wOiA3NTRweDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpIHRyYW5zbGF0ZVgoLTE3MHB4KSByb3RhdGUoMTVkZWcpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50cmVlMiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE0NzRweDtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTM1JSk7XG4gICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgIHdpZHRoOiAyNTlweDtcbiAgICAgICAgZmlsbDogJGNvbG9yU2lsdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50cmVlMyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA4MDA7XG4gICAgICAgIGJvdHRvbTogLTEwMHB4O1xuICAgICAgICByaWdodDogLTQwcHg7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKSB0cmFuc2xhdGVYKC01MHB4KSByb3RhdGUoMTVkZWcpO1xuICAgICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgICAgICB3aWR0aDogMzQwLjVweDtcbiAgICAgICAgZmlsbDogI2VjZWNlYztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyby1ib29raW5nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxMHB4IDM1cHggMHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDEwcHggMzVweCAwcHggcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDEwcHggMzVweCAwcHggcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgei1pbmRleDogNDAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICRjb2xvckNpbm5hYmFyO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgdG9wOiA0NTBweDtcbiAgICAgICAgd2lkdGg6IDM1MHB4O1xuICAgICAgICBoZWlnaHQ6IDMxMHB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICB0b3A6IDU1NHB4O1xuICAgICAgICByaWdodDogNTBweDtcbiAgICAgIH1cbiAgICAgIC5iYWNrLWJveCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICAgIHRvcDogLTVweDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgaGVpZ2h0OiA5MCU7XG4gICAgICAgIHotaW5kZXg6IDQwMTtcbiAgICAgIH1cbiAgICAgIC5pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICB6LWluZGV4OiA0MDI7XG4gICAgICB9XG4gICAgICAuZGF0ZXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiAyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBoZWlnaHQ6IDE0NXB4O1xuXG4gICAgICAgIC5kYXRlIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckNpbm5hYmFyO1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICYuYXJyaXZhbCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICYuZGVwYXJ0dXJlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTI0cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLm1vbnRoIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZmxleDogMSAwIDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5kYXkge1xuICAgICAgICAgICAgZmxleDogMjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC55ZWFyIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAudWktZGF0ZXBpY2tlci1pbmxpbmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgICAgICByaWdodDogMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmd1ZXN0cyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxleDogMSAwIDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDY3cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLnVwIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTdweDtcbiAgICAgICAgfVxuICAgICAgICAuZG93biB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICBib3R0b206IDNweDtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC03cHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRlbnQtaG9sZGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvaG9tZXBhZ2UtY29udGVudC1tb2JpbGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuXG4gICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL3J1bGVyLnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLmlubmVyIHtcbiAgICAgICAgcGFkZGluZzogNTBweCA0NXB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNTBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLm9mZmVycy1ob2xkZXIge1xuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgd2hpdGU7XG4gICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgd2hpdGU7XG4gICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHdoaXRlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIENvbnRlbnQgVGVtcGxhdGUgKi9cblxuLmNvbnRlbnQtdGVtcGxhdGUge1xuXG4gIC5jb250YWluZXIuY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy10b3A6IDIyNXB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgcGFkZGluZy10b3A6IDE3NHB4O1xuICAgIH1cblxuICAgIC50cmVlMSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA4MDA7XG4gICAgICAgIGJvdHRvbTogLTEwMHB4O1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSkgdHJhbnNsYXRlWCgtNTBweCkgcm90YXRlKDE1ZGVnKTtcbiAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgd2lkdGg6IDM0MHB4O1xuICAgICAgICBmaWxsOiAjZWNlY2VjO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50LWhvbGRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiA0MDA7XG4gICAgICBtYXJnaW4tdG9wOiAtNzVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcblxuICAgICAgLmNvbnRlbnQtbWFzayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvY29udGVudC1zd29vcC1tYXNrLnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgIC5jb250ZW50LWNvbHVtbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDI1MHB4O1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yRmlyZUJ1c2g7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdDtcbiAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgICB9XG5cbiAgICAgICAgLnd5c2l3eWcge1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBvdXRsaW5lOiAxcHggc29saWQgd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICAgICAgICBsaTo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDIyXCI7XG4gICAgICAgICAgICAvKiBVbmljb2RlIG9mIGNoYXJhY3RlciB0byBwcmVjZWRlIHRoZSBsaXN0IGl0ZW0gKi9cblxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgIC8qIGVtIG9yICUqL1xuXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuNWVtO1xuICAgICAgICAgICAgLyogdXNlIGVtKi9cblxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAwZW07XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgICAgLmNvbnRlbnQtc2lkZWJhciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDEyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5vZmZlcnMtaG9sZGVyIHtcbiAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAtMjdweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IC0yN3B4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuc2xpY2stZG90cyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAub2ZmZXJzLWlubmVyIHtcbiAgICAgICAgICAgIC5vZmZlciB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmluc3RhZ3JhbS1ob2xkZXIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgLnNvY2lhbEljb24ge1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRCYWxvb0RhO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmluc3RhZ3JhbS1pbm5lciB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgLmxpZ2h0d2lkZ2V0LXdpZGdldCB7XG4gICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgIGJvcmRlcjowO1xuICAgICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogVGl0bGUgVGVtcGxhdGUgKi9cblxuLnRpdGxlLXRlbXBsYXRlIHtcblxuICAuY29udGFpbmVyLmNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiAyMjVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNzRweDtcbiAgICB9XG5cbiAgICAudHJlZTEge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1NTRweDtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTM1JSk7XG4gICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgIHdpZHRoOiA0NDMuNXB4O1xuICAgICAgICBmaWxsOiAkY29sb3JTaWx2ZXI7XG4gICAgICAgIHotaW5kZXg6IDYwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudHJlZTIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogODAwO1xuICAgICAgICBib3R0b206IC0xMDBweDtcbiAgICAgICAgcmlnaHQ6IC00MHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSkgdHJhbnNsYXRlWCgtNTBweCkgcm90YXRlKDE1ZGVnKTtcbiAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgd2lkdGg6IDM0MHB4O1xuICAgICAgICBmaWxsOiAjZWNlY2VjO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jb250ZW50LWhvbGRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDI1MHB4O1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIGNvbG9yOiAkY29sb3JGaXJlQnVzaDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0O1xuICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgIGNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIG91dGxpbmU6IDFweCBzb2xpZCB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0xMHB4O1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICAgIGxpOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcMjAyMlwiO1xuICAgICAgICAvKiBVbmljb2RlIG9mIGNoYXJhY3RlciB0byBwcmVjZWRlIHRoZSBsaXN0IGl0ZW0gKi9cblxuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAvKiBlbSBvciAlKi9cblxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuNWVtO1xuICAgICAgICAvKiB1c2UgZW0qL1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgLmNhbGxvdXQtaG9sZGVyIHtcbiAgICAuY2FsbG91dCB7XG4gICAgICAmOm50aC1jaGlsZCg0biArIDEpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQ2lubmFiYXI7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgLmNhbGxvdXQtY29udGVudCB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIC5idXR0b24tY2FsbG91dCB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yQ2lubmFiYXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoNG4gKyAyKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgIC5jYWxsb3V0LWNvbnRlbnR7XG4gICAgICAgICAgLmJ1dHRvbi1jYWxsb3V0IHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDRuICsgMykge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JTZWFzaGVsbDtcbiAgICAgICAgaDMge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JGaXJlQnVzaDtcbiAgICAgICAgfVxuICAgICAgICAuY2FsbG91dC1jb250ZW50IHtcbiAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgLmJ1dHRvbi1jYWxsb3V0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCg0biArIDQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRmlyZUJ1c2g7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgLmNhbGxvdXQtY29udGVudCB7XG4gICAgICAgICAgLmJ1dHRvbi1jYWxsb3V0IHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm9mZmVycy1ob2xkZXIge1xuXG4gICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgd2hpdGU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHdoaXRlO1xuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgd2hpdGU7XG5cbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxuXG59XG5cbi8qIFJvb21zIFRlbXBsYXRlICovXG5cbi5yb29tcy10ZW1wbGF0ZSB7XG4gIC5jb250YWluZXIuY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy10b3A6IDIyNXB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgcGFkZGluZy10b3A6IDE3NHB4O1xuICAgIH1cblxuICAgIC50cmVlMSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA4MDA7XG4gICAgICAgIHRvcDogMTAwcHg7XG4gICAgICAgIHJpZ2h0OiAtNDBweDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpIHRyYW5zbGF0ZVgoLTUwcHgpIHJvdGF0ZSgxNWRlZyk7XG4gICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgIHdpZHRoOiAzNDAuNXB4O1xuICAgICAgICBmaWxsOiAjZWNlY2VjO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50LWhvbGRlciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgIC5pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDMwMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDVweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvcnVsZXIuc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAucm9vbXMtaG9sZGVyIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAucm9vbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDEwcHggMzVweCAwcHggcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgICAtbW96LWJveC1zaGFkb3c6IDBweCAxMHB4IDM1cHggMHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDEwcHggMzVweCAwcHggcmdiYSgwLDAsMCwwLjEpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5nYWxsZXJ5IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDUwMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogNjVweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93LnN2Zyk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgei1pbmRleDogNTAxO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAxMzVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDkuNXB4O1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDkuNXB4O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICBib3JkZXI6IDBweDtcbiAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMjdweDtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2dhbGxlcnktZG90LnN2Zyk7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9nYWxsZXJ5LWRvdC1zZWxlY3RlZC5zdmcpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJvb20taW1hZ2Uge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxNjBweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzIwcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgZmxleDogMSAwIDA7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZXNjciB7XG4gICAgICAgICAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm9va2luZyB7XG4gICAgICAgICAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmVhdHVyZXMge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIHBhZGRpbmc6IDBweCAyMHB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAxMDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZmVhdCB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDVweCAwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgICAgZmxleDogMCAwIDQzJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgICAgZmxleDogMCAwIDI4JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJiAuc2VydGFNYXR0cmVzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9yb29tLWZlYXQtc2VydGEuc3ZnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiAudGhyZWFkQ291bnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvcm9vbS1mZWF0LWxpbmVucy5zdmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmIC5zYWZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3Jvb20tZmVhdC1zYWZlLnN2Zyk7XG4gICAgICAgICAgfVxuICAgICAgICAgICYgLmhhaXJEcnllciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9yb29tLWZlYXQtZHJ5ZXIuc3ZnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiAudHYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvcm9vbS1mZWF0LXR2LnN2Zyk7XG4gICAgICAgICAgfVxuICAgICAgICAgICYgLmlyb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvcm9vbS1mZWF0LWlyb24uc3ZnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiAuaW50ZXJuZXQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvcm9vbS1mZWF0LWludGVybmV0LnN2Zyk7XG4gICAgICAgICAgfVxuICAgICAgICAgICYgLmFydHdvcmsge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvcm9vbS1mZWF0LWFydC5zdmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmIC5zcS1mdCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9yb29tLWZlYXQtc3FmdC5zdmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmIC5zdHJpcFZpZXcge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvcm9vbS1mZWF0LXZpZXcuc3ZnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiAuYmVkcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9yb29tLWZlYXQtYmVkLnN2Zyk7XG4gICAgICAgICAgfVxuICAgICAgICAgICYgLnN0cmlwVmlldyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9yb29tLWZlYXQtdmlldy5zdmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmIC5wb29sVmlldyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9yb29tLWZlYXQtdmlldy5zdmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmIC5saXZpbmdSb29tIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3Jvb20tZmVhdC1mcmlkZ2Uuc3ZnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiAucHVsbE91dCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9yb29tLWZlYXQtY291Y2guc3ZnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiAuYmF0aHJvb21zIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3Jvb20tZmVhdC1iYXRocm9vbS5zdmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmIC5qYWN1enppVHViIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3Jvb20tZmVhdC1qYWN1enppLnN2Zyk7XG4gICAgICAgICAgfVxuICAgICAgICAgICYgLmtpbmdCZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvcm9vbS1mZWF0LWJlZC5zdmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmIC5wYXJraW5nIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3Jvb20tZmVhdC1wYXJraW5nLnN2Zyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ib29raW5nIHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgYS5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJyaWdodDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhbGwge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250QmFsb29EYTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yQnJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAub2ZmZXJzLWhvbGRlciB7XG5cbiAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHdoaXRlO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHdoaXRlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB3aGl0ZTtcblxuICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgfVxuICB9XG5cbn1cblxuLyogT2ZmZXJzIFRlbXBsYXRlICovXG4ub2ZmZXJzLXRlbXBsYXRlIHtcbiAgLmNvbnRhaW5lci5jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLXRvcDogMjI1cHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTc0cHg7XG4gICAgfVxuXG4gICAgLnRyZWUxIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDgwMDtcbiAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgcmlnaHQ6IC00MHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSkgdHJhbnNsYXRlWCgtNTBweCkgcm90YXRlKDE1ZGVnKTtcbiAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgd2lkdGg6IDM0MC41cHg7XG4gICAgICAgIGZpbGw6ICNlY2VjZWM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRlbnQtaG9sZGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgLmlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggMzAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9ydWxlci5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5vZmZlcnMtbGlzdGluZy1ob2xkZXIge1xuICAgICAgcGFkZGluZzogMzBweDtcblxuICAgICAgLm9mZmVycy1saXN0aW5nLWlubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICBtYXJnaW46IC0xMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmVyIHtcbiAgICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMTBweCAzNXB4IDBweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgLW1vei1ib3gtc2hhZG93OiAwcHggMTBweCAzNXB4IDBweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMHB4IDEwcHggMzVweCAwcHggcmdiYSgwLDAsMCwwLjEpO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgZmxleDogMCAwIDQ2LjklO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCAzMSU7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgICAgICAgIGZsZXg6IDAgMCAyOSU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIG5hdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgICAgIC5wYWdlLWl0ZW0ge1xuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICBjb2xvcjogI2M1YzVjNTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICYuYmFjayB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYubmV4dCB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIE9mZmVyIERldGFpbCBUZW1wbGF0ZSAqL1xuLm9mZmVyLXRlbXBsYXRlIHtcblxuICAuY29udGFpbmVyLmNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiAyMjVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNzRweDtcbiAgICB9XG4gIH1cblxuICAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuY29udGVudC1ob2xkZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogNDAwO1xuICAgICAgbWFyZ2luLXRvcDogLTc1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG5cbiAgICAgIC5jb250ZW50LW1hc2sge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2NvbnRlbnQtc3dvb3AtbWFzay5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgfVxuXG4gICAgICAuY29udGVudC1jb2x1bW4ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG5cbiAgICAgICAgaDEge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JGaXJlQnVzaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdDtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6LTE7XG4gICAgICAgICAgICB0b3A6IDA7ICBsZWZ0OiAwOyAgcmlnaHQ6IDA7IGJvdHRvbTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5jb250ZW50LXNpZGViYXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgICAgICAgfVxuICAgICAgICAub2ZmZXJzLWhvbGRlciB7XG4gICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgbGVmdDogLTI3cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMjdweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTUwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm9mZmVycy1pbm5lciB7XG4gICAgICAgICAgICAub2ZmZXIge1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG5cbi8qIEVudGVydGFpbm1lbnQgQ2FsZW5kYXIgVGVtcGxhdGUgKi9cbi5lbnRlcnRhaW5tZW50LWNhbGVuZGFyLXRlbXBsYXRlIHtcblxuICAuY29udGFpbmVyLmNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiAyMjVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNzRweDtcbiAgICB9XG4gIH1cblxuICAuY29udGVudCB7XG4gICAgLmNvbnRlbnQtaG9sZGVyIHtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICBoMiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3JGaXJlQnVzaDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICB9XG4gICAgICAuc2hvd3MsIC5ldmVudHMge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG5cbiAgICAgICAgICAuZXZlbnQge1xuICAgICAgICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMTBweCAzNXB4IDBweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IDBweCAxMHB4IDM1cHggMHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAxMHB4IDM1cHggMHB4IHJnYmEoMCwwLDAsMC4xKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgICBmbGV4OiAwIDAgNDYuOSU7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgIGZsZXg6IDAgMCAzMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZXZlbnQtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgIGhlaWdodDogMTMwcHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZXZlbnQtY29udGVudCB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5zY2hlZHVsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYS5idXR0b24tZXZlbnQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIHotaW5kZXg6LTE7XG4gICAgICAgICAgICAgICAgICB0b3A6IDA7ICBsZWZ0OiAwOyAgcmlnaHQ6IDA7IGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBhLmJ1dHRvbi1saW5rIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAub2ZmZXJzLWhvbGRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICB9XG4gIH1cbn1cblxuLyogRXZlbnQgRGV0YWlsIFRlbXBsYXRlICovXG4uZXZlbnQtdGVtcGxhdGUge1xuXG4gIC5jb250YWluZXIuY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy10b3A6IDIyNXB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgcGFkZGluZy10b3A6IDE3NHB4O1xuICAgIH1cbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5jb250ZW50LWhvbGRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiA0MDA7XG4gICAgICBtYXJnaW4tdG9wOiAtNzVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcblxuICAgICAgLmNvbnRlbnQtbWFzayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvY29udGVudC1zd29vcC1tYXNrLnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgIC5jb250ZW50LWNvbHVtbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMjBweDtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdDtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6LTE7XG4gICAgICAgICAgICB0b3A6IDA7ICBsZWZ0OiAwOyAgcmlnaHQ6IDA7IGJvdHRvbTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5jb250ZW50LXNpZGViYXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nYWxsZXJ5LWhvbGRlciB7XG4gICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAtMjdweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IC0yN3B4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuc2xpY2stZG90cyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5nYWxsZXJ5LWlubmVyIHtcbiAgICAgICAgICAgIC5nYWxsZXJ5LWltYWdlIHtcbiAgICAgICAgICAgICAgLmdhbGxlcnktaW1hZ2UtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDBweCAxMHB4O1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMTBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZlcnMtaG9sZGVyIHtcbiAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAtMjdweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IC0yN3B4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuc2xpY2stZG90cyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAub2ZmZXJzLWlubmVyIHtcbiAgICAgICAgICAgIC5vZmZlciB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cblxuLyogQ29tbW9uIFNlY3Rpb25zICovXG5cbi5ob3Jpem9udGFsLW9yYW5nZSB7XG4gIGJhY2tncm91bmQ6ICNlODU0MzQ7IC8qIE9sZCBicm93c2VycyAqL1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAgI2U4NTQzNCAwJSwgI2VjOGUzMyAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgICNlODU0MzQgMCUsI2VjOGUzMyAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAgI2U4NTQzNCAwJSwjZWM4ZTMzIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNlODU0MzQnLCBlbmRDb2xvcnN0cj0nI2VjOGUzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cbn1cblxuLnZlcnRpY2FsLW9yYW5nZSB7XG4gIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyNlYzhkMzMrMCxlODU0MzQrMTAwICovXG4gIGJhY2tncm91bmQ6ICNlYzhkMzM7IC8qIE9sZCBicm93c2VycyAqL1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICAjZWM4ZDMzIDAlLCAjZTg1NDM0IDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICAjZWM4ZDMzIDAlLCNlODU0MzQgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICAjZWM4ZDMzIDAlLCNlODU0MzQgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2VjOGQzMycsIGVuZENvbG9yc3RyPScjZTg1NDM0JyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOSAqL1xuXG59XG5cbi5vZmZlcnMtaG9sZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cbiAgaDMge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBsaW5lLWhlaWdodDogODBweDtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAub2ZmZXJzLWlubmVyIHtcblxuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDE2MHB4O1xuICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3cuc3ZnKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBib3JkZXI6IDBweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogLTIwcHg7XG4gICAgfVxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICB9XG4gICAgLnNsaWNrLWRvdHMge1xuICAgICAgbWFyZ2luLWxlZnQ6IDkuNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA5LjVweDtcbiAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIHdpZHRoOiAyN3B4O1xuICAgICAgICAgIGhlaWdodDogMjdweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9vZmZlci1kb3Quc3ZnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvb2ZmZXItZG90LXNlbGVjdGVkLnN2Zyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxufVxuXG4ub2ZmZXJzLWhvbGRlciB7XG4gICYub2ZmZXJzLTEge1xuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ub2ZmZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDEwcHggc29saWQgd2hpdGU7XG4gIG1hcmdpbjogMCAxMHB4O1xuXG4gIC5vZmZlci10aHVtYm5haWwge1xuICAgIGhlaWdodDogMTMwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB9XG5cbiAgLm9mZmVyLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuXG4gICAgaDMge1xuICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICB9XG4gICAgaDQge1xuICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICB9XG4gICAgYS5idXR0b24tb2ZmZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgbGVmdDogMjBweDtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgei1pbmRleDogMDtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4Oi0xO1xuICAgICAgICB0b3A6IDA7ICBsZWZ0OiAwOyAgcmlnaHQ6IDA7IGJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yUHVlcnRvUmljbztcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xuXG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4uZ2FsbGVyeS0xIHtcbiAgLnNsaWNrLWFycm93IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zbGljay1kb3RzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5nYWxsZXJ5LWhvbGRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXG4gIGgzIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLmdhbGxlcnktaW5uZXIge1xuXG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogODVweDtcbiAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93LnN2Zyk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogLTIwcHg7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgfVxuICAgIC5zbGljay1kb3RzIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA5LjVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogOS41cHg7XG4gICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlcjogMHB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICBoZWlnaHQ6IDI3cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvZ2FsbGVyeS1kb3Quc3ZnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvZ2FsbGVyeS1kb3Qtc2VsZWN0ZWQuc3ZnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59XG5cbi5jb250ZW50LWhvbGRlciB7XG4gIC5jb250ZW50LWNvbHVtbiB7XG4gICAgZm9ybSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvclB1ZXJ0b1JpY287XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wcm9tb3Rpb24taG9sZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA0MHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogMjBweCAyMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAucHJvbW90aW9uLXRodW1iIHtcbiAgICBvcmRlcjogMjtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLnByb21vdGlvbi1jb250ZW50IHtcbiAgICBvcmRlcjogMTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNTBweDtcbiAgICB9XG4gICAgaDQge1xuICAgICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5leHRyYS1wcm9tb3Rpb24tYnV0dG9uIHtcbiAgICBvcmRlcjogMztcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5idG4ge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRjb2xvclB1ZXJ0b1JpY287XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yUHVlcnRvUmljbztcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4Oi0xO1xuICAgICAgdG9wOiAwOyAgbGVmdDogMDsgIHJpZ2h0OiAwOyBib3R0b206IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JQdWVydG9SaWNvO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7XG5cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG5cbn1cblxuLmNvb2tpZS1hY2NlcHQsIC5icm93c2VyLXVwZGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDEwcHggMzVweCAwcHggcmdiYSgwLDAsMCwwLjEpO1xuICAtbW96LWJveC1zaGFkb3c6IDBweCAxMHB4IDM1cHggMHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgYm94LXNoYWRvdzogMHB4IDEwcHggMzVweCAwcHggcmdiYSgwLDAsMCwwLjEpO1xuICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0O1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHotaW5kZXg6IDIwMDA7XG4gIC5idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckZpcmVCdXNoO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6LTE7XG4gICAgICB0b3A6IDA7ICBsZWZ0OiAwOyAgcmlnaHQ6IDA7IGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7XG5cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yRmlyZUJ1c2g7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIl0sIm1hcHBpbmdzIjoiQUNBQTs7Ozs7R0FLRztBa0NMSCxBQUFBLEtBQUssQ0FBQztFQUdGLE1BQVcsRUFBRyxPQUFDO0VBQWYsUUFBVyxFQUFHLE9BQUM7RUFBZixRQUFXLEVBQUcsT0FBQztFQUFmLE1BQVcsRUFBRyxPQUFDO0VBQWYsS0FBVyxFQUFHLE9BQUM7RUFBZixRQUFXLEVBQUcsT0FBQztFQUFmLFFBQVcsRUFBRyxPQUFDO0VBQWYsT0FBVyxFQUFHLE9BQUM7RUFBZixNQUFXLEVBQUcsT0FBQztFQUFmLE1BQVcsRUFBRyxPQUFDO0VBQWYsT0FBVyxFQUFHLElBQUM7RUFBZixNQUFXLEVBQUcsT0FBQztFQUFmLFdBQVcsRUFBRyxPQUFDO0VBSWYsU0FBVyxFQUFHLE9BQUM7RUFBZixXQUFXLEVBQUcsT0FBQztFQUFmLFNBQVcsRUFBRyxPQUFDO0VBQWYsTUFBVyxFQUFHLE9BQUM7RUFBZixTQUFXLEVBQUcsT0FBQztFQUFmLFFBQVcsRUFBRyxPQUFDO0VBQWYsT0FBVyxFQUFHLE9BQUM7RUFBZixNQUFXLEVBQUcsT0FBQztFQUlmLGVBQW1CLEVBQWMsQ0FBQztFQUFsQyxlQUFtQixFQUFjLEtBQUM7RUFBbEMsZUFBbUIsRUFBYyxLQUFDO0VBQWxDLGVBQW1CLEVBQWMsS0FBQztFQUFsQyxlQUFtQixFQUFjLE1BQUM7RUFLcEMsd0JBQXdCLEVBQUMsb0pBQUM7RUFDMUIsdUJBQXVCLEVBQUMsb0ZBQUMsR0FDMUI7O0FDRUQsQUFBQSxDQUFDO0FBQ0QsQUFBQyxDQUFBLEFBQUEsUUFBUTtBQUNULEFBQUMsQ0FBQSxBQUFBLE9BQU8sQ0FBQztFQUNQLFVBQVUsRUFBRSxVQUFXLEdBQ3hCOztBQUVELEFBQUEsSUFBSSxDQUFD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QUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtFQUlwQixTQUFTLEVBQUUsR0FBVSxHRERkOztBQUZELEFBQUEsTUFBTSxDQUFOO0VDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVTtFQUlwQixTQUFTLEVBQUUsU0FBVSxHRERkOztBQUZELEFBQUEsTUFBTSxDQUFOO0VDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVTtFQUlwQixTQUFTLEVBQUUsU0FBVSxHRERkOztBQUZELEFBQUEsTUFBTSxDQUFOO0VDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtFQUlwQixTQUFTLEVBQUUsR0FBVSxHRERkOztBQUZELEFBQUEsTUFBTSxDQUFOO0VDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVTtFQUlwQixTQUFTLEVBQUUsU0FBVSxHRERkOztBQUZELEFBQUEsTUFBTSxDQUFOO0VDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVTtFQUlwQixTQUFTLEVBQUUsU0FBVSxHRERkOztBQUZELEFBQUEsTUFBTSxDQUFOO0VDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtFQUlwQixTQUFTLEVBQUUsR0FBVSxHRERkOztBQUZELEFBQUEsT0FBTyxDQUFQO0VDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVTtFQUlwQixTQUFTLEVBQUUsU0FBVSxHRERkOztBQUZELEFBQUEsT0FBTyxDQUFQO0VDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVTtFQUlwQixTQUFTLEVBQUUsU0FBVSxHRERkOztBQUZELEFBQUEsT0FBTyxDQUFQO0VDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBVTtFQUlwQixTQUFTLEVBQUUsSUFBVSxHRERkOztBQUdILEFBQUEsWUFBWSxDQUFaO0VBQUUsS0FBSyxFQUFFLEVBQUcsR0FBSTs7QUFFaEIsQUFBQSxXQUFXLENBQVg7RUFBRSxLQUFLLEVBQUUsRUFBUSxHQUFROztBQUd2QixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7O0FBQWYsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHOztBQUFmLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUMsR0FDRzs7QUFBZixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7O0FBQWYsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHOztBQUFmLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUMsR0FDRzs7QUFBZixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7O0FBQWYsQUFBQSxRQUFRLENBQVI7RUFBRSxLQUFLLEVBREksQ0FBQyxHQUNHOztBQUFmLEFBQUEsUUFBUSxDQUFSO0VBQUUsS0FBSyxFQURJLENBQUMsR0FDRzs7QUFBZixBQUFBLFFBQVEsQ0FBUjtFQUFFLEtBQUssRUFESSxDQUFDLEdBQ0c7O0FBQWYsQUFBQSxTQUFTLENBQVQ7RUFBRSxLQUFLLEVBREksRUFBQyxHQUNHOztBQUFmLEFBQUEsU0FBUyxDQUFUO0VBQUUsS0FBSyxFQURJLEVBQUMsR0FDRzs7QUFBZixBQUFBLFNBQVMsQ0FBVDtFQUFFLEtBQUssRUFESSxFQUFDLEdBQ0c7O0FBTWIsQUFBQSxTQUFTLENBQVQ7RUNSUixXQUFXLEVBQW1CLFFBQVUsR0RVL0I7O0FBRkQsQUFBQSxTQUFTLENBQVQ7RUNSUixXQUFXLEVBQW1CLFNBQVUsR0RVL0I7O0FBRkQsQUFBQSxTQUFTLENBQVQ7RUNSUixXQUFXLEVBQW1CLEdBQVUsR0RVL0I7O0FBRkQsQUFBQSxTQUFTLENBQVQ7RUNSUixXQUFXLEVBQW1CLFNBQVUsR0RVL0I7O0FBRkQsQUFBQSxTQUFTLENBQVQ7RUNSUixXQUFXLEVBQW1CLFNBQVUsR0RVL0I7O0FBRkQsQUFBQSxTQUFTLENBQVQ7RUNSUixXQUFX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LFNBQVMsRUFBRSxJQUFLLEdBQ2pCO0VBR0MsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFVO0lBSXBCLFNBQVMsRUFBRSxRQUFVLEdERGQ7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVUsR0REZDtFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVSxHRERkO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVLEdERGQ7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVUsR0REZDtFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVSxHRERkO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVLEdERGQ7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVUsR0REZDtFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBVTtJQUlwQixTQUFTLEVBQUUsR0FBVSxHRERkO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFVO0lBSXBCLFNBQVMsRUFBRSxTQUFVLEdERGQ7RUFGRCxBQUFBLFVBQVUsQ0FB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QUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFVO0lBSXBCLFNBQVMsRUFBRSxHQUFVLEdERGQ7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVUsR0REZDtFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVTtJQUlwQixTQUFTLEVBQUUsU0FBVSxHRERkO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFVO0lBSXBCLFNBQVMsRUFBRSxHQUFVLEdERGQ7RUFGRCxBQUFBLFNBQVMsQ0FBVDtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVUsR0REZDtFQUZELEFBQUEsU0FBUyxDQUFUO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVTtJQUlwQixTQUFTLEVBQUUsU0FBVSxHRERkO0VBRkQsQUFBQSxTQUFTLENBQVQ7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFVO0lBSXBCLFNBQVMsRUFBRSxHQUFVLEdERGQ7RUFGRCxBQUFBLFVBQVUsQ0FBVjtJQ0ROLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVU7SUFJcEIsU0FBUyxFQUFFLFNBQVUsR0REZDtFQUZELEFBQUEsVUFBVSxDQUFWO0lDRE4sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVTtJQUlwQixTQUFTLEVBQUUsU0FBVSxHRERkO0VBRkQsQUFBQSxVQUFVLENBQVY7SUNETixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFVO0lBSXBCLFNBQVMsRUFBRSxJQUFVLEdERGQ7RUFHSCxBQUFBLGVBQWUsQ0FBZjtJQUFFLEtBQUssRUFBRSxFQUFHLEdBQUk7RUFFaEIsQUFBQSxjQUFjLENBQWQ7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LFNBQVMsRUFBRSxvQkFBVyxHQUN6Qjs7QUFFRCxBQUFBLFlBQVksQ0FBQztFQUNULFFBQVEsRUFBRSxRQUFTO0VBQ25CLElBQUksRUFBRSxDQUFFO0VBQ1IsR0FBRyxFQUFFLENBQUU7RUFDUCxPQUFPLEVBQUUsS0FBTTtFQUNmLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLFlBQVksRUFBRSxJQUFLLEdBZXRCO0VBckJELEFBQUEsWUFBWSxBQVFQLE9BQU8sRUFSWixBQUFBLFlBQVksQUFTUCxNQUFNLENBQUM7SUFDSixPQUFPLEVBQUUsRUFBRztJQUNaLE9BQU8sRUFBRSxLQUFNLEdBQ2xCO0VBWkwsQUFBQSxZQUFZLEFBY1AsTUFBTSxDQUFDO0lBQ0osS0FBSyxFQUFFLElBQUssR0FDZjtFQUVELEFBbEJKLGNBa0JrQixDQWxCbEIsWUFBWSxDQWtCUztJQUNiLFVBQVUsRUFBRSxNQUFPLEdBQ3RCOztBQUVMLEFBQUEsWUFBWSxDQUFDO0VBQ1QsS0FBSyxFQUFFLElBQUs7RUFDWixNQUFNLEVBQUUsSUFBSztFQUNiLFVBQVUsRUFBRSxHQUFJO0VBV2hCLE9BQU8sRUFBRSxJQUFLLEdBbUJqQjtHQTdCRyxBQUFBLEFBSkosR0FJSyxDQUFJLEtBQUssQUFBVCxFQUpMLFlBQVksQ0FJTTtJQUNWLEtBQUssRUFBRSxLQUFNLEdBQ2hCO0VBTkwsQUFPSSxZQVBRLENBT1IsR0FBRyxDQUFDO0lBQ0EsT0FBTyxFQUFFLEtBQU0sR0FDbEI7RUFUTCxBQVVvQixZQVZSLEFBVVAsY0FBYyxDQUFDLEdBQUcsQ0FBQztJQUNoQixPQUFPLEVBQUUsSUFBSyxHQUNqQjtFQVpMLEFBZ0JlLFlBaEJILEFBZ0JQLFNBQVMsQ0FBQyxHQUFHLENBQUM7SUFDWCxjQUFjLEVBQUUsSUFBSyxHQUN4QjtFQUVELEFBcEJKLGtCQW9Cc0IsQ0FwQnRCLFlBQVksQ0FvQmE7SUFDakIsT0FBTyxFQUFFLEtBQU0sR0FDbEI7RUFFRCxBQXhCSixjQXdCa0IsQ0F4QmxCLFlBQVksQ0F3QlM7SUFDYixVQUFVLEVBQUUsTUFBTyxHQUN0QjtFQUVELEFBNUJKLGVBNEJtQixDQTVCbkIsWUFBWSxDQTRCVTtJQUNkLE9BQU8sRUFBRSxLQUFNO0lBQ2YsTUFBTSxFQUFFLElBQUs7SUFDYixNQUFNLEVBQUUscUJBQXNCLEdBQ2pDOztBQUVMLEFBQVksWUFBQSxBQUFBLGFBQWEsQ0FBQztFQUN0QixPQUFPLEVBQUUsSUFBSyxHQUNqQiIsIm5hbWVzIjpbXX0= */
