@charset "UTF-8";
/*!
 * Bootstrap v4.3.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 The Bootstrap Authors
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+TC:300,400,700&display=swap");
: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, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

*,
*::before,
*::after {
  box-sizing: border-box; }

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent; }

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block; }

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff; }

[tabindex="-1"]:focus {
  outline: 0 !important; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem; }

p {
  margin-top: 0;
  margin-bottom: 1rem; }

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none; }

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit; }

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem; }

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0; }

dt {
  font-weight: 700; }

dd {
  margin-bottom: .5rem;
  margin-left: 0; }

blockquote {
  margin: 0 0 1rem; }

b,
strong {
  font-weight: bolder; }

small {
  font-size: 80%; }

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline; }

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent; }
  a:hover {
    color: #0056b3;
    text-decoration: underline; }

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none; }
  a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
    color: inherit;
    text-decoration: none; }
  a:not([href]):not([tabindex]):focus {
    outline: 0; }

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em; }

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto; }

figure {
  margin: 0 0 1rem; }

img {
  vertical-align: middle;
  border-style: none; }

svg {
  overflow: hidden;
  vertical-align: middle; }

table {
  border-collapse: collapse; }

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom; }

th {
  text-align: inherit; }

label {
  display: inline-block;
  margin-bottom: 0.5rem; }

button {
  border-radius: 0; }

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color; }

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

select {
  word-wrap: normal; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none; }

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0; }

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox; }

textarea {
  overflow: auto;
  resize: vertical; }

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0; }

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal; }

progress {
  vertical-align: baseline; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button; }

output {
  display: inline-block; }

summary {
  display: list-item;
  cursor: pointer; }

template {
  display: none; }

[hidden] {
  display: none !important; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2; }

h1, .h1 {
  font-size: 2.5rem; }

h2, .h2 {
  font-size: 2rem; }

h3, .h3 {
  font-size: 1.75rem; }

h4, .h4 {
  font-size: 1.5rem; }

h5, .h5 {
  font-size: 1.25rem; }

h6, .h6 {
  font-size: 1rem; }

.lead {
  font-size: 1.25rem;
  font-weight: 300; }

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2; }

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2; }

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2; }

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2; }

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1); }

small,
.small {
  font-size: 80%;
  font-weight: 400; }

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3; }

.list-unstyled {
  padding-left: 0;
  list-style: none; }

.list-inline {
  padding-left: 0;
  list-style: none; }

.list-inline-item {
  display: inline-block; }
  .list-inline-item:not(:last-child) {
    margin-right: 0.5rem; }

.initialism {
  font-size: 90%;
  text-transform: uppercase; }

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem; }

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d; }
  .blockquote-footer::before {
    content: "\2014\00A0"; }

.img-fluid {
  max-width: 100%;
  height: auto; }

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto; }

.figure {
  display: inline-block; }

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1; }

.figure-caption {
  font-size: 90%;
  color: #6c757d; }

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-break: break-word; }
  a > 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%;
  padding-right: 15px;
  padding-left: 15px; }

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%; }

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%; }

.col-1 {
  flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.col-2 {
  flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.col-3 {
  flex: 0 0 25%;
  max-width: 25%; }

.col-4 {
  flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.col-5 {
  flex: 0 0 41.66667%;
  max-width: 41.66667%; }

.col-6 {
  flex: 0 0 50%;
  max-width: 50%; }

.col-7 {
  flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.col-8 {
  flex: 0 0 66.66667%;
  max-width: 66.66667%; }

.col-9 {
  flex: 0 0 75%;
  max-width: 75%; }

.col-10 {
  flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.col-11 {
  flex: 0 0 91.66667%;
  max-width: 91.66667%; }

.col-12 {
  flex: 0 0 100%;
  max-width: 100%; }

.order-first {
  order: -1; }

.order-last {
  order: 13; }

.order-0 {
  order: 0; }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.order-3 {
  order: 3; }

.order-4 {
  order: 4; }

.order-5 {
  order: 5; }

.order-6 {
  order: 6; }

.order-7 {
  order: 7; }

.order-8 {
  order: 8; }

.order-9 {
  order: 9; }

.order-10 {
  order: 10; }

.order-11 {
  order: 11; }

.order-12 {
  order: 12; }

.offset-1 {
  margin-left: 8.33333%; }

.offset-2 {
  margin-left: 16.66667%; }

.offset-3 {
  margin-left: 25%; }

.offset-4 {
  margin-left: 33.33333%; }

.offset-5 {
  margin-left: 41.66667%; }

.offset-6 {
  margin-left: 50%; }

.offset-7 {
  margin-left: 58.33333%; }

.offset-8 {
  margin-left: 66.66667%; }

.offset-9 {
  margin-left: 75%; }

.offset-10 {
  margin-left: 83.33333%; }

.offset-11 {
  margin-left: 91.66667%; }

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-sm-first {
    order: -1; }
  .order-sm-last {
    order: 13; }
  .order-sm-0 {
    order: 0; }
  .order-sm-1 {
    order: 1; }
  .order-sm-2 {
    order: 2; }
  .order-sm-3 {
    order: 3; }
  .order-sm-4 {
    order: 4; }
  .order-sm-5 {
    order: 5; }
  .order-sm-6 {
    order: 6; }
  .order-sm-7 {
    order: 7; }
  .order-sm-8 {
    order: 8; }
  .order-sm-9 {
    order: 9; }
  .order-sm-10 {
    order: 10; }
  .order-sm-11 {
    order: 11; }
  .order-sm-12 {
    order: 12; }
  .offset-sm-0 {
    margin-left: 0; }
  .offset-sm-1 {
    margin-left: 8.33333%; }
  .offset-sm-2 {
    margin-left: 16.66667%; }
  .offset-sm-3 {
    margin-left: 25%; }
  .offset-sm-4 {
    margin-left: 33.33333%; }
  .offset-sm-5 {
    margin-left: 41.66667%; }
  .offset-sm-6 {
    margin-left: 50%; }
  .offset-sm-7 {
    margin-left: 58.33333%; }
  .offset-sm-8 {
    margin-left: 66.66667%; }
  .offset-sm-9 {
    margin-left: 75%; }
  .offset-sm-10 {
    margin-left: 83.33333%; }
  .offset-sm-11 {
    margin-left: 91.66667%; } }

@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-md-first {
    order: -1; }
  .order-md-last {
    order: 13; }
  .order-md-0 {
    order: 0; }
  .order-md-1 {
    order: 1; }
  .order-md-2 {
    order: 2; }
  .order-md-3 {
    order: 3; }
  .order-md-4 {
    order: 4; }
  .order-md-5 {
    order: 5; }
  .order-md-6 {
    order: 6; }
  .order-md-7 {
    order: 7; }
  .order-md-8 {
    order: 8; }
  .order-md-9 {
    order: 9; }
  .order-md-10 {
    order: 10; }
  .order-md-11 {
    order: 11; }
  .order-md-12 {
    order: 12; }
  .offset-md-0 {
    margin-left: 0; }
  .offset-md-1 {
    margin-left: 8.33333%; }
  .offset-md-2 {
    margin-left: 16.66667%; }
  .offset-md-3 {
    margin-left: 25%; }
  .offset-md-4 {
    margin-left: 33.33333%; }
  .offset-md-5 {
    margin-left: 41.66667%; }
  .offset-md-6 {
    margin-left: 50%; }
  .offset-md-7 {
    margin-left: 58.33333%; }
  .offset-md-8 {
    margin-left: 66.66667%; }
  .offset-md-9 {
    margin-left: 75%; }
  .offset-md-10 {
    margin-left: 83.33333%; }
  .offset-md-11 {
    margin-left: 91.66667%; } }

@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-lg-first {
    order: -1; }
  .order-lg-last {
    order: 13; }
  .order-lg-0 {
    order: 0; }
  .order-lg-1 {
    order: 1; }
  .order-lg-2 {
    order: 2; }
  .order-lg-3 {
    order: 3; }
  .order-lg-4 {
    order: 4; }
  .order-lg-5 {
    order: 5; }
  .order-lg-6 {
    order: 6; }
  .order-lg-7 {
    order: 7; }
  .order-lg-8 {
    order: 8; }
  .order-lg-9 {
    order: 9; }
  .order-lg-10 {
    order: 10; }
  .order-lg-11 {
    order: 11; }
  .order-lg-12 {
    order: 12; }
  .offset-lg-0 {
    margin-left: 0; }
  .offset-lg-1 {
    margin-left: 8.33333%; }
  .offset-lg-2 {
    margin-left: 16.66667%; }
  .offset-lg-3 {
    margin-left: 25%; }
  .offset-lg-4 {
    margin-left: 33.33333%; }
  .offset-lg-5 {
    margin-left: 41.66667%; }
  .offset-lg-6 {
    margin-left: 50%; }
  .offset-lg-7 {
    margin-left: 58.33333%; }
  .offset-lg-8 {
    margin-left: 66.66667%; }
  .offset-lg-9 {
    margin-left: 75%; }
  .offset-lg-10 {
    margin-left: 83.33333%; }
  .offset-lg-11 {
    margin-left: 91.66667%; } }

@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-xl-first {
    order: -1; }
  .order-xl-last {
    order: 13; }
  .order-xl-0 {
    order: 0; }
  .order-xl-1 {
    order: 1; }
  .order-xl-2 {
    order: 2; }
  .order-xl-3 {
    order: 3; }
  .order-xl-4 {
    order: 4; }
  .order-xl-5 {
    order: 5; }
  .order-xl-6 {
    order: 6; }
  .order-xl-7 {
    order: 7; }
  .order-xl-8 {
    order: 8; }
  .order-xl-9 {
    order: 9; }
  .order-xl-10 {
    order: 10; }
  .order-xl-11 {
    order: 11; }
  .order-xl-12 {
    order: 12; }
  .offset-xl-0 {
    margin-left: 0; }
  .offset-xl-1 {
    margin-left: 8.33333%; }
  .offset-xl-2 {
    margin-left: 16.66667%; }
  .offset-xl-3 {
    margin-left: 25%; }
  .offset-xl-4 {
    margin-left: 33.33333%; }
  .offset-xl-5 {
    margin-left: 41.66667%; }
  .offset-xl-6 {
    margin-left: 50%; }
  .offset-xl-7 {
    margin-left: 58.33333%; }
  .offset-xl-8 {
    margin-left: 66.66667%; }
  .offset-xl-9 {
    margin-left: 75%; }
  .offset-xl-10 {
    margin-left: 83.33333%; }
  .offset-xl-11 {
    margin-left: 91.66667%; } }

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529; }
  .table th,
  .table td {
    padding: 0.75rem;
    vertical-align: top;
    border-top: 1px solid #dee2e6; }
  .table thead th {
    vertical-align: bottom;
    border-bottom: 2px solid #dee2e6; }
  .table tbody + tbody {
    border-top: 2px solid #dee2e6; }

.table-sm th,
.table-sm td {
  padding: 0.3rem; }

.table-bordered {
  border: 1px solid #dee2e6; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6; }
  .table-bordered thead th,
  .table-bordered thead td {
    border-bottom-width: 2px; }

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0; }

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05); }

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075); }

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8daff; }

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7abaff; }

.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-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb; }

.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-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e; }

.table-hover .table-success:hover {
  background-color: #b1dfbb; }
  .table-hover .table-success:hover > td,
  .table-hover .table-success:hover > th {
    background-color: #b1dfbb; }

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb; }

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda; }

.table-hover .table-info:hover {
  background-color: #abdde5; }
  .table-hover .table-info:hover > td,
  .table-hover .table-info:hover > th {
    background-color: #abdde5; }

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeeba; }

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e; }

.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-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e; }

.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-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc; }

.table-hover .table-light:hover {
  background-color: #ececf6; }
  .table-hover .table-light:hover > td,
  .table-hover .table-light:hover > th {
    background-color: #ececf6; }

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca; }

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c; }

.table-hover .table-dark:hover {
  background-color: #b9bbbe; }
  .table-hover .table-dark:hover > td,
  .table-hover .table-dark:hover > th {
    background-color: #b9bbbe; }

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(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: #343a40;
  border-color: #454d55; }

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6; }

.table-dark {
  color: #fff;
  background-color: #343a40; }
  .table-dark th,
  .table-dark td,
  .table-dark thead th {
    border-color: #454d55; }
  .table-dark.table-bordered {
    border: 0; }
  .table-dark.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.05); }
  .table-dark.table-hover tbody tr:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.075); }

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-sm > .table-bordered {
      border: 0; } }

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-md > .table-bordered {
      border: 0; } }

@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-lg > .table-bordered {
      border: 0; } }

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .table-responsive-xl > .table-bordered {
      border: 0; } }

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }
  .table-responsive > .table-bordered {
    border: 0; }

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .form-control {
      transition: none; } }
  .form-control::-ms-expand {
    background-color: transparent;
    border: 0; }
  .form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: #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:focus::-ms-value {
  color: #495057;
  background-color: #fff; }

.form-control-file,
.form-control-range {
  display: block;
  width: 100%; }

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5; }

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5; }

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5; }

.form-control-plaintext {
  display: block;
  width: 100%;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  margin-bottom: 0;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0; }
  .form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
    padding-right: 0;
    padding-left: 0; }

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

select.form-control[size], select.form-control[multiple] {
  height: auto; }

textarea.form-control {
  height: auto; }

.form-group {
  margin-bottom: 1rem; }

.form-text {
  display: block;
  margin-top: 0.25rem; }

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px; }
  .form-row > .col,
  .form-row > [class*="col-"] {
    padding-right: 5px;
    padding-left: 5px; }

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem; }

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem; }
  .form-check-input:disabled ~ .form-check-label {
    color: #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: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem; }

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .was-validated .form-control:valid:focus, .form-control.is-valid:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }
  .was-validated .form-control:valid ~ .valid-feedback,
  .was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,
  .form-control.is-valid ~ .valid-tooltip {
    display: block; }

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); }

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }
  .was-validated .custom-select:valid ~ .valid-feedback,
  .was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback,
  .custom-select.is-valid ~ .valid-tooltip {
    display: block; }

.was-validated .form-control-file:valid ~ .valid-feedback,
.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,
.form-control-file.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745; }

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745; }
  .was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
    border-color: #28a745; }

.was-validated .custom-control-input:valid ~ .valid-feedback,
.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,
.custom-control-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57; }

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745; }

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745; }

.was-validated .custom-file-input:valid ~ .valid-feedback,
.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback,
.custom-file-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545; }

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem; }

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
    border-color: #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 {
    display: block; }

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); }

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }
  .was-validated .custom-select:invalid ~ .invalid-feedback,
  .was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback,
  .custom-select.is-invalid ~ .invalid-tooltip {
    display: block; }

.was-validated .form-control-file:invalid ~ .invalid-feedback,
.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,
.form-control-file.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #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 {
    border-color: #dc3545; }

.was-validated .custom-control-input:invalid ~ .invalid-feedback,
.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,
.custom-control-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  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 0.2rem rgba(220, 53, 69, 0.25); }

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545; }

.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 ~ .invalid-feedback,
.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback,
.custom-file-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center; }
  .form-inline .form-check {
    width: 100%; }
  @media (min-width: 576px) {
    .form-inline label {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 0; }
    .form-inline .form-group {
      display: flex;
      flex: 0 0 auto;
      flex-flow: row wrap;
      align-items: center;
      margin-bottom: 0; }
    .form-inline .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .form-inline .form-control-plaintext {
      display: inline-block; }
    .form-inline .input-group,
    .form-inline .custom-select {
      width: auto; }
    .form-inline .form-check {
      display: flex;
      align-items: center;
      justify-content: center;
      width: auto;
      padding-left: 0; }
    .form-inline .form-check-input {
      position: relative;
      flex-shrink: 0;
      margin-top: 0;
      margin-right: 0.25rem;
      margin-left: 0; }
    .form-inline .custom-control {
      align-items: center;
      justify-content: center; }
    .form-inline .custom-control-label {
      margin-bottom: 0; } }

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .btn {
      transition: none; } }
  .btn:hover {
    color: #212529;
    text-decoration: none; }
  .btn:focus, .btn.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .btn.disabled, .btn:disabled {
    opacity: 0.65; }

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none; }

.btn-primary {
  color: #fff;
  background-color: #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(38, 143, 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(38, 143, 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(130, 138, 145, 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(130, 138, 145, 0.5); }

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745; }
  .btn-success:hover {
    color: #fff;
    background-color: #218838;
    border-color: #1e7e34; }
  .btn-success:focus, .btn-success.focus {
    box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5); }
  .btn-success.disabled, .btn-success:disabled {
    color: #fff;
    background-color: #28a745;
    border-color: #28a745; }
  .btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
  .show > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #1e7e34;
    border-color: #1c7430; }
    .btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
    .show > .btn-success.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5); }

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8; }
  .btn-info:hover {
    color: #fff;
    background-color: #138496;
    border-color: #117a8b; }
  .btn-info:focus, .btn-info.focus {
    box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5); }
  .btn-info.disabled, .btn-info:disabled {
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8; }
  .btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
  .show > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #117a8b;
    border-color: #10707f; }
    .btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
    .show > .btn-info.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5); }

.btn-warning {
  color: #212529;
  background-color: #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(222, 170, 12, 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(222, 170, 12, 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(225, 83, 97, 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(225, 83, 97, 0.5); }

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa; }
  .btn-light:hover {
    color: #212529;
    background-color: #e2e6ea;
    border-color: #dae0e5; }
  .btn-light:focus, .btn-light.focus {
    box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); }
  .btn-light.disabled, .btn-light:disabled {
    color: #212529;
    background-color: #f8f9fa;
    border-color: #f8f9fa; }
  .btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
  .show > .btn-light.dropdown-toggle {
    color: #212529;
    background-color: #dae0e5;
    border-color: #d3d9df; }
    .btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
    .show > .btn-light.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); }

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40; }
  .btn-dark:hover {
    color: #fff;
    background-color: #23272b;
    border-color: #1d2124; }
  .btn-dark:focus, .btn-dark.focus {
    box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); }
  .btn-dark.disabled, .btn-dark:disabled {
    color: #fff;
    background-color: #343a40;
    border-color: #343a40; }
  .btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
  .show > .btn-dark.dropdown-toggle {
    color: #fff;
    background-color: #1d2124;
    border-color: #171a1d; }
    .btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
    .show > .btn-dark.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); }

.btn-outline-primary {
  color: #007bff;
  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;
  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;
  border-color: #28a745; }
  .btn-outline-success:hover {
    color: #fff;
    background-color: #28a745;
    border-color: #28a745; }
  .btn-outline-success:focus, .btn-outline-success.focus {
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }
  .btn-outline-success.disabled, .btn-outline-success:disabled {
    color: #28a745;
    background-color: transparent; }
  .btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
  .show > .btn-outline-success.dropdown-toggle {
    color: #fff;
    background-color: #28a745;
    border-color: #28a745; }
    .btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-success.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8; }
  .btn-outline-info:hover {
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8; }
  .btn-outline-info:focus, .btn-outline-info.focus {
    box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }
  .btn-outline-info.disabled, .btn-outline-info:disabled {
    color: #17a2b8;
    background-color: transparent; }
  .btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
  .show > .btn-outline-info.dropdown-toggle {
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8; }
    .btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-info.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }

.btn-outline-warning {
  color: #ffc107;
  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;
  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;
  border-color: #f8f9fa; }
  .btn-outline-light:hover {
    color: #212529;
    background-color: #f8f9fa;
    border-color: #f8f9fa; }
  .btn-outline-light:focus, .btn-outline-light.focus {
    box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }
  .btn-outline-light.disabled, .btn-outline-light:disabled {
    color: #f8f9fa;
    background-color: transparent; }
  .btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
  .show > .btn-outline-light.dropdown-toggle {
    color: #212529;
    background-color: #f8f9fa;
    border-color: #f8f9fa; }
    .btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-light.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40; }
  .btn-outline-dark:hover {
    color: #fff;
    background-color: #343a40;
    border-color: #343a40; }
  .btn-outline-dark:focus, .btn-outline-dark.focus {
    box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }
  .btn-outline-dark.disabled, .btn-outline-dark:disabled {
    color: #343a40;
    background-color: transparent; }
  .btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
  .show > .btn-outline-dark.dropdown-toggle {
    color: #fff;
    background-color: #343a40;
    border-color: #343a40; }
    .btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-dark.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none; }
  .btn-link:hover {
    color: #0056b3;
    text-decoration: underline; }
  .btn-link:focus, .btn-link.focus {
    text-decoration: underline;
    box-shadow: none; }
  .btn-link:disabled, .btn-link.disabled {
    color: #6c757d;
    pointer-events: none; }

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.btn-block {
  display: block;
  width: 100%; }
  .btn-block + .btn-block {
    margin-top: 0.5rem; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.fade {
  transition: opacity 0.15s linear; }
  @media (prefers-reduced-motion: reduce) {
    .fade {
      transition: none; } }
  .fade:not(.show) {
    opacity: 0; }

.collapse:not(.in) {
  display: none; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease; }
  @media (prefers-reduced-motion: reduce) {
    .collapsing {
      transition: none; } }

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative; }

.dropdown-toggle {
  white-space: nowrap; }
  .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent; }
  .dropdown-toggle:empty::after {
    margin-left: 0; }

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem; }

.dropdown-menu-left {
  right: auto;
  left: 0; }

.dropdown-menu-right {
  right: 0;
  left: auto; }

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0; }
  .dropdown-menu-sm-right {
    right: 0;
    left: auto; } }

@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0; }
  .dropdown-menu-md-right {
    right: 0;
    left: auto; } }

@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0; }
  .dropdown-menu-lg-right {
    right: 0;
    left: auto; } }

@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0; }
  .dropdown-menu-xl-right {
    right: 0;
    left: auto; } }

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem; }

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent; }

.dropup .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem; }

.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid; }

.dropright .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropright .dropdown-toggle::after {
  vertical-align: 0; }

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem; }

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: ""; }

.dropleft .dropdown-toggle::after {
  display: none; }

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent; }

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropleft .dropdown-toggle::before {
  vertical-align: 0; }

.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto; }

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef; }

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0; }
  .dropdown-item:hover, .dropdown-item:focus {
    color: #16181b;
    text-decoration: none;
    background-color: #f8f9fa; }
  .dropdown-item.active, .dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: #007bff; }
  .dropdown-item.disabled, .dropdown-item:disabled {
    color: #6c757d;
    pointer-events: none;
    background-color: transparent; }

.dropdown-menu.show {
  display: block; }

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap; }

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529; }

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle; }
  .btn-group > .btn,
  .btn-group-vertical > .btn {
    position: relative;
    flex: 1 1 auto; }
    .btn-group > .btn:hover,
    .btn-group-vertical > .btn:hover {
      z-index: 1; }
    .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
    .btn-group-vertical > .btn:focus,
    .btn-group-vertical > .btn:active,
    .btn-group-vertical > .btn.active {
      z-index: 1; }

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start; }
  .btn-toolbar .input-group {
    width: auto; }

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px; }

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem; }
  .dropdown-toggle-split::after,
  .dropup .dropdown-toggle-split::after,
  .dropright .dropdown-toggle-split::after {
    margin-left: 0; }
  .dropleft .dropdown-toggle-split::before {
    margin-right: 0; }

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem; }

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem; }

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center; }
  .btn-group-vertical > .btn,
  .btn-group-vertical > .btn-group {
    width: 100%; }
  .btn-group-vertical > .btn:not(:first-child),
  .btn-group-vertical > .btn-group:not(:first-child) {
    margin-top: -1px; }
  .btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
  .btn-group-vertical > .btn-group:not(:last-child) > .btn {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; }
  .btn-group-vertical > .btn:not(:first-child),
  .btn-group-vertical > .btn-group:not(:first-child) > .btn {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0; }
  .btn-group-toggle > .btn input[type="radio"],
  .btn-group-toggle > .btn input[type="checkbox"],
  .btn-group-toggle > .btn-group > .btn input[type="radio"],
  .btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none; }

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%; }
  .input-group > .form-control,
  .input-group > .form-control-plaintext,
  .input-group > .custom-select,
  .input-group > .custom-file {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    margin-bottom: 0; }
    .input-group > .form-control + .form-control,
    .input-group > .form-control + .custom-select,
    .input-group > .form-control + .custom-file,
    .input-group > .form-control-plaintext + .form-control,
    .input-group > .form-control-plaintext + .custom-select,
    .input-group > .form-control-plaintext + .custom-file,
    .input-group > .custom-select + .form-control,
    .input-group > .custom-select + .custom-select,
    .input-group > .custom-select + .custom-file,
    .input-group > .custom-file + .form-control,
    .input-group > .custom-file + .custom-select,
    .input-group > .custom-file + .custom-file {
      margin-left: -1px; }
  .input-group > .form-control:focus,
  .input-group > .custom-select:focus,
  .input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
    z-index: 3; }
  .input-group > .custom-file .custom-file-input:focus {
    z-index: 4; }
  .input-group > .form-control:not(:last-child),
  .input-group > .custom-select:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .input-group > .form-control:not(:first-child),
  .input-group > .custom-select:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
  .input-group > .custom-file {
    display: flex;
    align-items: center; }
    .input-group > .custom-file:not(:last-child) .custom-file-label,
    .input-group > .custom-file:not(:last-child) .custom-file-label::after {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0; }
    .input-group > .custom-file:not(:first-child) .custom-file-label {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0; }

.input-group-prepend,
.input-group-append {
  display: flex; }
  .input-group-prepend .btn,
  .input-group-append .btn {
    position: relative;
    z-index: 2; }
    .input-group-prepend .btn:focus,
    .input-group-append .btn:focus {
      z-index: 3; }
  .input-group-prepend .btn + .btn,
  .input-group-prepend .btn + .input-group-text,
  .input-group-prepend .input-group-text + .input-group-text,
  .input-group-prepend .input-group-text + .btn,
  .input-group-append .btn + .btn,
  .input-group-append .btn + .input-group-text,
  .input-group-append .input-group-text + .input-group-text,
  .input-group-append .input-group-text + .btn {
    margin-left: -1px; }

.input-group-prepend {
  margin-right: -1px; }

.input-group-append {
  margin-left: -1px; }

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem; }
  .input-group-text input[type="radio"],
  .input-group-text input[type="checkbox"] {
    margin-top: 0; }

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px); }

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px); }

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem; }

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.custom-control {
  position: relative;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem; }

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem; }

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0; }
  .custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: #007bff;
    background-color: #007bff; }
  .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #80bdff; }
  .custom-control-input:not(:disabled):active ~ .custom-control-label::before {
    color: #fff;
    background-color: #b3d7ff;
    border-color: #b3d7ff; }
  .custom-control-input:disabled ~ .custom-control-label {
    color: #6c757d; }
    .custom-control-input:disabled ~ .custom-control-label::before {
      background-color: #e9ecef; }

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top; }
  .custom-control-label::before {
    position: absolute;
    top: 0.25rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    pointer-events: none;
    content: "";
    background-color: #fff;
    border: #adb5bd solid 1px; }
  .custom-control-label::after {
    position: absolute;
    top: 0.25rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    content: "";
    background: no-repeat 50% / 50% 50%; }

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem; }

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e"); }

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff; }

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e"); }

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(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::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); }

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.custom-switch {
  padding-left: 2.25rem; }
  .custom-switch .custom-control-label::before {
    left: -2.25rem;
    width: 1.75rem;
    pointer-events: all;
    border-radius: 0.5rem; }
  .custom-switch .custom-control-label::after {
    top: calc(0.25rem + 2px);
    left: calc(-2.25rem + 2px);
    width: calc(1rem - 4px);
    height: calc(1rem - 4px);
    background-color: #adb5bd;
    border-radius: 0.5rem;
    transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
    @media (prefers-reduced-motion: reduce) {
      .custom-switch .custom-control-label::after {
        transition: none; } }
  .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
    background-color: #fff;
    transform: translateX(0.75rem); }
  .custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(0, 123, 255, 0.5); }

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none; }
  .custom-select:focus {
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-select:focus::-ms-value {
      color: #495057;
      background-color: #fff; }
  .custom-select[multiple], .custom-select[size]:not([size="1"]) {
    height: auto;
    padding-right: 0.75rem;
    background-image: none; }
  .custom-select:disabled {
    color: #6c757d;
    background-color: #e9ecef; }
  .custom-select::-ms-expand {
    display: none; }

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem; }

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem; }

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0; }

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  opacity: 0; }
  .custom-file-input:focus ~ .custom-file-label {
    border-color: #80bdff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .custom-file-input:disabled ~ .custom-file-label {
    background-color: #e9ecef; }
  .custom-file-input:lang(en) ~ .custom-file-label::after {
    content: "Browse"; }
  .custom-file-input ~ .custom-file-label[data-browse]::after {
    content: attr(data-browse); }

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem; }
  .custom-file-label::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    display: block;
    height: calc(1.5em + 0.75rem);
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    color: #495057;
    content: "Browse";
    background-color: #e9ecef;
    border-left: inherit;
    border-radius: 0 0.25rem 0.25rem 0; }

.custom-range {
  width: 100%;
  height: calc(1rem + 0.4rem);
  padding: 0;
  background-color: transparent;
  appearance: none; }
  .custom-range:focus {
    outline: none; }
    .custom-range:focus::-webkit-slider-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-range:focus::-moz-range-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .custom-range:focus::-ms-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .custom-range::-moz-focus-outer {
    border: 0; }
  .custom-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    appearance: none; }
    @media (prefers-reduced-motion: reduce) {
      .custom-range::-webkit-slider-thumb {
        transition: none; } }
    .custom-range::-webkit-slider-thumb:active {
      background-color: #b3d7ff; }
  .custom-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem; }
  .custom-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    appearance: none; }
    @media (prefers-reduced-motion: reduce) {
      .custom-range::-moz-range-thumb {
        transition: none; } }
    .custom-range::-moz-range-thumb:active {
      background-color: #b3d7ff; }
  .custom-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem; }
  .custom-range::-ms-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: 0;
    margin-right: 0.2rem;
    margin-left: 0.2rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    appearance: none; }
    @media (prefers-reduced-motion: reduce) {
      .custom-range::-ms-thumb {
        transition: none; } }
    .custom-range::-ms-thumb:active {
      background-color: #b3d7ff; }
  .custom-range::-ms-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: transparent;
    border-color: transparent;
    border-width: 0.5rem; }
  .custom-range::-ms-fill-lower {
    background-color: #dee2e6;
    border-radius: 1rem; }
  .custom-range::-ms-fill-upper {
    margin-right: 15px;
    background-color: #dee2e6;
    border-radius: 1rem; }
  .custom-range:disabled::-webkit-slider-thumb {
    background-color: #adb5bd; }
  .custom-range:disabled::-webkit-slider-runnable-track {
    cursor: default; }
  .custom-range:disabled::-moz-range-thumb {
    background-color: #adb5bd; }
  .custom-range:disabled::-moz-range-track {
    cursor: default; }
  .custom-range:disabled::-ms-thumb {
    background-color: #adb5bd; }

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .custom-control-label::before,
    .custom-file-label,
    .custom-select {
      transition: none; } }

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }

.nav-link {
  display: block;
  padding: 0.5rem 1rem; }
  .nav-link:hover, .nav-link:focus {
    text-decoration: none; }
  .nav-link.disabled {
    color: #6c757d;
    pointer-events: none;
    cursor: default; }

.nav-tabs {
  border-bottom: 1px solid #dee2e6; }
  .nav-tabs .nav-item {
    margin-bottom: -1px; }
  .nav-tabs .nav-link {
    border: 1px solid transparent;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
    .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
      border-color: #e9ecef #e9ecef #dee2e6; }
    .nav-tabs .nav-link.disabled {
      color: #6c757d;
      background-color: transparent;
      border-color: transparent; }
  .nav-tabs .nav-link.active,
  .nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff; }
  .nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

.nav-pills .nav-link {
  border-radius: 0.25rem; }

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #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;
  padding-bottom: 0;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap; }
  .navbar-brand:hover, .navbar-brand:focus {
    text-decoration: none; }

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }
  .navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0; }
  .navbar-nav .dropdown-menu {
    position: static;
    float: none; }

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem; }

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center; }

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem; }
  .navbar-toggler:hover, .navbar-toggler:focus {
    text-decoration: none; }

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: no-repeat center center;
  background-size: 100% 100%; }

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-sm .navbar-nav {
      flex-direction: row; }
      .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-sm > .container,
    .navbar-expand-sm > .container-fluid {
      flex-wrap: nowrap; }
    .navbar-expand-sm .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-sm .navbar-toggler {
      display: none; } }

@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-md .navbar-nav {
      flex-direction: row; }
      .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-md .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-md > .container,
    .navbar-expand-md > .container-fluid {
      flex-wrap: nowrap; }
    .navbar-expand-md .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-md .navbar-toggler {
      display: none; } }

@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-lg .navbar-nav {
      flex-direction: row; }
      .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-lg > .container,
    .navbar-expand-lg > .container-fluid {
      flex-wrap: nowrap; }
    .navbar-expand-lg .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-lg .navbar-toggler {
      display: none; } }

@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-xl .navbar-nav {
      flex-direction: row; }
      .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-xl > .container,
    .navbar-expand-xl > .container-fluid {
      flex-wrap: nowrap; }
    .navbar-expand-xl .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-xl .navbar-toggler {
      display: none; } }

.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start; }
  .navbar-expand > .container,
  .navbar-expand > .container-fluid {
    padding-right: 0;
    padding-left: 0; }
  .navbar-expand .navbar-nav {
    flex-direction: row; }
    .navbar-expand .navbar-nav .dropdown-menu {
      position: absolute; }
    .navbar-expand .navbar-nav .nav-link {
      padding-right: 0.5rem;
      padding-left: 0.5rem; }
  .navbar-expand > .container,
  .navbar-expand > .container-fluid {
    flex-wrap: nowrap; }
  .navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto; }
  .navbar-expand .navbar-toggler {
    display: none; }

.navbar-light .navbar-brand {
  color: rgba(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,%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,%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:not(:last-child) {
          border-top-right-radius: 0;
          border-bottom-right-radius: 0; }
          .card-group > .card:not(:last-child) .card-img-top,
          .card-group > .card:not(:last-child) .card-header {
            border-top-right-radius: 0; }
          .card-group > .card:not(:last-child) .card-img-bottom,
          .card-group > .card:not(:last-child) .card-footer {
            border-bottom-right-radius: 0; }
        .card-group > .card:not(:first-child) {
          border-top-left-radius: 0;
          border-bottom-left-radius: 0; }
          .card-group > .card:not(:first-child) .card-img-top,
          .card-group > .card:not(:first-child) .card-header {
            border-top-left-radius: 0; }
          .card-group > .card:not(:first-child) .card-img-bottom,
          .card-group > .card:not(:first-child) .card-footer {
            border-bottom-left-radius: 0; } }

.card-columns .card {
  margin-bottom: 0.75rem; }

@media (min-width: 576px) {
  .card-columns {
    column-count: 3;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1; }
    .card-columns .card {
      display: inline-block;
      width: 100%; } }

.accordion > .card {
  overflow: hidden; }
  .accordion > .card:not(:first-of-type) .card-header:first-child {
    border-radius: 0; }
  .accordion > .card:not(:first-of-type):not(:last-of-type) {
    border-bottom: 0;
    border-radius: 0; }
  .accordion > .card:first-of-type {
    border-bottom: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; }
  .accordion > .card:last-of-type {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }
  .accordion > .card .card-header {
    margin-bottom: -1px; }

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem; }

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem; }
  .breadcrumb-item + .breadcrumb-item::before {
    display: inline-block;
    padding-right: 0.5rem;
    color: #6c757d;
    content: "/"; }

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline; }

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none; }

.breadcrumb-item.active {
  color: #6c757d; }

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem; }

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6; }
  .page-link:hover {
    z-index: 2;
    color: #0056b3;
    text-decoration: none;
    background-color: #e9ecef;
    border-color: #dee2e6; }
  .page-link:focus {
    z-index: 2;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.page-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;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .badge {
      transition: none; } }
  a.badge:hover, a.badge:focus {
    text-decoration: none; }
  .badge:empty {
    display: none; }

.btn .badge {
  position: relative;
  top: -1px; }

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem; }

.badge-primary {
  color: #fff;
  background-color: #007bff; }
  a.badge-primary:hover, a.badge-primary:focus {
    color: #fff;
    background-color: #0062cc; }
  a.badge-primary:focus, a.badge-primary.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }

.badge-secondary {
  color: #fff;
  background-color: #6c757d; }
  a.badge-secondary:hover, a.badge-secondary:focus {
    color: #fff;
    background-color: #545b62; }
  a.badge-secondary:focus, a.badge-secondary.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

.badge-success {
  color: #fff;
  background-color: #28a745; }
  a.badge-success:hover, a.badge-success:focus {
    color: #fff;
    background-color: #1e7e34; }
  a.badge-success:focus, a.badge-success.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }

.badge-info {
  color: #fff;
  background-color: #17a2b8; }
  a.badge-info:hover, a.badge-info:focus {
    color: #fff;
    background-color: #117a8b; }
  a.badge-info:focus, a.badge-info.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }

.badge-warning {
  color: #212529;
  background-color: #ffc107; }
  a.badge-warning:hover, a.badge-warning:focus {
    color: #212529;
    background-color: #d39e00; }
  a.badge-warning:focus, a.badge-warning.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }

.badge-danger {
  color: #fff;
  background-color: #dc3545; }
  a.badge-danger:hover, a.badge-danger:focus {
    color: #fff;
    background-color: #bd2130; }
  a.badge-danger:focus, a.badge-danger.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.badge-light {
  color: #212529;
  background-color: #f8f9fa; }
  a.badge-light:hover, a.badge-light:focus {
    color: #212529;
    background-color: #dae0e5; }
  a.badge-light:focus, a.badge-light.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }

.badge-dark {
  color: #fff;
  background-color: #343a40; }
  a.badge-dark:hover, a.badge-dark:focus {
    color: #fff;
    background-color: #1d2124; }
  a.badge-dark:focus, a.badge-dark.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem; }
  @media (min-width: 576px) {
    .jumbotron {
      padding: 4rem 2rem; } }

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0; }

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem; }

.alert-heading {
  color: inherit; }

.alert-link {
  font-weight: 700; }

.alert-dismissible {
  padding-right: 4rem; }
  .alert-dismissible .close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.75rem 1.25rem;
    color: inherit; }

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff; }
  .alert-primary hr {
    border-top-color: #9fcdff; }
  .alert-primary .alert-link {
    color: #002752; }

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db; }
  .alert-secondary hr {
    border-top-color: #c8cbcf; }
  .alert-secondary .alert-link {
    color: #202326; }

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb; }
  .alert-success hr {
    border-top-color: #b1dfbb; }
  .alert-success .alert-link {
    color: #0b2e13; }

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb; }
  .alert-info hr {
    border-top-color: #abdde5; }
  .alert-info .alert-link {
    color: #062c33; }

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba; }
  .alert-warning hr {
    border-top-color: #ffe8a1; }
  .alert-warning .alert-link {
    color: #533f03; }

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb; }
  .alert-danger hr {
    border-top-color: #f1b0b7; }
  .alert-danger .alert-link {
    color: #491217; }

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe; }
  .alert-light hr {
    border-top-color: #ececf6; }
  .alert-light .alert-link {
    color: #686868; }

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca; }
  .alert-dark hr {
    border-top-color: #b9bbbe; }
  .alert-dark .alert-link {
    color: #040505; }

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0; }
  to {
    background-position: 0 0; } }

.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem; }

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease; }
  @media (prefers-reduced-motion: reduce) {
    .progress-bar {
      transition: none; } }

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem; }

.progress-bar-animated {
  animation: progress-bar-stripes 1s linear infinite; }
  @media (prefers-reduced-motion: reduce) {
    .progress-bar-animated {
      animation: none; } }

.media {
  display: flex;
  align-items: flex-start; }

.media-body {
  flex: 1; }

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0; }

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit; }
  .list-group-item-action:hover, .list-group-item-action:focus {
    z-index: 1;
    color: #495057;
    text-decoration: none;
    background-color: #f8f9fa; }
  .list-group-item-action:active {
    color: #212529;
    background-color: #e9ecef; }

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid rgba(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.disabled, .list-group-item:disabled {
    color: #6c757d;
    pointer-events: none;
    background-color: #fff; }
  .list-group-item.active {
    z-index: 2;
    color: #fff;
    background-color: #007bff;
    border-color: #007bff; }

.list-group-horizontal {
  flex-direction: row; }
  .list-group-horizontal .list-group-item {
    margin-right: -1px;
    margin-bottom: 0; }
    .list-group-horizontal .list-group-item:first-child {
      border-top-left-radius: 0.25rem;
      border-bottom-left-radius: 0.25rem;
      border-top-right-radius: 0; }
    .list-group-horizontal .list-group-item:last-child {
      margin-right: 0;
      border-top-right-radius: 0.25rem;
      border-bottom-right-radius: 0.25rem;
      border-bottom-left-radius: 0; }

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row; }
    .list-group-horizontal-sm .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-sm .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-sm .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row; }
    .list-group-horizontal-md .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-md .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-md .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row; }
    .list-group-horizontal-lg .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-lg .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-lg .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row; }
    .list-group-horizontal-xl .list-group-item {
      margin-right: -1px;
      margin-bottom: 0; }
      .list-group-horizontal-xl .list-group-item:first-child {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0; }
      .list-group-horizontal-xl .list-group-item:last-child {
        margin-right: 0;
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0; } }

.list-group-flush .list-group-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0; }
  .list-group-flush .list-group-item:last-child {
    margin-bottom: -1px; }

.list-group-flush:first-child .list-group-item:first-child {
  border-top: 0; }

.list-group-flush:last-child .list-group-item:last-child {
  margin-bottom: 0;
  border-bottom: 0; }

.list-group-item-primary {
  color: #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 {
    color: #000;
    text-decoration: none; }
  .close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
    opacity: .75; }

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
  appearance: none; }

a.close.disabled {
  pointer-events: none; }

.toast {
  max-width: 350px;
  overflow: hidden;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(10px);
  opacity: 0;
  border-radius: 0.25rem; }
  .toast:not(:last-child) {
    margin-bottom: 0.75rem; }
  .toast.showing {
    opacity: 1; }
  .toast.show {
    display: block;
    opacity: 1; }
  .toast.hide {
    display: none; }

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05); }

.toast-body {
  padding: 0.75rem; }

.modal-open {
  overflow: hidden; }
  .modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto; }

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none; }
  .modal.fade .modal-dialog {
    transition: transform 0.3s ease-out;
    transform: translate(0, -50px); }
    @media (prefers-reduced-motion: reduce) {
      .modal.fade .modal-dialog {
        transition: none; } }
  .modal.show .modal-dialog {
    transform: none; }

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem); }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 1rem);
    overflow: hidden; }
  .modal-dialog-scrollable .modal-header,
  .modal-dialog-scrollable .modal-footer {
    flex-shrink: 0; }
  .modal-dialog-scrollable .modal-body {
    overflow-y: auto; }

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem); }
  .modal-dialog-centered::before {
    display: block;
    height: calc(100vh - 1rem);
    content: ""; }
  .modal-dialog-centered.modal-dialog-scrollable {
    flex-direction: column;
    justify-content: center;
    height: 100%; }
    .modal-dialog-centered.modal-dialog-scrollable .modal-content {
      max-height: none; }
    .modal-dialog-centered.modal-dialog-scrollable::before {
      content: none; }

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0; }

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #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 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem; }
  .modal-header .close {
    padding: 1rem 1rem;
    margin: -1rem -1rem -1rem auto; }

.modal-title {
  margin-bottom: 0;
  line-height: 1.5; }

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem; }

.modal-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 1rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem; }
  .modal-footer > :not(:first-child) {
    margin-left: .25rem; }
  .modal-footer > :not(:last-child) {
    margin-right: .25rem; }

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll; }

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto; }
  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem); }
    .modal-dialog-scrollable .modal-content {
      max-height: calc(100vh - 3.5rem); }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem); }
    .modal-dialog-centered::before {
      height: calc(100vh - 3.5rem); }
  .modal-sm {
    max-width: 300px; } }

@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px; } }

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px; } }

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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 {
      bottom: 0;
      border-width: 0.5rem 0.5rem 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-width: 0.5rem 0.5rem 0;
      border-top-color: #fff; }

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem; }
  .bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
    left: calc((0.5rem + 1px) * -1);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0; }
    .bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
      left: 0;
      border-width: 0.5rem 0.5rem 0.5rem 0;
      border-right-color: rgba(0, 0, 0, 0.25); }
    .bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
      left: 1px;
      border-width: 0.5rem 0.5rem 0.5rem 0;
      border-right-color: #fff; }

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem; }
  .bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
    top: calc((0.5rem + 1px) * -1); }
    .bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
      top: 0;
      border-width: 0 0.5rem 0.5rem 0.5rem;
      border-bottom-color: rgba(0, 0, 0, 0.25); }
    .bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
      top: 1px;
      border-width: 0 0.5rem 0.5rem 0.5rem;
      border-bottom-color: #fff; }
  .bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 1rem;
    margin-left: -0.5rem;
    content: "";
    border-bottom: 1px solid #f7f7f7; }

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem; }
  .bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
    right: calc((0.5rem + 1px) * -1);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0; }
    .bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
      right: 0;
      border-width: 0.5rem 0 0.5rem 0.5rem;
      border-left-color: rgba(0, 0, 0, 0.25); }
    .bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
      right: 1px;
      border-width: 0.5rem 0 0.5rem 0.5rem;
      border-left-color: #fff; }

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px); }
  .popover-header:empty {
    display: none; }

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529; }

.carousel {
  position: relative; }

.carousel.pointer-event {
  touch-action: pan-y; }

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden; }
  .carousel-inner::after {
    display: block;
    clear: both;
    content: ""; }

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .carousel-item {
      transition: none; } }

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block; }

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%); }

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%); }

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none; }

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1; }

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: 0s 0.6s opacity; }
  @media (prefers-reduced-motion: reduce) {
    .carousel-fade .active.carousel-item-left,
    .carousel-fade .active.carousel-item-right {
      transition: none; } }

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease; }
  @media (prefers-reduced-motion: reduce) {
    .carousel-control-prev,
    .carousel-control-next {
      transition: none; } }
  .carousel-control-prev:hover, .carousel-control-prev:focus,
  .carousel-control-next:hover,
  .carousel-control-next:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: 0.9; }

.carousel-control-prev {
  left: 0; }

.carousel-control-next {
  right: 0; }

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat 50% / 100% 100%; }

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e"); }

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e"); }

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none; }
  .carousel-indicators li {
    box-sizing: content-box;
    flex: 0 1 auto;
    width: 30px;
    height: 3px;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    cursor: pointer;
    background-color: #fff;
    background-clip: padding-box;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    opacity: .5;
    transition: opacity 0.6s ease; }
    @media (prefers-reduced-motion: reduce) {
      .carousel-indicators li {
        transition: none; } }
  .carousel-indicators .active {
    opacity: 1; }

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center; }

@keyframes spinner-border {
  to {
    transform: rotate(360deg); } }

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: spinner-border .75s linear infinite; }

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em; }

@keyframes spinner-grow {
  0% {
    transform: scale(0); }
  50% {
    opacity: 1; } }

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: spinner-grow .75s linear infinite; }

.spinner-grow-sm {
  width: 1rem;
  height: 1rem; }

.align-baseline {
  vertical-align: baseline !important; }

.align-top {
  vertical-align: top !important; }

.align-middle {
  vertical-align: middle !important; }

.align-bottom {
  vertical-align: bottom !important; }

.align-text-bottom {
  vertical-align: text-bottom !important; }

.align-text-top {
  vertical-align: text-top !important; }

.bg-primary {
  background-color: #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-sm {
  border-radius: 0.2rem !important; }

.rounded {
  border-radius: 0.25rem !important; }

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important; }

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important; }

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important; }

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important; }

.rounded-lg {
  border-radius: 0.3rem !important; }

.rounded-circle {
  border-radius: 50% !important; }

.rounded-pill {
  border-radius: 50rem !important; }

.rounded-0 {
  border-radius: 0 !important; }

.clearfix::after {
  display: block;
  clear: both;
  content: ""; }

.d-none {
  display: none !important; }

.d-inline {
  display: inline !important; }

.d-inline-block {
  display: inline-block !important; }

.d-block {
  display: block !important; }

.d-table {
  display: table !important; }

.d-table-row {
  display: table-row !important; }

.d-table-cell {
  display: table-cell !important; }

.d-flex {
  display: flex !important; }

.d-inline-flex {
  display: inline-flex !important; }

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important; }
  .d-sm-inline {
    display: inline !important; }
  .d-sm-inline-block {
    display: inline-block !important; }
  .d-sm-block {
    display: block !important; }
  .d-sm-table {
    display: table !important; }
  .d-sm-table-row {
    display: table-row !important; }
  .d-sm-table-cell {
    display: table-cell !important; }
  .d-sm-flex {
    display: flex !important; }
  .d-sm-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 768px) {
  .d-md-none {
    display: none !important; }
  .d-md-inline {
    display: inline !important; }
  .d-md-inline-block {
    display: inline-block !important; }
  .d-md-block {
    display: block !important; }
  .d-md-table {
    display: table !important; }
  .d-md-table-row {
    display: table-row !important; }
  .d-md-table-cell {
    display: table-cell !important; }
  .d-md-flex {
    display: flex !important; }
  .d-md-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 992px) {
  .d-lg-none {
    display: none !important; }
  .d-lg-inline {
    display: inline !important; }
  .d-lg-inline-block {
    display: inline-block !important; }
  .d-lg-block {
    display: block !important; }
  .d-lg-table {
    display: table !important; }
  .d-lg-table-row {
    display: table-row !important; }
  .d-lg-table-cell {
    display: table-cell !important; }
  .d-lg-flex {
    display: flex !important; }
  .d-lg-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important; }
  .d-xl-inline {
    display: inline !important; }
  .d-xl-inline-block {
    display: inline-block !important; }
  .d-xl-block {
    display: block !important; }
  .d-xl-table {
    display: table !important; }
  .d-xl-table-row {
    display: table-row !important; }
  .d-xl-table-cell {
    display: table-cell !important; }
  .d-xl-flex {
    display: flex !important; }
  .d-xl-inline-flex {
    display: inline-flex !important; } }

@media print {
  .d-print-none {
    display: none !important; }
  .d-print-inline {
    display: inline !important; }
  .d-print-inline-block {
    display: inline-block !important; }
  .d-print-block {
    display: block !important; }
  .d-print-table {
    display: table !important; }
  .d-print-table-row {
    display: table-row !important; }
  .d-print-table-cell {
    display: table-cell !important; }
  .d-print-flex {
    display: flex !important; }
  .d-print-inline-flex {
    display: inline-flex !important; } }

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden; }
  .embed-responsive::before {
    display: block;
    content: ""; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-21by9::before {
  padding-top: 42.85714%; }

.embed-responsive-16by9::before {
  padding-top: 56.25%; }

.embed-responsive-4by3::before {
  padding-top: 75%; }

.embed-responsive-1by1::before {
  padding-top: 100%; }

.flex-row {
  flex-direction: row !important; }

.flex-column {
  flex-direction: column !important; }

.flex-row-reverse {
  flex-direction: row-reverse !important; }

.flex-column-reverse {
  flex-direction: column-reverse !important; }

.flex-wrap {
  flex-wrap: wrap !important; }

.flex-nowrap {
  flex-wrap: nowrap !important; }

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important; }

.flex-fill {
  flex: 1 1 auto !important; }

.flex-grow-0 {
  flex-grow: 0 !important; }

.flex-grow-1 {
  flex-grow: 1 !important; }

.flex-shrink-0 {
  flex-shrink: 0 !important; }

.flex-shrink-1 {
  flex-shrink: 1 !important; }

.justify-content-start {
  justify-content: flex-start !important; }

.justify-content-end {
  justify-content: flex-end !important; }

.justify-content-center {
  justify-content: center !important; }

.justify-content-between {
  justify-content: space-between !important; }

.justify-content-around {
  justify-content: space-around !important; }

.align-items-start {
  align-items: flex-start !important; }

.align-items-end {
  align-items: flex-end !important; }

.align-items-center {
  align-items: center !important; }

.align-items-baseline {
  align-items: baseline !important; }

.align-items-stretch {
  align-items: stretch !important; }

.align-content-start {
  align-content: flex-start !important; }

.align-content-end {
  align-content: flex-end !important; }

.align-content-center {
  align-content: center !important; }

.align-content-between {
  align-content: space-between !important; }

.align-content-around {
  align-content: space-around !important; }

.align-content-stretch {
  align-content: stretch !important; }

.align-self-auto {
  align-self: auto !important; }

.align-self-start {
  align-self: flex-start !important; }

.align-self-end {
  align-self: flex-end !important; }

.align-self-center {
  align-self: center !important; }

.align-self-baseline {
  align-self: baseline !important; }

.align-self-stretch {
  align-self: stretch !important; }

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important; }
  .flex-sm-column {
    flex-direction: column !important; }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-sm-wrap {
    flex-wrap: wrap !important; }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important; }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-sm-fill {
    flex: 1 1 auto !important; }
  .flex-sm-grow-0 {
    flex-grow: 0 !important; }
  .flex-sm-grow-1 {
    flex-grow: 1 !important; }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-sm-start {
    justify-content: flex-start !important; }
  .justify-content-sm-end {
    justify-content: flex-end !important; }
  .justify-content-sm-center {
    justify-content: center !important; }
  .justify-content-sm-between {
    justify-content: space-between !important; }
  .justify-content-sm-around {
    justify-content: space-around !important; }
  .align-items-sm-start {
    align-items: flex-start !important; }
  .align-items-sm-end {
    align-items: flex-end !important; }
  .align-items-sm-center {
    align-items: center !important; }
  .align-items-sm-baseline {
    align-items: baseline !important; }
  .align-items-sm-stretch {
    align-items: stretch !important; }
  .align-content-sm-start {
    align-content: flex-start !important; }
  .align-content-sm-end {
    align-content: flex-end !important; }
  .align-content-sm-center {
    align-content: center !important; }
  .align-content-sm-between {
    align-content: space-between !important; }
  .align-content-sm-around {
    align-content: space-around !important; }
  .align-content-sm-stretch {
    align-content: stretch !important; }
  .align-self-sm-auto {
    align-self: auto !important; }
  .align-self-sm-start {
    align-self: flex-start !important; }
  .align-self-sm-end {
    align-self: flex-end !important; }
  .align-self-sm-center {
    align-self: center !important; }
  .align-self-sm-baseline {
    align-self: baseline !important; }
  .align-self-sm-stretch {
    align-self: stretch !important; } }

@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important; }
  .flex-md-column {
    flex-direction: column !important; }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-md-wrap {
    flex-wrap: wrap !important; }
  .flex-md-nowrap {
    flex-wrap: nowrap !important; }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-md-fill {
    flex: 1 1 auto !important; }
  .flex-md-grow-0 {
    flex-grow: 0 !important; }
  .flex-md-grow-1 {
    flex-grow: 1 !important; }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-md-start {
    justify-content: flex-start !important; }
  .justify-content-md-end {
    justify-content: flex-end !important; }
  .justify-content-md-center {
    justify-content: center !important; }
  .justify-content-md-between {
    justify-content: space-between !important; }
  .justify-content-md-around {
    justify-content: space-around !important; }
  .align-items-md-start {
    align-items: flex-start !important; }
  .align-items-md-end {
    align-items: flex-end !important; }
  .align-items-md-center {
    align-items: center !important; }
  .align-items-md-baseline {
    align-items: baseline !important; }
  .align-items-md-stretch {
    align-items: stretch !important; }
  .align-content-md-start {
    align-content: flex-start !important; }
  .align-content-md-end {
    align-content: flex-end !important; }
  .align-content-md-center {
    align-content: center !important; }
  .align-content-md-between {
    align-content: space-between !important; }
  .align-content-md-around {
    align-content: space-around !important; }
  .align-content-md-stretch {
    align-content: stretch !important; }
  .align-self-md-auto {
    align-self: auto !important; }
  .align-self-md-start {
    align-self: flex-start !important; }
  .align-self-md-end {
    align-self: flex-end !important; }
  .align-self-md-center {
    align-self: center !important; }
  .align-self-md-baseline {
    align-self: baseline !important; }
  .align-self-md-stretch {
    align-self: stretch !important; } }

@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important; }
  .flex-lg-column {
    flex-direction: column !important; }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-lg-wrap {
    flex-wrap: wrap !important; }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important; }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-lg-fill {
    flex: 1 1 auto !important; }
  .flex-lg-grow-0 {
    flex-grow: 0 !important; }
  .flex-lg-grow-1 {
    flex-grow: 1 !important; }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-lg-start {
    justify-content: flex-start !important; }
  .justify-content-lg-end {
    justify-content: flex-end !important; }
  .justify-content-lg-center {
    justify-content: center !important; }
  .justify-content-lg-between {
    justify-content: space-between !important; }
  .justify-content-lg-around {
    justify-content: space-around !important; }
  .align-items-lg-start {
    align-items: flex-start !important; }
  .align-items-lg-end {
    align-items: flex-end !important; }
  .align-items-lg-center {
    align-items: center !important; }
  .align-items-lg-baseline {
    align-items: baseline !important; }
  .align-items-lg-stretch {
    align-items: stretch !important; }
  .align-content-lg-start {
    align-content: flex-start !important; }
  .align-content-lg-end {
    align-content: flex-end !important; }
  .align-content-lg-center {
    align-content: center !important; }
  .align-content-lg-between {
    align-content: space-between !important; }
  .align-content-lg-around {
    align-content: space-around !important; }
  .align-content-lg-stretch {
    align-content: stretch !important; }
  .align-self-lg-auto {
    align-self: auto !important; }
  .align-self-lg-start {
    align-self: flex-start !important; }
  .align-self-lg-end {
    align-self: flex-end !important; }
  .align-self-lg-center {
    align-self: center !important; }
  .align-self-lg-baseline {
    align-self: baseline !important; }
  .align-self-lg-stretch {
    align-self: stretch !important; } }

@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important; }
  .flex-xl-column {
    flex-direction: column !important; }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-xl-wrap {
    flex-wrap: wrap !important; }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important; }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-xl-fill {
    flex: 1 1 auto !important; }
  .flex-xl-grow-0 {
    flex-grow: 0 !important; }
  .flex-xl-grow-1 {
    flex-grow: 1 !important; }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-xl-start {
    justify-content: flex-start !important; }
  .justify-content-xl-end {
    justify-content: flex-end !important; }
  .justify-content-xl-center {
    justify-content: center !important; }
  .justify-content-xl-between {
    justify-content: space-between !important; }
  .justify-content-xl-around {
    justify-content: space-around !important; }
  .align-items-xl-start {
    align-items: flex-start !important; }
  .align-items-xl-end {
    align-items: flex-end !important; }
  .align-items-xl-center {
    align-items: center !important; }
  .align-items-xl-baseline {
    align-items: baseline !important; }
  .align-items-xl-stretch {
    align-items: stretch !important; }
  .align-content-xl-start {
    align-content: flex-start !important; }
  .align-content-xl-end {
    align-content: flex-end !important; }
  .align-content-xl-center {
    align-content: center !important; }
  .align-content-xl-between {
    align-content: space-between !important; }
  .align-content-xl-around {
    align-content: space-around !important; }
  .align-content-xl-stretch {
    align-content: stretch !important; }
  .align-self-xl-auto {
    align-self: auto !important; }
  .align-self-xl-start {
    align-self: flex-start !important; }
  .align-self-xl-end {
    align-self: flex-end !important; }
  .align-self-xl-center {
    align-self: center !important; }
  .align-self-xl-baseline {
    align-self: baseline !important; }
  .align-self-xl-stretch {
    align-self: stretch !important; } }

.float-left {
  float: left !important; }

.float-right {
  float: right !important; }

.float-none {
  float: none !important; }

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important; }
  .float-sm-right {
    float: right !important; }
  .float-sm-none {
    float: none !important; } }

@media (min-width: 768px) {
  .float-md-left {
    float: left !important; }
  .float-md-right {
    float: right !important; }
  .float-md-none {
    float: none !important; } }

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important; }
  .float-lg-right {
    float: right !important; }
  .float-lg-none {
    float: none !important; } }

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important; }
  .float-xl-right {
    float: right !important; }
  .float-xl-none {
    float: none !important; } }

.overflow-auto {
  overflow: auto !important; }

.overflow-hidden {
  overflow: hidden !important; }

.position-static {
  position: static !important; }

.position-relative {
  position: relative !important; }

.position-absolute {
  position: absolute !important; }

.position-fixed {
  position: fixed !important; }

.position-sticky {
  position: sticky !important; }

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030; }

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030; }

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020; } }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal; }

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; }

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; }

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; }

.shadow-none {
  box-shadow: none !important; }

.w-25 {
  width: 25% !important; }

.w-50 {
  width: 50% !important; }

.w-75 {
  width: 75% !important; }

.w-100 {
  width: 100% !important; }

.w-auto {
  width: auto !important; }

.h-25 {
  height: 25% !important; }

.h-50 {
  height: 50% !important; }

.h-75 {
  height: 75% !important; }

.h-100 {
  height: 100% !important; }

.h-auto {
  height: auto !important; }

.mw-100 {
  max-width: 100% !important; }

.mh-100 {
  max-height: 100% !important; }

.min-vw-100 {
  min-width: 100vw !important; }

.min-vh-100 {
  min-height: 100vh !important; }

.vw-100 {
  width: 100vw !important; }

.vh-100 {
  height: 100vh !important; }

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: transparent; }

.m-0 {
  margin: 0 !important; }

.mt-0,
.my-0 {
  margin-top: 0 !important; }

.mr-0,
.mx-0 {
  margin-right: 0 !important; }

.mb-0,
.my-0 {
  margin-bottom: 0 !important; }

.ml-0,
.mx-0 {
  margin-left: 0 !important; }

.m-1 {
  margin: 0.25rem !important; }

.mt-1,
.my-1 {
  margin-top: 0.25rem !important; }

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important; }

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important; }

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important; }

.m-2 {
  margin: 0.5rem !important; }

.mt-2,
.my-2 {
  margin-top: 0.5rem !important; }

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important; }

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important; }

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important; }

.m-3 {
  margin: 1rem !important; }

.mt-3,
.my-3 {
  margin-top: 1rem !important; }

.mr-3,
.mx-3 {
  margin-right: 1rem !important; }

.mb-3,
.my-3 {
  margin-bottom: 1rem !important; }

.ml-3,
.mx-3 {
  margin-left: 1rem !important; }

.m-4 {
  margin: 1.5rem !important; }

.mt-4,
.my-4 {
  margin-top: 1.5rem !important; }

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important; }

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important; }

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important; }

.m-5 {
  margin: 3rem !important; }

.mt-5,
.my-5 {
  margin-top: 3rem !important; }

.mr-5,
.mx-5 {
  margin-right: 3rem !important; }

.mb-5,
.my-5 {
  margin-bottom: 3rem !important; }

.ml-5,
.mx-5 {
  margin-left: 3rem !important; }

.p-0 {
  padding: 0 !important; }

.pt-0,
.py-0 {
  padding-top: 0 !important; }

.pr-0,
.px-0 {
  padding-right: 0 !important; }

.pb-0,
.py-0 {
  padding-bottom: 0 !important; }

.pl-0,
.px-0 {
  padding-left: 0 !important; }

.p-1 {
  padding: 0.25rem !important; }

.pt-1,
.py-1 {
  padding-top: 0.25rem !important; }

.pr-1,
.px-1 {
  padding-right: 0.25rem !important; }

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important; }

.pl-1,
.px-1 {
  padding-left: 0.25rem !important; }

.p-2 {
  padding: 0.5rem !important; }

.pt-2,
.py-2 {
  padding-top: 0.5rem !important; }

.pr-2,
.px-2 {
  padding-right: 0.5rem !important; }

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important; }

.pl-2,
.px-2 {
  padding-left: 0.5rem !important; }

.p-3 {
  padding: 1rem !important; }

.pt-3,
.py-3 {
  padding-top: 1rem !important; }

.pr-3,
.px-3 {
  padding-right: 1rem !important; }

.pb-3,
.py-3 {
  padding-bottom: 1rem !important; }

.pl-3,
.px-3 {
  padding-left: 1rem !important; }

.p-4 {
  padding: 1.5rem !important; }

.pt-4,
.py-4 {
  padding-top: 1.5rem !important; }

.pr-4,
.px-4 {
  padding-right: 1.5rem !important; }

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important; }

.pl-4,
.px-4 {
  padding-left: 1.5rem !important; }

.p-5 {
  padding: 3rem !important; }

.pt-5,
.py-5 {
  padding-top: 3rem !important; }

.pr-5,
.px-5 {
  padding-right: 3rem !important; }

.pb-5,
.py-5 {
  padding-bottom: 3rem !important; }

.pl-5,
.px-5 {
  padding-left: 3rem !important; }

.m-n1 {
  margin: -0.25rem !important; }

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important; }

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important; }

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important; }

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important; }

.m-n2 {
  margin: -0.5rem !important; }

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important; }

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important; }

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important; }

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important; }

.m-n3 {
  margin: -1rem !important; }

.mt-n3,
.my-n3 {
  margin-top: -1rem !important; }

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important; }

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important; }

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important; }

.m-n4 {
  margin: -1.5rem !important; }

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important; }

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important; }

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important; }

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important; }

.m-n5 {
  margin: -3rem !important; }

.mt-n5,
.my-n5 {
  margin-top: -3rem !important; }

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important; }

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important; }

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important; }

.m-auto {
  margin: auto !important; }

.mt-auto,
.my-auto {
  margin-top: auto !important; }

.mr-auto,
.mx-auto {
  margin-right: auto !important; }

.mb-auto,
.my-auto {
  margin-bottom: auto !important; }

.ml-auto,
.mx-auto {
  margin-left: auto !important; }

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important; }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important; }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important; }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important; }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important; }
  .m-sm-1 {
    margin: 0.25rem !important; }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important; }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important; }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important; }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important; }
  .m-sm-2 {
    margin: 0.5rem !important; }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important; }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important; }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important; }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important; }
  .m-sm-3 {
    margin: 1rem !important; }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important; }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important; }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important; }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important; }
  .m-sm-4 {
    margin: 1.5rem !important; }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important; }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important; }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important; }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important; }
  .m-sm-5 {
    margin: 3rem !important; }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important; }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important; }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important; }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important; }
  .p-sm-0 {
    padding: 0 !important; }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important; }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important; }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important; }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important; }
  .p-sm-1 {
    padding: 0.25rem !important; }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important; }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important; }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important; }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important; }
  .p-sm-2 {
    padding: 0.5rem !important; }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important; }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important; }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important; }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important; }
  .p-sm-3 {
    padding: 1rem !important; }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important; }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important; }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important; }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important; }
  .p-sm-4 {
    padding: 1.5rem !important; }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important; }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important; }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important; }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important; }
  .p-sm-5 {
    padding: 3rem !important; }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important; }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important; }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important; }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important; }
  .m-sm-n1 {
    margin: -0.25rem !important; }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important; }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important; }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important; }
  .m-sm-n2 {
    margin: -0.5rem !important; }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important; }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important; }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important; }
  .m-sm-n3 {
    margin: -1rem !important; }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important; }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important; }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important; }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important; }
  .m-sm-n4 {
    margin: -1.5rem !important; }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important; }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important; }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important; }
  .m-sm-n5 {
    margin: -3rem !important; }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important; }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important; }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important; }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !important; }
  .m-sm-auto {
    margin: auto !important; }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important; }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important; }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important; }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important; } }

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important; }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important; }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important; }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important; }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important; }
  .m-md-1 {
    margin: 0.25rem !important; }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important; }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important; }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important; }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important; }
  .m-md-2 {
    margin: 0.5rem !important; }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important; }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important; }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important; }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important; }
  .m-md-3 {
    margin: 1rem !important; }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important; }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important; }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important; }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important; }
  .m-md-4 {
    margin: 1.5rem !important; }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important; }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important; }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important; }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important; }
  .m-md-5 {
    margin: 3rem !important; }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important; }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important; }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important; }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important; }
  .p-md-0 {
    padding: 0 !important; }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important; }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important; }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important; }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important; }
  .p-md-1 {
    padding: 0.25rem !important; }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important; }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important; }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important; }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important; }
  .p-md-2 {
    padding: 0.5rem !important; }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important; }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important; }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important; }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important; }
  .p-md-3 {
    padding: 1rem !important; }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important; }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important; }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important; }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important; }
  .p-md-4 {
    padding: 1.5rem !important; }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important; }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important; }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important; }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important; }
  .p-md-5 {
    padding: 3rem !important; }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important; }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important; }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important; }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important; }
  .m-md-n1 {
    margin: -0.25rem !important; }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important; }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important; }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important; }
  .m-md-n2 {
    margin: -0.5rem !important; }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important; }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important; }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important; }
  .m-md-n3 {
    margin: -1rem !important; }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important; }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important; }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important; }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important; }
  .m-md-n4 {
    margin: -1.5rem !important; }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important; }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important; }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important; }
  .m-md-n5 {
    margin: -3rem !important; }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important; }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important; }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important; }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !important; }
  .m-md-auto {
    margin: auto !important; }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important; }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important; }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important; }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important; } }

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important; }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important; }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important; }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important; }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important; }
  .m-lg-1 {
    margin: 0.25rem !important; }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important; }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important; }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important; }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important; }
  .m-lg-2 {
    margin: 0.5rem !important; }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important; }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important; }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important; }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important; }
  .m-lg-3 {
    margin: 1rem !important; }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important; }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important; }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important; }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important; }
  .m-lg-4 {
    margin: 1.5rem !important; }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important; }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important; }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important; }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important; }
  .m-lg-5 {
    margin: 3rem !important; }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important; }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important; }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important; }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important; }
  .p-lg-0 {
    padding: 0 !important; }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important; }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important; }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important; }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important; }
  .p-lg-1 {
    padding: 0.25rem !important; }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important; }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important; }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important; }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important; }
  .p-lg-2 {
    padding: 0.5rem !important; }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important; }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important; }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important; }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important; }
  .p-lg-3 {
    padding: 1rem !important; }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important; }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important; }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important; }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important; }
  .p-lg-4 {
    padding: 1.5rem !important; }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important; }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important; }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important; }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important; }
  .p-lg-5 {
    padding: 3rem !important; }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important; }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important; }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important; }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important; }
  .m-lg-n1 {
    margin: -0.25rem !important; }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important; }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important; }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important; }
  .m-lg-n2 {
    margin: -0.5rem !important; }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important; }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important; }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important; }
  .m-lg-n3 {
    margin: -1rem !important; }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important; }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important; }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important; }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important; }
  .m-lg-n4 {
    margin: -1.5rem !important; }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important; }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important; }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important; }
  .m-lg-n5 {
    margin: -3rem !important; }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important; }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important; }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important; }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !important; }
  .m-lg-auto {
    margin: auto !important; }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important; }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important; }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important; }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important; } }

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important; }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important; }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important; }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important; }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important; }
  .m-xl-1 {
    margin: 0.25rem !important; }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important; }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important; }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important; }
  .m-xl-2 {
    margin: 0.5rem !important; }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important; }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important; }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important; }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important; }
  .m-xl-3 {
    margin: 1rem !important; }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important; }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important; }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important; }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important; }
  .m-xl-4 {
    margin: 1.5rem !important; }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important; }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important; }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important; }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important; }
  .m-xl-5 {
    margin: 3rem !important; }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important; }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important; }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important; }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important; }
  .p-xl-0 {
    padding: 0 !important; }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important; }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important; }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important; }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important; }
  .p-xl-1 {
    padding: 0.25rem !important; }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important; }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important; }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important; }
  .p-xl-2 {
    padding: 0.5rem !important; }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important; }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important; }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important; }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important; }
  .p-xl-3 {
    padding: 1rem !important; }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important; }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important; }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important; }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important; }
  .p-xl-4 {
    padding: 1.5rem !important; }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important; }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important; }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important; }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important; }
  .p-xl-5 {
    padding: 3rem !important; }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important; }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important; }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important; }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important; }
  .m-xl-n1 {
    margin: -0.25rem !important; }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important; }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important; }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important; }
  .m-xl-n2 {
    margin: -0.5rem !important; }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important; }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important; }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important; }
  .m-xl-n3 {
    margin: -1rem !important; }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important; }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important; }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important; }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important; }
  .m-xl-n4 {
    margin: -1.5rem !important; }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important; }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important; }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important; }
  .m-xl-n5 {
    margin: -3rem !important; }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important; }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important; }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important; }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !important; }
  .m-xl-auto {
    margin: auto !important; }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important; }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important; }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important; }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important; } }

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important; }

.text-justify {
  text-align: justify !important; }

.text-wrap {
  white-space: normal !important; }

.text-nowrap {
  white-space: nowrap !important; }

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.text-left {
  text-align: left !important; }

.text-right {
  text-align: right !important; }

.text-center {
  text-align: center !important; }

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important; }
  .text-sm-right {
    text-align: right !important; }
  .text-sm-center {
    text-align: center !important; } }

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important; }
  .text-md-right {
    text-align: right !important; }
  .text-md-center {
    text-align: center !important; } }

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important; }
  .text-lg-right {
    text-align: right !important; }
  .text-lg-center {
    text-align: center !important; } }

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important; }
  .text-xl-right {
    text-align: right !important; }
  .text-xl-center {
    text-align: center !important; } }

.text-lowercase {
  text-transform: lowercase !important; }

.text-uppercase {
  text-transform: uppercase !important; }

.text-capitalize {
  text-transform: capitalize !important; }

.font-weight-light {
  font-weight: 300 !important; }

.font-weight-lighter {
  font-weight: lighter !important; }

.font-weight-normal {
  font-weight: 400 !important; }

.font-weight-bold {
  font-weight: 700 !important; }

.font-weight-bolder {
  font-weight: bolder !important; }

.font-italic {
  font-style: italic !important; }

.text-white {
  color: #fff !important; }

.text-primary {
  color: #007bff !important; }

a.text-primary:hover, a.text-primary:focus {
  color: #0056b3 !important; }

.text-secondary {
  color: #6c757d !important; }

a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important; }

.text-success {
  color: #28a745 !important; }

a.text-success:hover, a.text-success:focus {
  color: #19692c !important; }

.text-info {
  color: #17a2b8 !important; }

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important; }

.text-warning {
  color: #ffc107 !important; }

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important; }

.text-danger {
  color: #dc3545 !important; }

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !important; }

.text-light {
  color: #f8f9fa !important; }

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important; }

.text-dark {
  color: #343a40 !important; }

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important; }

.text-body {
  color: #212529 !important; }

.text-muted {
  color: #6c757d !important; }

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important; }

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important; }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.text-decoration-none {
  text-decoration: none !important; }

.text-break {
  word-break: break-word !important;
  overflow-wrap: break-word !important; }

.text-reset {
  color: inherit !important; }

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important; }
  a:not(.btn) {
    text-decoration: underline; }
  abbr[title]::after {
    content: " (" attr(title) ")"; }
  pre {
    white-space: pre-wrap !important; }
  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  @page {
    size: a3; }
  body {
    min-width: 992px !important; }
  .container {
    min-width: 992px !important; }
  .navbar {
    display: none; }
  .badge {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important; }
  .table-dark {
    color: inherit; }
    .table-dark th,
    .table-dark td,
    .table-dark thead th,
    .table-dark tbody + tbody {
      border-color: #dee2e6; }
  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6; } }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  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;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }

.slick-track:before,
.slick-track:after {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: block;
  width: 100%;
  height: auto; }

.slick-slide.slick-loading img {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block;
  height: auto; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0rem;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 1.25rem;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0rem;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 0rem;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

body {
  font-family: 'Noto Sans TC', sans-serif; }

body {
  padding: 0;
  margin: 0;
  font-family: 'Noto Sans TC', sans-serif;
  letter-spacing: 1px;
  position: relative;
  color: #000; }

a:hover {
  text-decoration: none; }

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  font-family: 'Noto Sans TC', sans-serif;
  line-height: 1.4em;
  clear: both; }

.h2, h2 {
  font-size: 200%;
  color: #878988;
  display: block;
  padding: 1% 0 0;
  margin: 0; }

.h2 {
  display: inline-block; }

.h2:after, h2:after {
  content: '';
  display: block;
  border-bottom: 0 solid #d4d4d4;
  padding-bottom: 5px;
  margin-bottom: 0; }

.container {
  display: block;
  position: relative;
  cursor: pointer;
  font-size: 22px;
  height: 15px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/* Hide the browser's default checkbox */
.container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0; }

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 5px;
  height: 20px;
  width: 20px;
  border: 2px solid  #007bff; }

/* On mouse-over, add a grey background color */
/* When the checkbox is checked, add a blue background */
.container input:checked ~ .checkmark {
  background-color: #2196F3; }

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none; }

/* Show the checkmark when checked */
.container input:checked ~ .checkmark:after {
  display: block; }

/* Style the checkmark/indicator */
.container .checkmark:after {
  left: -5px;
  top: -5px;
  width: 25px;
  height: 25px;
  background-image: url(/public/images/heart.png);
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #fff; }

/*
.selectWrapper {
  width: 100%;
  overflow: hidden;
  position: relative;
  border-radius: 2px;
  background: url(/public/images/axd.png) 95% center no-repeat;
  background-size: 14px;
  text-align: center;
  &.blk{
    background: url(../images/drop_blk.png) 95% 40% no-repeat;
    background-size: 14px;
    select{
      font-weight:500;
    }
  }
}

.selectWrapper select {
        padding: 12px 20px 12px 20px;
        font-size: 16px;
        line-height: 18px;
        font-weight:300;
    width: auto;
    display:inline-block;

		color:#fff;
        border: none;
        box-shadow: none;
        background: transparent;
        background-image: none;
        -webkit-appearance: none;
        outline: none;
        cursor: pointer;
        -moz-appearance: none;
        text-indent: 0.01px;
        text-overflow: ellipsis;              
    }
    */
.slk_box {
  position: relative;
  width: 100%;
  max-width: 250px;
  border: 1px solid #ced4da;
  border-radius: 5px; }

.slk_box select {
  color: #495057;
  padding: 2px 20px;
  width: 100%;
  max-width: 248px;
  border: none;
  font-size: 18px;
  -webkit-appearance: button;
  appearance: button;
  outline: none;
  height: 38px;
  border-radius: 5px; }

.slk_box::before {
  content: "\f0d7";
  font-family: FontAwesome;
  position: absolute;
  top: 0;
  right: 0;
  width: 20%;
  height: 100%;
  text-align: center;
  font-size: 28px;
  line-height: 38px;
  color: #495057;
  background-color: rgba(255, 255, 255, 1);
  pointer-events: none;
  border-left: 1px solid #ced4da;
  border-radius: 0 5px 5px 0; }

.slk_box:hover::before {
  color: #495057;
  background-color: rgba(255, 255, 255, 1); }

.slk_box select option {
  padding: 30px; }

::placeholder {
  color: #929292;
  opacity: 1;
  /* Firefox */ }

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #929292; }

::-ms-input-placeholder {
  /* Microsoft Edge */
  color: #929292; }

.min_box {
  position: relative;
  min-width: 50px;
  border-radius: 5px; }

.min_box select {
  color: #fff;
  padding: 2px 30px 2px 20px;
  width: calc(100% - 2px);
  border: none;
  font-size: 18px;
  -webkit-appearance: button;
  appearance: button;
  outline: none;
  height: 38px;
  background: transparent; }

.min_box::before {
  content: "";
  color: #fff;
  background: url(/public/images/axd.png) center no-repeat;
  background-size: 14px;
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 100%;
  text-align: center;
  font-size: 28px;
  line-height: 38px;
  pointer-events: none; }

.min_box:hover::before {
  color: #fff; }

.min_box select option {
  padding: 30px; }

.navbar {
  padding: 13px 1rem;
  overflow: hidden; }

#header {
  box-shadow: 0 3px 3px #9c9c9c;
  position: fixed;
  width: 100%;
  z-index: 9;
  background: #fff;
  top: 0; }
  #header .box {
    max-width: 1180px;
    padding: 0 0px;
    margin-left: auto;
    margin-right: auto; }
    #header .box .navbar-brand img {
      height: 40px; }
  #header form button[type="submit"] {
    display: flex;
    align-items: center; }
    #header form button[type="submit"] i {
      margin-right: 10px;
      font-size: 20px; }

#page {
  padding-top: 56px; }

footer {
  background: #0d4079;
  color: #fff;
  padding: 1em 0 calc(1em + 10px);
  font-family: '微軟正黑體';
  position: relative; }
  footer .box {
    max-width: 1180px;
    position: relative;
    margin: auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap; }
    footer .box .bottom_info {
      padding: 10px 15px 0 15px; }
      footer .box .bottom_info ul {
        padding: 0;
        margin: 0; }
        footer .box .bottom_info ul li {
          list-style-type: none;
          margin-bottom: 15px; }
          footer .box .bottom_info ul li:last-child {
            margin-bottom: 0; }
          footer .box .bottom_info ul li i {
            color: #70b5d4; }
    footer .box nav {
      padding: 0 15px; }
      footer .box nav ul li a {
        color: #fff; }
    footer .box .copyright {
      position: absolute;
      right: 25px;
      bottom: 0em; }

@media screen and (max-width: 768px) {
  #footer nav {
    width: 100%;
    padding: 20px 15px; }
    #footer nav ul {
      display: flex;
      flex-wrap: wrap;
      flex-direction: initial;
      justify-content: center;
      width: 100%;
      padding: 0 15px; }
      #footer nav ul li {
        display: inline-flex;
        padding: 0 10px 0 0; }
  #footer .copyright {
    position: relative;
    text-align: center;
    width: 100%;
    right: auto;
    bottom: 0em; } }

.page_top_gallery {
  background-size: cover;
  background-position: center; }
  .page_top_gallery .item {
    background-size: cover;
    background-position: center; }
  .page_top_gallery img {
    height: 340px;
    opacity: 0; }

.breadcrumb {
  background: #efecf6;
  margin-bottom: 0;
  color: #4c4c4c;
  padding: 0; }
  .breadcrumb .ibox {
    width: 100%;
    padding: 0 15px;
    height: 50px;
    display: flex;
    align-items: center;
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto; }
    .breadcrumb .ibox a {
      display: inline-block;
      padding-right: 5px;
      padding-left: 5px;
      color: #4c4c4c;
      font-size: 16px; }
      .breadcrumb .ibox a:first-child {
        padding-left: 0px; }
    .breadcrumb .ibox div {
      font-size: 16px;
      padding-left: 5px;
      padding-right: 5px; }

.mtitle {
  background-image: url(/public/images/mid_bn.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: cover; }
  .mtitle .share {
    display: flex;
    height: 100%;
    align-items: center;
    align-content: center;
    width: 160px;
    justify-content: space-between; }
    .mtitle .share a {
      align-items: center;
      color: #fff;
      display: flex; }
      .mtitle .share a:hover {
        color: #eee; }
      .mtitle .share a img {
        margin-right: 6px;
        height: 20px; }
  .mtitle .box {
    max-width: 1180px;
    margin: auto;
    display: flex;
    height: 66px;
    align-items: center;
    padding: 0 15px;
    justify-content: space-between; }
    .mtitle .box .title {
      margin-top: -5px;
      letter-spacing: 2px;
      line-height: 1em;
      font-size: 36px;
      color: #fff; }
    .mtitle .box .logout {
      display: flex;
      align-items: center;
      color: #fff;
      font-size: 24px; }
      .mtitle .box .logout img {
        display: block;
        height: 28px;
        margin-right: 10px; }
  .mtitle .filter {
    display: flex; }
    .mtitle .filter .min_box {
      margin-left: 15px; }

.data_desc {
  display: block;
  padding: 20px 30px;
  color: #4c4c4c;
  font-size: 18px; }
  .data_desc .member_msg {
    padding: 0px 0px  10px;
    color: #4c4c4c; }
    .data_desc .member_msg .member {
      color: #156dce; }
  .data_desc .num {
    color: #156dce; }

@media screen and (max-width: 1024px) {
  .mtitle .box .title {
    font-size: 26px; } }

@media screen and (max-width: 768px) {
  .mtitle.rwd .box {
    height: auto;
    padding: 10px 0px;
    flex-wrap: wrap;
    text-align: center; }
    .mtitle.rwd .box .title {
      width: 100%;
      margin-top: 0;
      margin-bottom: 10px; }
    .mtitle.rwd .box .filter {
      width: 100%;
      justify-content: space-between; }
      .mtitle.rwd .box .filter .min_box {
        margin-left: 0; }
        .mtitle.rwd .box .filter .min_box select {
          font-size: 16px; } }

#pre_sale_house {
  max-width: 1210px;
  margin: auto;
  padding: 0 15px;
  margin: 0 auto; }
  #pre_sale_house .data_desc {
    padding: 20px 10px; }
  #pre_sale_house ul.list {
    margin: 0;
    padding: 0; }
    #pre_sale_house ul.list li.item {
      list-style-type: none;
      background: #fff;
      display: flex;
      padding: 10px 10px 20px 10px;
      margin-bottom: 14px;
      border-bottom: 1px solid #e0e0e0; }
      #pre_sale_house ul.list li.item .pic {
        display: block;
        width: 200px; }
        #pre_sale_house ul.list li.item .pic img {
          display: block;
          border: 1px solid #b0b0b0;
          width: 100%; }
      #pre_sale_house ul.list li.item .desc {
        padding-left: 10px;
        width: calc(100% - 380px); }
        #pre_sale_house ul.list li.item .desc h3 {
          margin: 0 0 20px;
          font-size: 22px;
          line-height: 1em; }
        #pre_sale_house ul.list li.item .desc .address {
          font-size: 17px;
          font-weight: 300;
          color: #4c4c4c;
          margin: 0 0 5px; }
        #pre_sale_house ul.list li.item .desc .spec {
          font-size: 17px;
          font-weight: 300;
          color: #4c4c4c;
          margin: 0 0 20px; }
        #pre_sale_house ul.list li.item .desc .mobile_price {
          margin-bottom: 10px;
          top: 0;
          right: 0;
          display: none;
          justify-content: space-between;
          align-items: baseline;
          width: 150px;
          line-height: 1em; }
          #pre_sale_house ul.list li.item .desc .mobile_price .regular_price {
            color: #7d7d7d;
            font-size: 16px;
            position: relative; }
            #pre_sale_house ul.list li.item .desc .mobile_price .regular_price:before {
              width: 100%;
              height: 1px;
              background: #7d7d7d;
              content: '';
              position: absolute;
              top: 50%; }
          #pre_sale_house ul.list li.item .desc .mobile_price .sale_price {
            color: #e60012;
            font-size: 24px; }
        #pre_sale_house ul.list li.item .desc .tag {
          border: 1px solid #007bff;
          padding: 2px 5px;
          line-height: 1em;
          font-size: 17px;
          float: left;
          margin-right: 5px; }
      #pre_sale_house ul.list li.item .likeit {
        width: 180px;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative; }
        #pre_sale_house ul.list li.item .likeit .price {
          position: absolute;
          top: 0;
          right: 0;
          display: flex;
          justify-content: space-between;
          align-items: baseline;
          width: 150px;
          line-height: 1em; }
          #pre_sale_house ul.list li.item .likeit .price .regular_price {
            color: #7d7d7d;
            font-size: 16px;
            position: relative; }
            #pre_sale_house ul.list li.item .likeit .price .regular_price:before {
              width: 100%;
              height: 1px;
              background: #7d7d7d;
              content: '';
              position: absolute;
              top: 50%; }
          #pre_sale_house ul.list li.item .likeit .price .sale_price {
            color: #e60012;
            font-size: 22px; }
        #pre_sale_house ul.list li.item .likeit .collection {
          border: 1px solid #007bff;
          padding: 3px 15px;
          border-radius: 20px;
          position: absolute;
          right: 0;
          bottom: 10px; }
          #pre_sale_house ul.list li.item .likeit .collection svg {
            width: 20px;
            margin-top: -3px; }
          #pre_sale_house ul.list li.item .likeit .collection:hover {
            color: #fff;
            background: #007bff; }
          #pre_sale_house ul.list li.item .likeit .collection.active {
            color: #fff;
            background: #007bff; }
  #pre_sale_house .pagination {
    margin: 50px auto 50px; }

@media screen and (max-width: 650px) {
  #pre_sale_house {
    padding: 0 5px; }
  #pre_sale_house ul.list li.item {
    flex-wrap: wrap; }
    #pre_sale_house ul.list li.item .pic {
      width: 40%; }
    #pre_sale_house ul.list li.item .desc {
      width: 60%; }
      #pre_sale_house ul.list li.item .desc h3 {
        font-size: 16px;
        margin-bottom: 10px; }
      #pre_sale_house ul.list li.item .desc .address {
        font-size: 15px;
        line-height: 1em;
        margin-bottom: 10px; }
      #pre_sale_house ul.list li.item .desc .mobile_price {
        display: flex; }
      #pre_sale_house ul.list li.item .desc .spec {
        font-size: 15px;
        line-height: 1em;
        margin-bottom: 10px; }
      #pre_sale_house ul.list li.item .desc .allTags .tag {
        font-size: 13px; }
    #pre_sale_house ul.list li.item .likeit {
      padding-top: 8px;
      width: 100%;
      justify-content: flex-end;
      flex-direction: row-reverse; }
      #pre_sale_house ul.list li.item .likeit .price {
        display: none; }
      #pre_sale_house ul.list li.item .likeit .collection {
        position: relative;
        bottom: 0;
        margin-left: 20px; } }

#loanLists {
  max-width: 1210px;
  margin: auto;
  padding: 0 15px;
  margin: 0 auto; }
  #loanLists .data_desc {
    padding: 20px 10px; }
  #loanLists ul.list {
    margin: 0;
    padding: 0; }
    #loanLists ul.list li.item {
      list-style-type: none;
      background: #fff;
      display: flex;
      padding: 10px 10px 20px 10px;
      margin-bottom: 14px;
      border-bottom: 1px solid #e0e0e0; }
      #loanLists ul.list li.item .pic {
        display: block;
        width: 320px; }
        #loanLists ul.list li.item .pic .mpic {
          margin-bottom: 15px; }
          #loanLists ul.list li.item .pic .mpic img {
            display: block;
            width: 100%; }
        #loanLists ul.list li.item .pic h3 {
          font-size: 22px;
          color: #000;
          text-align-last: justify; }
      #loanLists ul.list li.item .desc {
        padding-left: 10px;
        width: calc(100% - 430px);
        display: flex; }
        #loanLists ul.list li.item .desc .info ul li {
          list-style-type: none;
          font-size: 17px; }
        #loanLists ul.list li.item .desc .info:last-child > ul {
          position: relative;
          padding-left: 20px;
          margin-left: 20px; }
          #loanLists ul.list li.item .desc .info:last-child > ul:before {
            content: '';
            position: absolute;
            height: 100%;
            width: 1px;
            background: #bfbfbf;
            left: 0;
            top: 0; }
      #loanLists ul.list li.item .likeit {
        width: 120px;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative; }
  #loanLists .pagination {
    margin: 50px auto 50px; }

@media only screen and (max-width: 1024px) {
  #loanLists ul.list li.item {
    flex-wrap: wrap; }
    #loanLists ul.list li.item .pic {
      width: 30%;
      position: relative; }
      #loanLists ul.list li.item .pic h3 {
        font-size: 15px;
        text-align: center;
        text-align-last: auto; }
    #loanLists ul.list li.item .likeit {
      width: 30%; }
    #loanLists ul.list li.item .desc {
      width: calc(70%); } }

@media only screen and (max-width: 650px) {
  #loanLists ul.list li.item {
    flex-wrap: wrap; }
    #loanLists ul.list li.item .pic {
      width: 100%;
      margin-bottom: 20px; }
      #loanLists ul.list li.item .pic h3 {
        font-size: 22px;
        text-align: left;
        padding-left: 15px;
        text-align-last: auto; }
    #loanLists ul.list li.item .desc {
      width: calc(100%);
      flex-wrap: wrap;
      padding-left: 0; }
      #loanLists ul.list li.item .desc .info {
        width: 100%;
        margin-bottom: 15px; }
        #loanLists ul.list li.item .desc .info ul {
          padding: 0 0 0 15px;
          margin: 0; }
          #loanLists ul.list li.item .desc .info ul:before {
            display: none; }
        #loanLists ul.list li.item .desc .info:last-child ul {
          padding: 0 0 0 15px;
          margin-left: 0; }
    #loanLists ul.list li.item .likeit {
      padding: 10px 0 0;
      width: 100%; } }

#decoLists {
  max-width: 1210px;
  margin: auto;
  padding: 0 15px;
  margin: 0 auto; }
  #decoLists .data_desc {
    padding: 20px 10px; }
  #decoLists ul.list {
    margin: 0;
    padding: 0; }
    #decoLists ul.list li.item {
      list-style-type: none;
      background: #fff;
      display: flex;
      padding: 10px 10px 20px 10px;
      margin-bottom: 14px;
      border-bottom: 1px solid #e0e0e0; }
      #decoLists ul.list li.item .pic {
        display: flex;
        align-items: center;
        width: 280px; }
        #decoLists ul.list li.item .pic h3 {
          font-size: 22px;
          font-weight: 500;
          color: #000;
          text-align-last: justify; }
      #decoLists ul.list li.item .desc {
        padding-left: 10px;
        width: calc(100% - 430px);
        display: flex; }
      #decoLists ul.list li.item .likeit {
        width: 170px;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative; }
  #decoLists .pagination {
    margin: 50px auto 50px; }

@media only screen and (max-width: 1024px) {
  #decoLists ul.list li.item {
    flex-wrap: wrap; }
    #decoLists ul.list li.item .pic {
      width: 40%;
      position: relative; }
      #decoLists ul.list li.item .pic h3 {
        width: 100%;
        font-size: 20px;
        text-align: center;
        text-align-last: auto; }
    #decoLists ul.list li.item .likeit {
      width: 40%; }
    #decoLists ul.list li.item .desc {
      width: calc(60%); } }

@media only screen and (max-width: 650px) {
  #decoLists ul.list li.item {
    flex-wrap: wrap; }
    #decoLists ul.list li.item .pic {
      width: 100%;
      margin-bottom: 20px; }
      #decoLists ul.list li.item .pic h3 {
        font-size: 22px;
        text-align: left;
        text-align-last: auto;
        margin-bottom: 0; }
    #decoLists ul.list li.item .desc {
      width: calc(100%);
      flex-wrap: wrap;
      padding-left: 0; }
      #decoLists ul.list li.item .desc .info {
        width: 100%;
        margin-bottom: 15px; }
    #decoLists ul.list li.item .likeit {
      padding: 10px 0 0;
      width: 100%; } }

nav.pagination ul li {
  margin: 0 5px;
  border-color: #616976; }
  nav.pagination ul li a {
    color: #616976;
    border-radius: 0px; }
    nav.pagination ul li a.page-link {
      border-top-left-radius: 0rem !important;
      border-bottom-left-radius: 0rem !important;
      border-top-right-radius: 0rem !important;
      border-bottom-right-radius: 0rem !important;
      height: 42px;
      display: flex;
      align-items: center;
      color: #444;
      width: 40px;
      justify-content: center; }

#pay_hosue {
  min-height: 600px;
  padding: 50px 15px;
  max-width: 1180px;
  margin: auto; }
  #pay_hosue .notice {
    padding: 10px 0 20px;
    font-size: 18px; }
    #pay_hosue .notice .amount {
      color: #bf0000; }
  #pay_hosue .form-group {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #e0e0e0; }
    #pay_hosue .form-group label {
      max-width: 150px; }

input[type="text"] {
  background: #f4f4f4; }

.control {
  display: flex;
  justify-content: center; }
  .control .btn {
    margin: 30px 40px;
    position: relative;
    text-align: center;
    align-content: center;
    align-items: center;
    justify-content: center;
    display: flex;
    line-height: 1em;
    padding: 10px 20px; }
    .control .btn img {
      height: 22px;
      margin-right: 10px; }

@media screen and (max-width: 1200px) {
  #pay_hosue {
    max-width: 980px; } }

@media screen and (max-width: 1024px) {
  #pay_hosue {
    max-width: 768px; } }

@media screen and (max-width: 768px) {
  .control .btn {
    margin: 30px 13px;
    padding: 10px 13px; }
  #pay_hosue {
    margin: 0 15px; } }

#modal_info .modal-dialog {
  top: 50%;
  max-width: 300px;
  margin: -100px auto 0; }
  #modal_info .modal-dialog .modal-content {
    background-image: linear-gradient(to bottom, #176fd3, #0379d8, #0083dd, #008de1, #0096e5, #009ce7, #05a2e9, #11a8eb, #11acec, #14b0ee, #18b4ef, #1db8f0);
    height: 200px;
    border: 0px; }
    #modal_info .modal-dialog .modal-content .modal-body {
      display: flex;
      flex-wrap: wrap;
      align-content: center; }
      #modal_info .modal-dialog .modal-content .modal-body h4 {
        width: 100%;
        text-align: center;
        color: #fff;
        margin-bottom: 25px; }
      #modal_info .modal-dialog .modal-content .modal-body button {
        width: 100%;
        color: #176fd3;
        padding: 10px 0;
        margin-bottom: 15px; }

.modal-backdrop.fade {
  opacity: 0.2; }

#login_outter {
  background-image: url(/public/images/login_bk.png);
  min-height: 600px;
  width: 100%;
  display: flex;
  align-items: center;
  background-size: cover; }
  #login_outter .login_box {
    text-align: center;
    width: 100%;
    padding: 0 15px;
    max-width: 480px;
    margin: 0 auto; }
    #login_outter .login_box h2 {
      color: #fff;
      margin-bottom: 20px; }
    #login_outter .login_box .ibtn {
      background: rgba(255, 255, 255, 0.7);
      width: 100%;
      display: block;
      margin-bottom: 30px;
      height: 60px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 5px;
      font-size: 20px;
      transform: scale(1);
      transition: 0.1s;
      box-shadow: 0 0 2px #525252; }
      #login_outter .login_box .ibtn.gl img {
        width: 125px; }
      #login_outter .login_box .ibtn img {
        margin-right: 10px;
        width: 130px; }
      #login_outter .login_box .ibtn.hover {
        background: rgba(255, 255, 255, 0.9); }
      #login_outter .login_box .ibtn:active {
        background: rgba(255, 255, 255, 0.8);
        transform: scale(0.97); }

@media screen and (max-width: 768px) {
  #login_outter .login_box {
    width: 90%; } }

#member_admin {
  padding: 15px;
  max-width: 1210px;
  margin-left: auto;
  margin-right: auto;
  min-height: 630px; }
  #member_admin .data_desc {
    padding: 20px 10px 30px;
    display: flex;
    align-content: center;
    justify-content: space-between; }
    #member_admin .data_desc .btns {
      background: #fff;
      border: 1px solid #c5c5c5;
      max-width: 360px;
      height: 42px;
      padding: 00px 15px;
      border-radius: 10px;
      width: calc(100% - 30px);
      margin-left: 15px;
      display: flex; }
      #member_admin .data_desc .btns a {
        height: 40px;
        align-content: center;
        align-items: center;
        justify-content: center;
        display: flex;
        width: 50%;
        text-align: center;
        color: #929292; }
        #member_admin .data_desc .btns a.active {
          color: #156dce; }
        #member_admin .data_desc .btns a.c1 {
          position: relative; }
          #member_admin .data_desc .btns a.c1:after {
            content: '';
            background: #c5c5c5;
            position: absolute;
            right: 0;
            width: 1px;
            height: calc(100% - 10px);
            top: 5px; }
          #member_admin .data_desc .btns a.c1 span {
            width: 30px;
            height: 30px;
            background: url(/public/images/heart2.png);
            background-size: 20px auto;
            background-position: center -22px;
            background-repeat: no-repeat;
            z-index: 9;
            margin-right: 5px; }
        #member_admin .data_desc .btns a.c1.active span {
          background-position: center 7px; }
        #member_admin .data_desc .btns a.c2 span {
          width: 30px;
          height: 30px;
          background: url(/public/images/holder2.png);
          background-size: 22px auto;
          background-position: center -18px;
          background-repeat: no-repeat;
          z-index: 2;
          margin-right: 5px; }
        #member_admin .data_desc .btns a.c2.active span {
          background-position: center 8px; }
  #member_admin ul.list {
    margin: 0;
    padding: 0;
    /*  li.item */
    /*  =================  Book item_book =====================  */
    /* li.item_book  */ }
    #member_admin ul.list li.item {
      position: relative;
      list-style-type: none;
      background: #fff;
      display: flex;
      padding: 10px 10px 20px 10px;
      margin-bottom: 14px;
      border-bottom: 1px solid #e0e0e0;
      /* likeit */ }
      #member_admin ul.list li.item .pic {
        display: block;
        width: 200px; }
        #member_admin ul.list li.item .pic img {
          display: block;
          border: 1px solid #b0b0b0;
          width: 100%; }
      #member_admin ul.list li.item .desc {
        padding-left: 10px;
        width: calc(100% - 230px); }
        #member_admin ul.list li.item .desc h3 {
          margin: 0 0 20px;
          font-size: 22px;
          line-height: 1em; }
        #member_admin ul.list li.item .desc .address {
          font-size: 17px;
          font-weight: 300;
          color: #4c4c4c;
          margin: 0 0 5px; }
        #member_admin ul.list li.item .desc .spec {
          font-size: 17px;
          font-weight: 300;
          color: #4c4c4c;
          margin: 0 0 20px; }
        #member_admin ul.list li.item .desc .price {
          font-size: 16px;
          color: #e60012;
          margin-bottom: 3px; }
        #member_admin ul.list li.item .desc .price_mobile {
          display: none;
          justify-content: space-between;
          align-items: baseline;
          max-width: 400px;
          line-height: 1em; }
          #member_admin ul.list li.item .desc .price_mobile .regular_price {
            color: #7d7d7d;
            font-size: 16px;
            position: relative; }
            #member_admin ul.list li.item .desc .price_mobile .regular_price:before {
              width: 100%;
              height: 1px;
              background: #7d7d7d;
              content: '';
              position: absolute;
              top: 50%; }
          #member_admin ul.list li.item .desc .price_mobile .sale_price {
            color: #e60012;
            font-size: 24px; }
        #member_admin ul.list li.item .desc .tag {
          border: 1px solid #007bff;
          padding: 2px 5px;
          line-height: 1em;
          font-size: 17px;
          float: left;
          margin-right: 5px; }
      #member_admin ul.list li.item .price {
        position: absolute;
        top: 10px;
        right: 60px;
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        width: 260px;
        line-height: 1em; }
        #member_admin ul.list li.item .price .regular_price {
          color: #7d7d7d;
          font-size: 16px;
          position: relative; }
          #member_admin ul.list li.item .price .regular_price:before {
            width: 100%;
            height: 1px;
            background: #7d7d7d;
            content: '';
            position: absolute;
            top: 50%; }
        #member_admin ul.list li.item .price .sale_price {
          color: #e60012;
          font-size: 24px;
          line-height: 1.5em; }
      #member_admin ul.list li.item .likeit {
        width: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative; }
        #member_admin ul.list li.item .likeit .collection {
          border: 1px solid #007bff;
          padding: 3px 15px;
          border-radius: 20px;
          position: absolute;
          right: 0;
          bottom: 10px; }
          #member_admin ul.list li.item .likeit .collection svg {
            width: 20px;
            margin-top: -3px; }
          #member_admin ul.list li.item .likeit .collection:hover {
            color: #fff;
            background: #007bff; }
          #member_admin ul.list li.item .likeit .collection.active {
            color: #fff;
            background: #007bff; }
      #member_admin ul.list li.item .book_info {
        width: 320px;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        align-content: center;
        height: 50px;
        position: absolute;
        bottom: 10px;
        right: 10px; }
        #member_admin ul.list li.item .book_info a {
          height: 35px;
          line-height: 1em;
          margin-left: 20px; }
    #member_admin ul.list li.item_book {
      position: relative;
      list-style-type: none;
      background: #fff;
      display: flex;
      padding: 10px 10px 20px 10px;
      margin-bottom: 14px;
      border-bottom: 1px solid #e0e0e0; }
      #member_admin ul.list li.item_book .pic {
        display: block;
        width: 200px; }
        #member_admin ul.list li.item_book .pic img {
          display: block;
          border: 1px solid #b0b0b0;
          width: 100%; }
      #member_admin ul.list li.item_book .desc {
        padding-left: 10px;
        width: calc(100% - 230px); }
        #member_admin ul.list li.item_book .desc h3 {
          margin: 0 0 20px;
          font-size: 22px;
          line-height: 1em; }
        #member_admin ul.list li.item_book .desc .address {
          font-size: 17px;
          font-weight: 300;
          color: #4c4c4c;
          margin: 0 0 5px; }
        #member_admin ul.list li.item_book .desc .spec {
          font-size: 17px;
          font-weight: 300;
          color: #4c4c4c;
          margin: 0 0 20px; }
        #member_admin ul.list li.item_book .desc .price {
          font-size: 16px;
          color: #e60012;
          margin-bottom: 3px; }
        #member_admin ul.list li.item_book .desc .price_mobile {
          display: none;
          align-items: baseline;
          min-width: 150px;
          line-height: 1em;
          flex-wrap: wrap;
          justify-content: flex-start !important; }
          #member_admin ul.list li.item_book .desc .price_mobile .regular_price {
            color: #7d7d7d;
            font-size: 16px;
            position: relative; }
            #member_admin ul.list li.item_book .desc .price_mobile .regular_price:before {
              width: 100%;
              height: 1px;
              background: #7d7d7d;
              content: '';
              position: absolute;
              top: 50%; }
          #member_admin ul.list li.item_book .desc .price_mobile .sale_price {
            color: #e60012;
            font-size: 24px;
            line-height: 1.5em; }
        #member_admin ul.list li.item_book .desc .tag {
          border: 1px solid #007bff;
          padding: 2px 5px;
          line-height: 1em;
          font-size: 17px;
          float: left;
          margin-right: 5px; }
      #member_admin ul.list li.item_book .price {
        position: absolute;
        top: 10px;
        right: 10px;
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        min-width: 150px;
        line-height: 1em; }
        #member_admin ul.list li.item_book .price .regular_price {
          color: #7d7d7d;
          font-size: 16px;
          position: relative; }
          #member_admin ul.list li.item_book .price .regular_price:before {
            width: 100%;
            height: 1px;
            background: #7d7d7d;
            content: '';
            position: absolute;
            top: 50%; }
        #member_admin ul.list li.item_book .price .sale_price {
          color: #e60012;
          font-size: 24px; }
      #member_admin ul.list li.item_book .book_info {
        width: 320px;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        align-content: center;
        height: 50px;
        position: absolute;
        bottom: 10px;
        right: 10px; }
        #member_admin ul.list li.item_book .book_info a {
          height: 35px;
          line-height: 1em;
          margin-left: 20px; }
  #member_admin .control {
    display: flex;
    justify-content: center; }
    #member_admin .control .btn {
      margin: 30px 40px;
      position: relative;
      text-align: center;
      align-content: center;
      align-items: center;
      justify-content: center;
      display: flex;
      line-height: 1em;
      padding: 10px 20px; }
      #member_admin .control .btn img {
        height: 22px;
        margin-right: 10px; }

/*  #member_admin */
@media screen and (max-width: 768px) {
  #member_admin ul.list li.item .price,
  #member_admin ul.list li.item_book .price {
    display: none; }
  #member_admin ul.list li.item_book {
    flex-wrap: wrap;
    padding: 10px 10px 50px 10px; }
    #member_admin ul.list li.item_book .desc {
      width: calc(100% - 200px); }
    #member_admin ul.list li.item_book .book_info {
      width: 100%;
      display: flex;
      bottom: 0;
      right: 15px; }
  #member_admin ul.list li.item .desc h3,
  #member_admin ul.list li.item_book .desc h3 {
    margin: 0 0 10px; }
  #member_admin ul.list li.item .desc .address,
  #member_admin ul.list li.item_book .desc .address {
    line-height: 1em;
    margin: 0 0 5px; }
  #member_admin ul.list li.item .desc .spec,
  #member_admin ul.list li.item_book .desc .spec {
    line-height: 1em;
    margin: 0 0 10px; }
  #member_admin ul.list li.item .desc .price_mobile,
  #member_admin ul.list li.item_book .desc .price_mobile {
    display: flex;
    margin-bottom: 15px; }
  #member_admin .data_desc {
    flex-wrap: wrap;
    justify-content: center; }
    #member_admin .data_desc .left {
      width: 100%;
      margin-bottom: 15px; }
    #member_admin .data_desc .btns {
      width: 100%;
      margin-left: 0; } }

@media screen and (max-width: 600px) {
  #member_admin .control .btn {
    margin: 30px 20px; }
  #member_admin ul.list li.item_book {
    padding: 10px 10px 50px 10px; }
    #member_admin ul.list li.item_book .pic {
      display: block;
      width: 130px; }
    #member_admin ul.list li.item_book .book_info {
      font-size: 14px;
      right: 0px; }
      #member_admin ul.list li.item_book .book_info a {
        font-size: 14px;
        height: auto;
        line-height: inherit; }
    #member_admin ul.list li.item_book .desc {
      width: calc(100% - 130px); }
      #member_admin ul.list li.item_book .desc h3 {
        font-size: 18px; }
      #member_admin ul.list li.item_book .desc .address {
        font-size: 14px; }
      #member_admin ul.list li.item_book .desc .spec {
        font-size: 14px; }
      #member_admin ul.list li.item_book .desc .tag {
        font-size: 13px; }
      #member_admin ul.list li.item_book .desc .price_mobile {
        justify-content: space-around;
        margin-bottom: 10px; }
        #member_admin ul.list li.item_book .desc .price_mobile .regular_price {
          font-size: 14px; }
        #member_admin ul.list li.item_book .desc .price_mobile .sale_price {
          font-size: 20px; }
  #member_admin {
    padding: 15px 10px; }
    #member_admin ul.list li.item {
      padding: 10px 5px 20px 10px; }
      #member_admin ul.list li.item .pic {
        display: block;
        width: 130px; }
      #member_admin ul.list li.item .desc {
        width: calc(100% - 160px); }
        #member_admin ul.list li.item .desc h3 {
          font-size: 18px; }
        #member_admin ul.list li.item .desc .address {
          font-size: 14px; }
        #member_admin ul.list li.item .desc .spec {
          font-size: 14px; }
        #member_admin ul.list li.item .desc .tag {
          font-size: 13px; }
        #member_admin ul.list li.item .desc .price_mobile {
          flex-wrap: wrap;
          justify-content: flex-start;
          margin-bottom: 10px; }
          #member_admin ul.list li.item .desc .price_mobile .regular_price {
            font-size: 14px;
            line-height: 1.5em; }
          #member_admin ul.list li.item .desc .price_mobile .sale_price {
            font-size: 20px; } }

.styled-checkbox {
  position: absolute;
  opacity: 0; }
  .styled-checkbox + label {
    position: relative;
    cursor: pointer;
    padding: 0; }
  .styled-checkbox + label:before {
    content: '';
    margin-right: 10px;
    display: inline-block;
    vertical-align: text-top;
    width: 20px;
    height: 20px;
    background: #fff;
    border: 2px solid #156dce; }
  .styled-checkbox:hover + label:before {
    background: #156dce; }
  .styled-checkbox:focus + label:before {
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.12); }
  .styled-checkbox:checked + label:before {
    background: #156dce; }
  .styled-checkbox:disabled + label {
    color: #b8b8b8;
    cursor: auto; }
  .styled-checkbox:disabled + label:before {
    box-shadow: none;
    background: #ddd; }
  .styled-checkbox:checked + label:after {
    content: '';
    position: absolute;
    left: 5px;
    top: 9px;
    background: white;
    width: 2px;
    height: 2px;
    box-shadow: 2px 0 0 white, 4px 0 0 white, 4px -2px 0 white, 4px -4px 0 white, 4px -6px 0 white, 4px -8px 0 white;
    transform: rotate(45deg); }

#search_map {
  width: 100%;
  padding: 0 15px 30px; }
  #search_map #map {
    max-width: 1180px;
    margin: 0 auto;
    height: 650px; }
  #search_map #house_list {
    padding-top: 50px; }
    #search_map #house_list ul.list {
      padding: 0;
      margin: 0; }
      #search_map #house_list ul.list li.item {
        list-style-type: none;
        background: #fff;
        display: flex;
        padding: 10px 10px 20px 10px;
        margin-bottom: 14px;
        border-bottom: 1px solid #e0e0e0; }
        #search_map #house_list ul.list li.item .pic {
          display: block;
          width: 200px; }
          #search_map #house_list ul.list li.item .pic img {
            display: block;
            border: 1px solid #b0b0b0;
            width: 100%; }
        #search_map #house_list ul.list li.item .desc {
          padding-left: 10px;
          width: calc(100% - 380px); }
          #search_map #house_list ul.list li.item .desc h3 {
            margin: 0 0 20px;
            font-size: 22px;
            line-height: 1em; }
          #search_map #house_list ul.list li.item .desc .address {
            font-size: 17px;
            font-weight: 300;
            color: #4c4c4c;
            margin: 0 0 5px; }
          #search_map #house_list ul.list li.item .desc .spec {
            font-size: 17px;
            font-weight: 300;
            color: #4c4c4c;
            margin: 0 0 20px; }
          #search_map #house_list ul.list li.item .desc .price {
            font-size: 16px;
            color: #e60012;
            margin-bottom: 3px; }
          #search_map #house_list ul.list li.item .desc .mobile_price {
            margin-bottom: 10px;
            top: 0;
            right: 0;
            display: none;
            justify-content: space-between;
            align-items: baseline;
            width: 150px;
            line-height: 1em; }
            #search_map #house_list ul.list li.item .desc .mobile_price .regular_price {
              color: #7d7d7d;
              font-size: 16px;
              position: relative; }
              #search_map #house_list ul.list li.item .desc .mobile_price .regular_price:before {
                width: 100%;
                height: 1px;
                background: #7d7d7d;
                content: '';
                position: absolute;
                top: 50%; }
            #search_map #house_list ul.list li.item .desc .mobile_price .sale_price {
              color: #e60012;
              font-size: 24px; }
          #search_map #house_list ul.list li.item .desc .tag {
            border: 1px solid #007bff;
            padding: 2px 5px;
            line-height: 1em;
            font-size: 17px;
            float: left;
            margin-right: 5px; }
        #search_map #house_list ul.list li.item .likeit {
          width: 180px;
          display: flex;
          justify-content: center;
          align-items: center;
          position: relative; }
          #search_map #house_list ul.list li.item .likeit .price {
            position: absolute;
            top: 0;
            right: 0;
            display: flex;
            justify-content: space-between;
            align-items: baseline;
            width: 150px;
            line-height: 1em; }
            #search_map #house_list ul.list li.item .likeit .price .regular_price {
              color: #7d7d7d;
              font-size: 16px;
              position: relative; }
              #search_map #house_list ul.list li.item .likeit .price .regular_price:before {
                width: 100%;
                height: 1px;
                background: #7d7d7d;
                content: '';
                position: absolute;
                top: 50%; }
            #search_map #house_list ul.list li.item .likeit .price .sale_price {
              color: #e60012;
              font-size: 24px; }
          #search_map #house_list ul.list li.item .likeit .collection {
            border: 1px solid #007bff;
            padding: 3px 15px;
            border-radius: 20px;
            position: absolute;
            right: 0;
            bottom: 10px; }
            #search_map #house_list ul.list li.item .likeit .collection svg {
              width: 20px;
              margin-top: -3px; }
            #search_map #house_list ul.list li.item .likeit .collection:hover {
              color: #fff;
              background: #007bff; }
            #search_map #house_list ul.list li.item .likeit .collection.active {
              color: #fff;
              background: #007bff; }
    #search_map #house_list .pagination {
      justify-content: center;
      padding: 20px 0; }

@media screen and (max-width: 768px) {
  #search_map #house_list ul.list li.item {
    flex-wrap: wrap; }
    #search_map #house_list ul.list li.item .pic {
      width: 40%; }
    #search_map #house_list ul.list li.item .desc {
      width: 60%; }
      #search_map #house_list ul.list li.item .desc h3 {
        font-size: 16px;
        margin-bottom: 10px; }
      #search_map #house_list ul.list li.item .desc .address {
        font-size: 15px;
        line-height: 1em;
        margin-bottom: 10px; }
      #search_map #house_list ul.list li.item .desc .mobile_price {
        display: flex; }
      #search_map #house_list ul.list li.item .desc .spec {
        font-size: 15px;
        line-height: 1em;
        margin-bottom: 10px; }
      #search_map #house_list ul.list li.item .desc .allTags .tag {
        font-size: 13px; }
    #search_map #house_list ul.list li.item .likeit {
      padding-top: 8px;
      width: 100%;
      justify-content: flex-end;
      flex-direction: row-reverse; }
      #search_map #house_list ul.list li.item .likeit .price {
        display: none; }
      #search_map #house_list ul.list li.item .likeit .collection {
        position: relative;
        bottom: 0;
        margin-left: 20px; } }

.bank_info {
  display: flex;
  max-width: 1210px;
  padding: 30px 15px;
  margin-left: auto;
  margin-right: auto;
  justify-content: space-between;
  align-items: center;
  align-content: center; }
  .bank_info .bank_pic {
    max-width: 300px; }
    .bank_info .bank_pic img {
      width: 100%; }
  .bank_info .action {
    display: flex; }
    .bank_info .action button {
      display: flex;
      align-items: center;
      margin: 0 20px;
      padding: 0px 15px;
      height: 35px;
      justify-content: center; }
      .bank_info .action button img {
        height: 23px;
        margin-right: 20px; }

.load_info {
  max-width: 1180px;
  background: #f3f2f6;
  margin: 0 auto;
  padding: 30px; }
  .load_info ol {
    padding-left: 25px; }
    .load_info ol li {
      line-height: 1.7em;
      font-size: 18px;
      color: #4c4c4c; }
  .load_info ul {
    padding-left: 0px; }
    .load_info ul li {
      list-style-type: none;
      line-height: 1.8em;
      margin-bottom: 2em; }
      .load_info ul li .q_text {
        color: #e60012;
        font-size: 18px; }
      .load_info ul li .a_text {
        color: #000000;
        font-size: 18px; }

.load_detail {
  /*  segmants */
  max-width: 1180px;
  background: #f3f2f6;
  margin: 0 auto; }
  .load_detail > .sec {
    padding: 20px 30px 30px 30px;
    border-top: 2px solid #e0e0e0; }
    .load_detail > .sec h3 {
      color: #156dce;
      font-size: 26px;
      margin-bottom: 20px;
      display: flex;
      align-items: baseline; }
      .load_detail > .sec h3 a {
        color: #156dce;
        margin-left: 2em;
        font-size: 18px; }
    .load_detail > .sec ol {
      padding-left: 25px; }
      .load_detail > .sec ol li {
        line-height: 1.7em;
        font-size: 18px;
        color: #4c4c4c; }
  .load_detail .box_info {
    display: flex; }
    .load_detail .box_info .sec {
      padding: 0  20px 0 0;
      margin: 0 20px 0 0;
      border-right: 1px solid #e0e0e0; }
      .load_detail .box_info .sec ul {
        padding: 0;
        margin: 0; }
        .load_detail .box_info .sec ul li {
          list-style-type: none; }

.saleman {
  display: flex;
  padding: 10px 20px 10px 0;
  border-bottom: 1px solid #e0e0e0;
  justify-content: flex-end;
  align-items: center; }
  .saleman .pic {
    margin-right: 10px; }
  .saleman .text .name {
    font-size: 15px;
    color: #000; }
  .saleman .text .tel {
    color: #e60012;
    font-size: 15px; }

@media screen and (max-width: 768px) {
  .breadcrumb .ibox a {
    font-size: 13px; }
  .breadcrumb .ibox > div {
    font-size: 13px; }
  .mtitle .box .title {
    font-size: 20px; }
  .load_detail > .sec h3 {
    font-size: 22px;
    flex-wrap: wrap; }
    .load_detail > .sec h3 a {
      width: 100%;
      font-size: 14px;
      margin-left: 0; }
  .load_detail > .sec .box_info {
    display: flex;
    flex-wrap: wrap; }
    .load_detail > .sec .box_info > .sec {
      width: 100%;
      padding: 0 0px 0 0;
      margin: 0 0px 20px 0;
      border-right: 0px; }
      .load_detail > .sec .box_info > .sec .saleman {
        justify-content: end; }
  .bank_info {
    flex-wrap: wrap;
    padding: 30px 0px; }
    .bank_info .bank_pic {
      width: 100%;
      margin: 0 auto 50px; }
    .bank_info .action {
      width: 100%;
      justify-content: center; }
      .bank_info .action button {
        margin: 0 15px; } }

.interior_info {
  max-width: 1180px;
  margin: 0 auto; }

.interior_detail {
  max-width: 1180px;
  margin: 0 auto;
  padding: 30px 0 0;
  margin-bottom: 30px;
  background: #f3f2f6; }
  .interior_detail .bt_line {
    border-bottom: 2px solid #e0e0e0;
    padding-bottom: 30px; }
  .interior_detail .gallery {
    padding-bottom: 30px;
    position: relative; }
    .interior_detail .gallery .left {
      display: block;
      position: absolute;
      left: 15px;
      top: 50%;
      z-index: 6; }
    .interior_detail .gallery .right {
      display: block;
      position: absolute;
      right: 15px;
      top: 50%;
      z-index: 6; }
    .interior_detail .gallery .slide {
      max-width: 800px;
      margin: auto; }
  .interior_detail .artist {
    padding-left: 30px;
    padding-right: 30px; }
    .interior_detail .artist ul {
      padding: 0;
      margin: 0; }
      .interior_detail .artist ul li {
        color: #4c4c4c;
        list-style-type: none;
        line-height: 1.7em;
        font-size: 18px; }
  .interior_detail .desc {
    padding-left: 30px;
    padding-right: 30px;
    margin-bottom: 30px;
    color: #4c4c4c;
    list-style-type: none;
    line-height: 1.7em;
    font-size: 18px; }
  .interior_detail h3 {
    padding-left: 30px;
    padding-right: 30px;
    color: #156dce;
    font-size: 26px;
    margin-bottom: 20px; }
  .interior_detail .contact {
    padding-left: 30px;
    padding-right: 30px; }
    .interior_detail .contact ul {
      padding: 0;
      margin: 0; }
      .interior_detail .contact ul li {
        color: #4c4c4c;
        list-style-type: none;
        line-height: 1.7em;
        font-size: 18px; }

.house_top {
  max-width: 1180px;
  padding: 30px 0px 30px;
  margin: 0 auto;
  display: flex; }
  .house_top .house_gallery {
    width: 60%;
    padding: 0 30px; }
    .house_top .house_gallery .slick-initialized .slick-slide {
      padding: 3px; }
    .house_top .house_gallery .slider-nav {
      position: relative; }
      .house_top .house_gallery .slider-nav .left {
        display: block;
        position: absolute;
        left: -25px;
        top: 50%;
        margin-top: -20px;
        z-index: 6; }
      .house_top .house_gallery .slider-nav .right {
        display: block;
        position: absolute;
        right: -25px;
        margin-top: -20px;
        top: 50%;
        z-index: 6; }
  .house_top .house_spec {
    width: 40%;
    padding: 15px; }
    .house_top .house_spec .inner {
      padding-bottom: 30px;
      border-bottom: 1px solid #e0e0e0;
      margin-bottom: 30px; }
      .house_top .house_spec .inner ul {
        margin: 0;
        padding: 0; }
        .house_top .house_spec .inner ul li {
          display: flex;
          align-items: center;
          line-height: 1.5em;
          margin-bottom: 10px;
          list-style-type: none;
          font-size: 18px; }
          .house_top .house_spec .inner ul li .tl {
            width: 100px;
            color: #7d7d7d; }
    .house_top .house_spec .action {
      display: flex;
      align-content: center;
      justify-content: center; }
      .house_top .house_spec .action .btn {
        margin: 0 10px;
        display: flex;
        align-content: center;
        align-items: center; }
        .house_top .house_spec .action .btn img {
          height: 20px;
          margin-right: 20px; }

.gallery360 {
  position: relative;
  max-width: 1180px;
  margin: 0 auto; }
  .gallery360 a.btn {
    position: absolute;
    max-width: 140px;
    margin-top: -70px;
    margin-left: -70px;
    top: 50%;
    left: 50%; }
    .gallery360 a.btn img {
      display: block; }
  .gallery360 img {
    width: 100%;
    display: block; }

.house_info_width,
.house_info {
  max-width: 1180px;
  padding: 30px 30px 0px;
  margin-left: auto;
  margin-right: auto;
  background: #f3f2f6;
  font-size: 18px; }
  
  .house_info_width.last,
  .house_info.last {
    margin-bottom: 30px;
    padding-bottom: 30px; }
  .house_info_width h3,
  .house_info h3 {
    color: #156dce;
    font-size: 26px;
    margin-bottom: 20px; }
  .house_info_width ul,
  .house_info ul {
    margin: 0;
    padding: 0; }
    .house_info_width ul li,
    .house_info ul li {
      list-style-type: none; }
  .house_info_width.bt_line,
  .house_info.bt_line {
    border-bottom: 2px solid #e0e0e0;
    padding-bottom: 30px; }
  .house_info_width .box_info,
  .house_info .box_info {
    display: flex;
    padding-bottom: 20px; }
    .house_info_width .box_info .sec,
    .house_info .box_info .sec {
      border-right: 2px solid #e0e0e0;
      margin-right: 20px;
      padding-right: 20px; }
      .house_info_width .box_info .sec ul li,
      .house_info .box_info .sec ul li {
        display: flex;
        align-items: center;
        line-height: 1.5em;
        margin-bottom: 10px;
        list-style-type: none;
        font-size: 18px; }
        .house_info_width .box_info .sec ul li .tl,
        .house_info .box_info .sec ul li .tl {
          width: 100px;
          color: #7d7d7d; }
  .house_info_width .house_gmap,
  .house_info .house_gmap {
    position: relative; }
    .house_info_width .house_gmap #map,
    .house_info .house_gmap #map {
      width: 100%;
      height: 300px; }
    .house_info_width .house_gmap .navi,
    .house_info .house_gmap .navi {
      position: absolute;
      color: #fff;
      top: 230px;
      right: 15px;
      font-size: 20px;
      background: rgba(21, 109, 206, 0.8);
      padding: 10px 15px 10px 40px;
      border-radius: 5px;
      line-height: 1em; }
      .house_info_width .house_gmap .navi img,
      .house_info .house_gmap .navi img {
        height: 24px;
        left: 16px;
        top: 8px;
        position: absolute; }
    .house_info_width .house_gmap .road,
    .house_info .house_gmap .road {
      padding: 10px 20px;
      font-size: 18px;
      font-weight: 300; }
  .house_info_width table.price_table,
  .house_info table.price_table {
    width: 100%;
    max-width: 850px;
    margin: 0 auto; }
    .house_info_width table.price_table th,
    .house_info table.price_table th {
      background: #e8e8e8; }
    .house_info_width table.price_table td,
    .house_info table.price_table td {
      background: #fff; }
    .house_info_width table.price_table th, .house_info_width table.price_table td,
    .house_info table.price_table th,
    .house_info table.price_table td {
      text-align: center;
      border: 1px solid #a9a9a9;
      padding: 5px 2px;
      font-size: 18px; }

.house_info_width {
  padding: 30px 0px 0px; }
  .house_info_width .gallery {
    padding-bottom: 30px;
    position: relative; }
    .house_info_width .gallery .left {
      display: block;
      position: absolute;
      left: 15px;
      top: 50%;
      margin-top: -20px;
      z-index: 6; }
    .house_info_width .gallery .right {
      display: block;
      position: absolute;
      right: 15px;
      margin-top: -20px;
      top: 50%;
      z-index: 6; }
    .house_info_width .gallery .slide {
      max-width: 800px;
      margin: auto; }

@media screen and (max-width: 768px) {
  .house_top {
    flex-wrap: wrap; }
    .house_top .house_gallery {
      width: 100%;
      overflow-x: hidden; }
    .house_top .house_spec {
      width: 100%;
      padding: 15px 30px; }
  .house_info .box_info {
    flex-wrap: wrap; }
    .house_info .box_info .sec {
      width: 100%;
      border-right: 0px;
      margin-right: 0px;
      padding-right: 0px;
      border-bottom: 1px solid #e0e0e0;
      margin-bottom: 10px;
      padding-bottom: 10px; }
  .house_info.bt_line {
    /*padding-bottom: 30px 15px; 20200614 刪除*/
	padding: 30px 0 0px; /*20200614 新增*/
	}
    .house_info.bt_line table.price_table th,
    .house_info.bt_line table.price_table td {
      font-size: 13px;
		word-break: break-all; /*20200614 新增*/
	}
  .house_info_width .gallery {
    width: 100%;
    overflow-x: hidden; } }

/*  Home */
.home_top_gallery {
  width: 100%;
  overflow-x: hidden;
  margin-bottom: 0 !important; }
  .home_top_gallery .item {
    background-size: cover;
    background-position: center;
    height: 560px;
    width: 100%; }
    .home_top_gallery .item .inner {
      height: 560px;
      max-width: 1180px;
      margin: auto;
      display: flex;
      align-items: center; }
      .home_top_gallery .item .inner .info_box {
        width: 450px;
        padding: 30px 0;
        background-image: url(/public/images/msgbox.png);
        background-size: cover;
        background-repeat: no-repeat;
        color: #fff;
        text-align: center;
        text-shadow: 0 0 5px #333; }
        .home_top_gallery .item .inner .info_box h3 {
          font-size: 40px; }
        .home_top_gallery .item .inner .info_box h5 {
          font-size: 25px;
          margin-bottom: 30px;
          line-height: 1.7em; }
        .home_top_gallery .item .inner .info_box a {
          padding: 5px 50px; }
  .home_top_gallery .slick-slide {
    outline: none; }
  .home_top_gallery .slick-dots {
    bottom: 30px;
    z-index: 5;
    display: none; }
    .home_top_gallery .slick-dots button {
      position: relative;
      border-radius: 50%;
      transition: 0.3s; }
      .home_top_gallery .slick-dots button:before {
        height: 6px;
        width: 6px;
        opacity: 1;
        position: absolute;
        top: 50%;
        left: 50%;
        margin-top: -3px;
        margin-left: -3px;
        border-radius: 50%;
        background: #ffffff; }
      .home_top_gallery .slick-dots button:hover:before {
        background: #156dce; }
    .home_top_gallery .slick-dots .slick-active button {
      border-radius: 50%;
      border: 1px solid #156dce; }
      .home_top_gallery .slick-dots .slick-active button:before {
        opacity: 1;
        height: 6px;
        width: 6px;
        border-radius: 50%;
        background: #156dce; }

.submenu {
  background: #efecf7; }
  .submenu ul {
    max-width: 1024px;
    margin: 0 auto;
    padding: 0;
    height: 150px;
    align-items: center;
    display: flex; }
    .submenu ul li {
      position: relative;
      list-style-type: none;
      width: 20%;
      display: flex;
      justify-content: center;
      height: 110px;
      align-items: center; }
      .submenu ul li:hover a .icon {
        background-color: #156dd1; }
      .submenu ul li:before {
        content: '';
        position: absolute;
        right: 0;
        top: 0;
        width: 1px;
        height: 92px;
        background: #d1d0d3; }
      .submenu ul li.active {
        position: relative; }
        .submenu ul li.active:after {
          position: absolute;
          content: "";
          width: 100%;
          height: 5px;
          background: #156dd1;
          bottom: 0;
          left: 0; }
        .submenu ul li.active a .icon {
          background-color: #156dd1; }
      .submenu ul li a {
        color: #000;
        text-align: center;
        font-size: 15px;
        font-weight: 300;
        margin-bottom: 12px; }
        .submenu ul li a .icon {
          width: 60px;
          height: 60px;
          border-radius: 50%;
          background: #c5c5c5;
          margin: 0 auto 5px;
          background-size: 90%;
          background-repeat: no-repeat; }
        .submenu ul li a.m1 .icon {
          background-image: url(/public/images/hp1.png);
          background-position: center;
          background-size: 50%; }
        .submenu ul li a.m2 .icon {
          background-image: url(/public/images/hp2.png);
          background-position: center;
          background-size: 45%; }
        .submenu ul li a.m3 .icon {
          background-image: url(/public/images/hp3.png);
          background-position: center;
          background-size: 45%; }
        .submenu ul li a.m4 .icon {
          background-image: url(/public/images/hp4.png);
          background-position: center;
          background-size: 50%; }
        .submenu ul li a.m5 .icon {
          background-image: url(/public/images/hp5.png);
          background-position: center;
          background-size: 50%; }

@media screen and (max-width: 1180px) {
  .sect2 .text.left h3.ribbon {
    padding-left: 50px !important; }
  .sect2 .text.left .list {
    margin-left: 50px !important; } }

@media screen and (max-width: 1050px) {
  .sect2 .text.right h3.ribbon,
  .sect2 .text.left h3.ribbon {
    padding-left: 20px !important;
    padding-right: 20px !important; }
  .sect2 .text.right .list,
  .sect2 .text.left .list {
    margin-left: 20px !important;
    padding-right: 20px !important; } }

#home_map {
  width: 100%;
  height: 490px;
  margin: auto; }

.home_pre_sale {
  width: 100%;
  overflow-x: hidden; }
  .home_pre_sale .slick-dots button {
    position: relative;
    border-radius: 50%;
    transition: 0.3s; }
    .home_pre_sale .slick-dots button:before {
      height: 6px;
      width: 6px;
      position: absolute;
      top: 50%;
      left: 50%;
      margin-top: -3px;
      margin-left: -3px;
      border-radius: 50%;
      opacity: 1;
      background: #c0c0c0; }
    .home_pre_sale .slick-dots button:hover:before {
      background: #156dce; }
  .home_pre_sale .slick-dots .slick-active button {
    border-radius: 50%;
    border: 1px solid #156dce; }
    .home_pre_sale .slick-dots .slick-active button:before {
      opacity: 1;
      height: 6px;
      width: 6px;
      border-radius: 50%;
      background: #156dce; }
  .home_pre_sale .action {
    padding: 30px 0 50px;
    text-align: center; }
    .home_pre_sale .action .more {
      padding: 5px 80px; }

.pre_sale {
  max-width: 1190px;
  margin: 0 auto;
  padding: 30px 30px 0;
  display: flex;
  flex-wrap: wrap; }
  .pre_sale .house {
    border: 1px solid #c2c2c2;
    width: calc(25% - 20px);
    margin: 0 10px;
    padding: 10px;
    margin-bottom: 30px;
    position: relative; }
    .pre_sale .house .heart {
      position: absolute;
      top: 20px;
      right: 20px;
      z-index: 6;
      display: block;
      width: 32px; }
    .pre_sale .house .pic {
      border: 2px solid #b0b0b0;
      margin-bottom: 10px; }
    .pre_sale .house h3 {
      font-size: 20px;
      margin-bottom: 0; }
    .pre_sale .house .address {
      font-size: 16px;
      color: #4c4c4c; }
    .pre_sale .house .spec {
      font-size: 16px;
      color: #4c4c4c; }
    .pre_sale .house .price {
      font-size: 18px;
      color: #e60012;
      font-weight: 600;
      margin-bottom: 5px; }
    .pre_sale .house .tags {
      display: flex; }
      .pre_sale .house .tags .tag {
        border: 1px solid #156dce;
        padding: 2px 5px;
        margin-right: 5px;
        line-height: 1em;
        color: #156dce;
        font-size: 12px; }

/*  ==================================================================================  */
.sect2 {
  display: flex; }
  .sect2 .pic_bk {
    width: 50%;
    position: relative;
    height: 500px; }
    .sect2 .pic_bk .bk_img {
      height: 100%;
      width: 100%;
      background-size: cover;
      background-position: center; }
      .sect2 .pic_bk .bk_img img {
        width: 100%;
        opacity: 0;
        display: none; }
  .sect2 .text {
    width: 50%;
    padding: 30px 0 50px 0px;
    background: #efecf6; }
    .sect2 .text h3.ribbon {
      background-image: url("/public/images/ripon1.png");
      background-position: 0 bottom;
      background-size: cover;
      background-repeat: no-repeat;
      color: #fff;
      height: 66px;
      display: flex;
      align-items: center;
      margin-bottom: 30px; }
    .sect2 .text .list ul {
      margin: 0;
      padding: 0; }
      .sect2 .text .list ul li {
        line-height: 1em;
        padding-bottom: 20px;
        margin-bottom: 20px;
        border-bottom: 1px solid #d6d5da;
        list-style-type: none;
        display: flex;
        align-items: center;
        justify-content: space-between;
        max-width: 430px; }
    .sect2 .text .list .more {
      padding: 5px 40px; }

.sect2 .text.right h3.ribbon {
  padding-left: 50px; }

.sect2 .text.right .list {
  margin-left: 50px; }

.sect2 .text.left h3.ribbon {
  text-align: right;
  padding-left: calc(50vw - 590px); }

.sect2 .text.left .list {
  margin-left: calc(50vw - 590px); }

@media screen and (max-width: 768px) {
  .pre_sale .house {
    width: calc(50% - 20px); }
  .sect2 {
    flex-wrap: wrap; }
    .sect2 .pic_bk {
      width: 100%;
      position: relative;
      height: 350px; }
    .sect2 .text.left,
    .sect2 .text.right {
      width: 100%; }
      .sect2 .text.left h3.ribbon,
      .sect2 .text.right h3.ribbon {
        padding-left: 15px;
        font-size: 20px; }
      .sect2 .text.left .list,
      .sect2 .text.right .list {
        margin-left: 15px !important;
        margin-right: 15px; }
        .sect2 .text.left .list ul li,
        .sect2 .text.right .list ul li {
          max-width: none; }
  .sect2.end {
    flex-direction: column-reverse; }
    .sect2.end .text.left h3.ribbon {
      font-size: 20px;
      padding-left: 15px;
      height: 55px; } }

@media screen and (max-width: 450px) {
  .pre_sale {
    padding: 20px 20px 0; }
    .pre_sale .house {
      width: calc(100% - 30px); } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC5zY3NzIiwiYm9vdHN0cmFwL19mdW5jdGlvbnMuc2NzcyIsImJvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCJib290c3RyYXAvX21peGlucy5zY3NzIiwiYm9vdHN0cmFwL3ZlbmRvci9fcmZzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19kZXByZWNhdGUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ob3Zlci5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9faW1hZ2Uuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JhZGdlLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNpemUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdmlzaWJpbGl0eS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYWxlcnQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2NhcmV0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19saXN0cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYm94LXNoYWRvdy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2Zsb2F0LnNjc3MiLCJib290c3RyYXAvX3Jvb3Quc2NzcyIsImJvb3RzdHJhcC9fcmVib290LnNjc3MiLCJib290c3RyYXAvX3R5cGUuc2NzcyIsImJvb3RzdHJhcC9faW1hZ2VzLnNjc3MiLCJib290c3RyYXAvX2NvZGUuc2NzcyIsImJvb3RzdHJhcC9fZ3JpZC5zY3NzIiwiYm9vdHN0cmFwL190YWJsZXMuc2NzcyIsImJvb3RzdHJhcC9fZm9ybXMuc2NzcyIsImJvb3RzdHJhcC9fYnV0dG9ucy5zY3NzIiwiYm9vdHN0cmFwL190cmFuc2l0aW9ucy5zY3NzIiwiYm9vdHN0cmFwL19kcm9wZG93bi5zY3NzIiwiYm9vdHN0cmFwL19idXR0b24tZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9faW5wdXQtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9fY3VzdG9tLWZvcm1zLnNjc3MiLCJib290c3RyYXAvX25hdi5zY3NzIiwiYm9vdHN0cmFwL19uYXZiYXIuc2NzcyIsImJvb3RzdHJhcC9fY2FyZC5zY3NzIiwiYm9vdHN0cmFwL19icmVhZGNydW1iLnNjc3MiLCJib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsImJvb3RzdHJhcC9fYmFkZ2Uuc2NzcyIsImJvb3RzdHJhcC9fanVtYm90cm9uLnNjc3MiLCJib290c3RyYXAvX2FsZXJ0LnNjc3MiLCJib290c3RyYXAvX3Byb2dyZXNzLnNjc3MiLCJib290c3RyYXAvX21lZGlhLnNjc3MiLCJib290c3RyYXAvX2xpc3QtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9fY2xvc2Uuc2NzcyIsImJvb3RzdHJhcC9fdG9hc3RzLnNjc3MiLCJib290c3RyYXAvX21vZGFsLnNjc3MiLCJib290c3RyYXAvX3Rvb2x0aXAuc2NzcyIsImJvb3RzdHJhcC9fcG9wb3Zlci5zY3NzIiwiYm9vdHN0cmFwL19jYXJvdXNlbC5zY3NzIiwiYm9vdHN0cmFwL19zcGlubmVycy5zY3NzIiwiYm9vdHN0cmFwL191dGlsaXRpZXMuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19jbGVhcmZpeC5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2ZsZXguc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3NjcmVlbnJlYWRlcnMuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3RleHQuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsImJvb3RzdHJhcC9fcHJpbnQuc2NzcyIsInNsaWNrLnNjc3MiLCJ0cGwvcmVzZXQuc2NzcyIsInRwbC9oZWFkZXIuc2NzcyIsInRwbC9mb290ZXIuc2NzcyIsInRwbC9jb21wb25lbnQuc2NzcyIsInRwbC9wcmVzYWxlLnNjc3MiLCJ0cGwvbG9hbl9saXN0LnNjc3MiLCJ0cGwvZGVjb19saXN0LnNjc3MiLCJ0cGwvcGFnbmF0aW9uLnNjc3MiLCJ0cGwvc2VhcmNoX2hvdXNlLnNjc3MiLCJ0cGwvcGF5X2hvdXNlLnNjc3MiLCJ0cGwvbW9kYWwuc2NzcyIsInRwbC9sb2dpbi5zY3NzIiwidHBsL21lbWJlci5zY3NzIiwidHBsL21hcC5zY3NzIiwidHBsL2xvYW5fZGV0YWlsLnNjc3MiLCJ0cGwvaW50ZXJpb3JfaW5mby5zY3NzIiwidHBsL2hvdXNlX2RldGFpbC5zY3NzIiwiaG9tZS90b3BfZ2FsbGVyeS5zY3NzIiwiaG9tZS9tYXAuc2NzcyIsImhvbWUvaG9tZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIlxuXG4gLy8gQGltcG9ydCBcImJvb3RzdHJhcFwiO1xuXG5cbkBpbXBvcnQgXCJib290c3RyYXAvYm9vdHN0cmFwXCI7XG5AaW1wb3J0IFwic2xpY2tcIjtcbkBpbXBvcnQgXCJ0cGwvcmVzZXRcIjtcbkBpbXBvcnQgXCJ0cGwvaGVhZGVyXCI7XG5AaW1wb3J0IFwidHBsL2Zvb3RlclwiO1xuQGltcG9ydCBcInRwbC9jb21wb25lbnRcIjtcbkBpbXBvcnQgXCJ0cGwvcHJlc2FsZVwiO1xuQGltcG9ydCBcInRwbC9sb2FuX2xpc3RcIjtcbkBpbXBvcnQgXCJ0cGwvZGVjb19saXN0XCI7XG5AaW1wb3J0IFwidHBsL3BhZ25hdGlvblwiO1xuQGltcG9ydCBcInRwbC9zZWFyY2hfaG91c2VcIjtcbkBpbXBvcnQgXCJ0cGwvcGF5X2hvdXNlXCI7XG5AaW1wb3J0IFwidHBsL21vZGFsXCI7XG5AaW1wb3J0IFwidHBsL2xvZ2luXCI7XG5AaW1wb3J0IFwidHBsL21lbWJlclwiO1xuQGltcG9ydCBcInRwbC9tYXBcIjtcbkBpbXBvcnQgXCJ0cGwvbG9hbl9kZXRhaWxcIjtcbkBpbXBvcnQgXCJ0cGwvaW50ZXJpb3JfaW5mb1wiO1xuQGltcG9ydCBcInRwbC9ob3VzZV9kZXRhaWxcIjtcblxuXG4vKiAgSG9tZSAqL1xuQGltcG9ydCBcImhvbWUvdG9wX2dhbGxlcnlcIjtcbkBpbXBvcnQgXCJob21lL21hcFwiO1xuQGltcG9ydCBcImhvbWUvaG9tZVwiO1xuXG4vLyAgQGltcG9ydCBcImJvb3RzdHJhcF9zZWxlY3RcIjtcblxuXG5cbiIsIi8qIVxuICogQm9vdHN0cmFwIHY0LjMuMSAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMTkgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE5IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cblxuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcInJvb3RcIjtcbkBpbXBvcnQgXCJyZWJvb3RcIjtcbkBpbXBvcnQgXCJ0eXBlXCI7XG5AaW1wb3J0IFwiaW1hZ2VzXCI7XG5AaW1wb3J0IFwiY29kZVwiO1xuQGltcG9ydCBcImdyaWRcIjtcbkBpbXBvcnQgXCJ0YWJsZXNcIjtcbkBpbXBvcnQgXCJmb3Jtc1wiO1xuQGltcG9ydCBcImJ1dHRvbnNcIjtcbkBpbXBvcnQgXCJ0cmFuc2l0aW9uc1wiO1xuQGltcG9ydCBcImRyb3Bkb3duXCI7XG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjdXN0b20tZm9ybXNcIjtcbkBpbXBvcnQgXCJuYXZcIjtcbkBpbXBvcnQgXCJuYXZiYXJcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJiYWRnZVwiO1xuQGltcG9ydCBcImp1bWJvdHJvblwiO1xuQGltcG9ydCBcImFsZXJ0XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJtZWRpYVwiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuQGltcG9ydCBcInRvYXN0c1wiO1xuQGltcG9ydCBcIm1vZGFsXCI7XG5AaW1wb3J0IFwidG9vbHRpcFwiO1xuQGltcG9ydCBcInBvcG92ZXJcIjtcbkBpbXBvcnQgXCJjYXJvdXNlbFwiO1xuQGltcG9ydCBcInNwaW5uZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwicHJpbnRcIjtcbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdWF0aW5nIHNvdXJjZSBjb2RlIGFjcm9zcyBvdXIgdmFyaWFibGVzLCBtYXBzLCBhbmQgbWl4aW5zLlxuXG4vLyBBc2NlbmRpbmdcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCBvciB1bml0KCRudW0pID09IFwiJVwiIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFN0YXJ0cyBhdCB6ZXJvXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXAsICRtYXAtbmFtZTogXCIkZ3JpZC1icmVha3BvaW50c1wiKSB7XG4gICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgfVxufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3RcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yLCAkZGFyazogJHlpcS10ZXh0LWRhcmssICRsaWdodDogJHlpcS10ZXh0LWxpZ2h0KSB7XG4gICRyOiByZWQoJGNvbG9yKTtcbiAgJGc6IGdyZWVuKCRjb2xvcik7XG4gICRiOiBibHVlKCRjb2xvcik7XG5cbiAgJHlpcTogKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xuXG4gIEBpZiAoJHlpcSA+PSAkeWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkKSB7XG4gICAgQHJldHVybiAkZGFyaztcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkbGlnaHQ7XG4gIH1cbn1cblxuLy8gUmV0cmlldmUgY29sb3IgU2FzcyBtYXBzXG5AZnVuY3Rpb24gY29sb3IoJGtleTogXCJibHVlXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gdGhlbWUtY29sb3IoJGtleTogXCJwcmltYXJ5XCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gZ3JheSgka2V5OiBcIjEwMFwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkZ3JheXMsICRrZXkpO1xufVxuXG4vLyBSZXF1ZXN0IGEgdGhlbWUgY29sb3IgbGV2ZWxcbkBmdW5jdGlvbiB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3ItbmFtZTogXCJwcmltYXJ5XCIsICRsZXZlbDogMCkge1xuICAkY29sb3I6IHRoZW1lLWNvbG9yKCRjb2xvci1uYW1lKTtcbiAgJGNvbG9yLWJhc2U6IGlmKCRsZXZlbCA+IDAsICRibGFjaywgJHdoaXRlKTtcbiAgJGxldmVsOiBhYnMoJGxldmVsKTtcblxuICBAcmV0dXJuIG1peCgkY29sb3ItYmFzZSwgJGNvbG9yLCAkbGV2ZWwgKiAkdGhlbWUtY29sb3ItaW50ZXJ2YWwpO1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgODAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICBsaWdodGVuKCR0YWJsZS1kYXJrLWJnLCA3LjUlKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLWxldmVsOiAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWxldmVsOiAgICAgICAgICAtNiAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRsYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtfSArICN7JGlucHV0LXBhZGRpbmcteSAqIDJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXl9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW19ICsgI3skaW5wdXQtcGFkZGluZy15IC8gMn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIDFlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXkgKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtfSArICN7JGlucHV0LWJ0bi1wYWRkaW5nLXktc20gKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtfSArICN7JGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2IDIuOTc0IDcuMjUgOCAyLjE5M3onLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM2UlM2NwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAvIDIgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBjYWxjKCN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplfSAtICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0fSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yIG5vLXJlcGVhdCByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBjYWxjKCgxZW0gKyAjezIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXl9KSAqIDMgLyA0ICsgI3skY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZ30pICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNlJTNjY2lyY2xlIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNlJTNjL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIGNhbGMoI3skY2FyZC1ib3JkZXItcmFkaXVzfSAtICN7JGNhcmQtYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41LTIuNS0yLjUgMi41LTIuNS0xLjUtMS41eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBUb2dnbGVzXG4vL1xuLy8gVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIGNlcnRhaW4gdGhlbWUgZmVhdHVyZXMuXG5cbi8vIFZlbmRvclxuQGltcG9ydCBcInZlbmRvci9yZnNcIjtcblxuLy8gRGVwcmVjYXRlXG5AaW1wb3J0IFwibWl4aW5zL2RlcHJlY2F0ZVwiO1xuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaG92ZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYmFkZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NjcmVlbi1yZWFkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1oaWRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtdHJ1bmNhdGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmlzaWJpbGl0eVwiO1xuXG4vLyAvLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0XCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyAvLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ib3gtc2hhZG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuQGltcG9ydCBcIm1peGlucy90cmFuc2l0aW9uXCI7XG5cbi8vIC8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zsb2F0XCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgZm9udC1yZXNpemluZ1xuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXG4gICAgJHJmcy1zdGF0aWM6IG51bGw7XG4gICAgJHJmcy1mbHVpZDogbnVsbDtcblxuICAgIC8vIFJlbW92ZSBweC11bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcbiAgICBAaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0ge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcHgge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcbiAgICBAaWYgJGZzID4gJHJmcy1iYXNlLWZvbnQtc2l6ZSBhbmQgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgJG1pbi13aWR0aDogbnVsbDtcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3skZnMtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3skZnMtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuXG4gICAgLy8gUmVuZGVyaW5nXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcbiAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRtcS12YWx1ZTogbnVsbDtcblxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgQGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IGVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0ID09IHJlbSB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4IHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcbiAgICAgICAgLy8gd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAgICAgJixcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW4gdXNlcyBSRlMgdG8gcmVzY2FsZSBmb250IHNpemVzXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiLy8gRGVwcmVjYXRlIG1peGluXG4vL1xuLy8gVGhpcyBtaXhpbiBjYW4gYmUgdXNlZCB0byBkZXByZWNhdGUgbWl4aW5zIG9yIGZ1bmN0aW9ucy5cbi8vIGAkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzYCBpcyBhIGdsb2JhbCB2YXJpYWJsZSwgYCRpZ25vcmUtd2FybmluZ2AgaXMgYSB2YXJpYWJsZSB0aGF0IGNhbiBiZSBwYXNzZWQgdG9cbi8vIHNvbWUgZGVwcmVjYXRlZCBtaXhpbnMgdG8gc3VwcHJlc3MgdGhlIHdhcm5pbmcgKGZvciBleGFtcGxlIGlmIHRoZSBtaXhpbiBpcyBzdGlsbCBiZSB1c2VkIGluIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgQm9vdHN0cmFwKVxuQG1peGluIGRlcHJlY2F0ZSgkbmFtZSwgJGRlcHJlY2F0ZS12ZXJzaW9uLCAkcmVtb3ZlLXZlcnNpb24sICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgQGlmICgkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzICE9IGZhbHNlIGFuZCAkaWdub3JlLXdhcm5pbmcgIT0gdHJ1ZSkge1xuICAgIEB3YXJuIFwiI3skbmFtZX0gaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiAjeyRkZXByZWNhdGUtdmVyc2lvbn0uIEl0IHdpbGwgYmUgcmVtb3ZlZCBlbnRpcmVseSBpbiAjeyRyZW1vdmUtdmVyc2lvbn0uXCI7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG92ZXIgbWl4aW4gYW5kIGAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5YCBhcmUgZGVwcmVjYXRlZC5cbi8vXG4vLyBPcmlnaW5hbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcbi8vIGRlc2lnbmVkIHRvIHByZXZlbnQgYDpob3ZlcmAgc3RpY2tpbmVzcyBvbiBpT1MtYW4gaXNzdWUgd2hlcmUgaG92ZXIgc3R5bGVzXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXG4vL1xuLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlJ3ZlIGtlcHQgdGhlc2UgbWl4aW5zIGFuZCB1cGRhdGVkIHRoZW0gdG9cbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc2V1ZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTE5NVxuXG5AbWl4aW4gaG92ZXIge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRiYWRnZS1mb2N1cy13aWR0aCByZ2JhKCRiZywgLjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbn1cbiIsIi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwczovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgc2l6ZSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFZpc2liaWxpdHlcblxuQG1peGluIGludmlzaWJsZSgkdmlzaWJpbGl0eSkge1xuICB2aXNpYmlsaXR5OiAkdmlzaWJpbGl0eSAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW52aXNpYmxlKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0IHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXA7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGljb247XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsICRpY29uICRjdXN0b20tc2VsZWN0LWJnIG5vLXJlcGVhdCAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uIC8gJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5mb3JtLWNvbnRyb2wtZmlsZSB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcblxuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG4iLCJAbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICRyZXN1bHQ6ICgpO1xuXG4gICAgQGlmIChsZW5ndGgoJHNoYWRvdykgPT0gMSkge1xuICAgICAgLy8gV2UgY2FuIHBhc3MgYEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7YFxuICAgICAgJHJlc3VsdDogJHNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEZpbHRlciB0byBhdm9pZCBpbnZhbGlkIHByb3BlcnRpZXMgZm9yIGV4YW1wbGUgYGJveC1zaGFkb3c6IG5vbmUsIDFweCAxcHggYmxhY2s7YFxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHNoYWRvdykge1xuICAgICAgICBAaWYgbnRoKCRzaGFkb3csICRpKSAhPSBcIm5vbmVcIiB7XG4gICAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIG50aCgkc2hhZG93LCAkaSksIFwiY29tbWFcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGlmIChsZW5ndGgoJHJlc3VsdCkgPiAwKSB7XG4gICAgICBib3gtc2hhZG93OiAkcmVzdWx0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQG1peGluIGZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZsb2F0LWxlZnRgIG1peGluXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG5AbWl4aW4gZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1yaWdodGAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbkBtaXhpbiBmbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1ub25lYCBtaXhpblwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgYXQtcnVsZS1uby12ZW5kb3ItcHJlZml4LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNVxufVxuXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIFN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lIG9uIGVsZW1lbnRzIHRoYXQgY2Fubm90IGJlIGFjY2Vzc2VkIHZpYSBrZXlib2FyZC5cbi8vIFRoaXMgcHJldmVudHMgYW4gdW53YW50ZWQgZm9jdXMgb3V0bGluZSBmcm9tIGFwcGVhcmluZyBhcm91bmQgZWxlbWVudHMgdGhhdFxuLy8gbWlnaHQgc3RpbGwgcmVzcG9uZCB0byBwb2ludGVyIGV2ZW50cy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2Vcblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gNS4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDFcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICBib3JkZXItYm90dG9tOiAwOyAvLyA0XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gNVxufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG59XG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDgwJSk7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDc1JSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy9cbi8vIExpbmtzXG4vL1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpXG4vLyB3aGljaCBoYXZlIG5vdCBiZWVuIG1hZGUgZXhwbGljaXRseSBrZXlib2FyZC1mb2N1c2FibGUgKHdpdGhvdXQgdGFiaW5kZXgpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKTpub3QoW3RhYmluZGV4XSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cblxuLy9cbi8vIENvZGVcbi8vXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbnByZSB7XG4gIC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuICBtYXJnaW4tdG9wOiAwO1xuICAvLyBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG4vL1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxufVxuXG5zdmcge1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgU1ZHIG92ZXJmbG93IGJ1ZyBpbiBJRTEwLzExIGlzIHN0aWxsIHJlcXVpcmVkLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNjg3OFxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG50aCB7XG4gIC8vIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgZnJvbSB0aGUgYDxib2R5PmAsIG9yIHRoZVxuICAvLyBjbG9zZXN0IHBhcmVudCB3aXRoIGEgc2V0IGB0ZXh0LWFsaWduYC5cbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbmxhYmVsIHtcbiAgLy8gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAkbGFiZWwtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBXb3JrIGFyb3VuZCBhIEZpcmVmb3gvSUUgYnVnIHdoZXJlIHRoZSB0cmFuc3BhcmVudCBgYnV0dG9uYCBiYWNrZ3JvdW5kXG4vLyByZXN1bHRzIGluIGEgbG9zcyBvZiB0aGUgZGVmYXVsdCBgYnV0dG9uYCBmb2N1cyBzdHlsZXMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlL1xuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgYXBwZWFyYW5jZSBvZiB0ZW1wb3JhbCBpbnB1dHMgdG8gYXZvaWQgYSBNb2JpbGUgU2FmYXJpXG4gIC8vIGJ1ZyB3aGVyZSBzZXR0aW5nIGEgY3VzdG9tIGxpbmUtaGVpZ2h0IHByZXZlbnRzIHRleHQgZnJvbSBiZWluZyB2ZXJ0aWNhbGx5XG4gIC8vIGNlbnRlcmVkIHdpdGhpbiB0aGUgaW5wdXQuXG4gIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4gIC8vIGFuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExMjY2XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveDtcbn1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgLy8gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIC8vIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuICAvLyBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4gIC8vIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbiAgbWluLXdpZHRoOiAwO1xuICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDEuNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxufVxuXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4vL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxufVxuXG4vL1xuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG4vL1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUVcbn1cblxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZSAoZnJvbSBQdXJlQ1NTKS5cbi8vIE5lZWRlZCBmb3IgcHJvcGVyIGRpc3BsYXkgaW4gSUUgMTAtLlxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoOTAlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQ7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQ7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAvIDI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTAwJSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXItbWF4LXdpZHRocygpO1xuICB9XG59XG5cbi8vIEZsdWlkIGNvbnRhaW5lclxuLy9cbi8vIFV0aWxpemVzIHRoZSBtaXhpbiBtZWFudCBmb3IgZml4ZWQgd2lkdGggY29udGFpbmVycywgYnV0IHdpdGggMTAwJSB3aWR0aCBmb3Jcbi8vIGZsdWlkLCBmdWxsIHdpZHRoIGxheW91dHMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cbn1cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgbmVnYXRpdmUgbWFyZ2luIGZyb20gZGVmYXVsdCAucm93LCB0aGVuIHRoZSBob3Jpem9udGFsIHBhZGRpbmdcbiAgLy8gZnJvbSBhbGwgaW1tZWRpYXRlIGNoaWxkcmVuIGNvbHVtbnMgKHRvIHByZXZlbnQgcnVuYXdheSBzdHlsZSBpbmhlcml0YW5jZSkuXG4gIC5uby1ndXR0ZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICA+IC5jb2wsXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYm9yZGVyLWxldmVsKSk7XG59XG5cbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGFjdGl2ZSwgJHRhYmxlLWFjdGl2ZS1iZyk7XG5cblxuLy8gRGFyayBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnRhYmxlIHtcbiAgLnRoZWFkLWRhcmsge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLnRoZWFkLWxpZ2h0IHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhlYWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuXG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgge1xuICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJi50YWJsZS1zdHJpcGVkIHtcbiAgICB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWFjY2VudC1iZztcbiAgICB9XG4gIH1cblxuICAmLnRhYmxlLWhvdmVyIHtcbiAgICB0Ym9keSB0ciB7XG4gICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzKCk7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICY6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgLy8gU3VwcHJlc3MgdGhlIG5lc3RlZCBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLCBhcyBpdCBsb29rcyBiYWQgYW5kIGNhbm5vdCBiZSBtYWRlIHRvXG4gICAgLy8gbWF0Y2ggdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIG5hdGl2ZSB3aWRnZXQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIH1cbn1cblxuLy8gTWFrZSBmaWxlIGlucHV0cyBiZXR0ZXIgbWF0Y2ggdGV4dCBpbnB1dHMgYnkgZm9yY2luZyB0aGVtIHRvIG5ldyBsaW5lcy5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuLy9cbi8vIExhYmVsc1xuLy9cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1sZ30gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1zbX0gKyAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG59XG5cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBiYXNlIC5mb3JtLWNoZWNrXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxuXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgbWFwLWdldCgkZGF0YSwgY29sb3IpLCBtYXAtZ2V0KCRkYXRhLCBpY29uKSk7XG59XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLFxuICAgIC5jdXN0b20tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRidG4tZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWZvY3VzLWJveC1zaGFkb3csICRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldDpkaXNhYmxlZCBhLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWxpbmUtaGVpZ2h0LWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1saW5lLWhlaWdodC1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbiAgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbiAgfVxufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cblxuLmNvbGxhcHNlIHtcbiAgJjpub3QoLmluKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuXG5cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wcmlnaHQsXG4uZHJvcGRvd24sXG4uZHJvcGxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0O1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAwO1xuICBtYXJnaW46ICRkcm9wZG93bi1zcGFjZXIgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZHJvcGRvd24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRkcm9wZG93bi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LWxlZnQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wcmlnaHQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHJpZ2h0KTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BsZWZ0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQobGVmdCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBXaGVuIGVuYWJsZWQgUG9wcGVyLmpzLCByZXNldCBiYXNpYyBkcm9wZG93biBwb3NpdGlvblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5kcm9wZG93bi1tZW51IHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZywgJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXkpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gIC8vIFByZXZlbnQgZHJvcGRvd24gb3ZlcmZsb3cgaWYgdGhlcmUncyBubyBwYWRkaW5nXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcHJpZ2h0ICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wbGVmdCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi5idG4tZ3JvdXAtdG9nZ2xlIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgLy8gQWRkIHdpZHRoIDElIGFuZCBmbGV4LWJhc2lzIGF1dG8gdG8gZW5zdXJlIHRoYXQgYnV0dG9uIHdpbGwgbm90IHdyYXAgb3V0XG4gICAgLy8gdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRSBFZGdlKyBhbmQgRmlyZWZveC4gQ2hyb21lIGRvZXMgbm90IHJlcXVpcmUgdGhpcy5cbiAgICB3aWR0aDogMSU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmN1c3RvbS1zZWxlY3Q6Zm9jdXMsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBjdXN0b20gZmlsZSBpbnB1dCBhYm92ZSB0aGUgbGFiZWxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIHtcbiAgICB6LWluZGV4OiA0O1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5jdXN0b20tc2VsZWN0IHtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kXG4vL1xuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxuLy8gYXBwZW5kIGVsZW1lbnRzIGFsbG93IHVzIHRvIDEpIGJlIGxlc3MgY2xldmVyLCAyKSBzaW1wbGlmeSBvdXIgc2VsZWN0b3JzLCBhbmRcbi8vIDMpIHN1cHBvcnQgSFRNTDUgZm9ybSB2YWxpZGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG5cbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQgeyBtYXJnaW4tcmlnaHQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHsgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gQWxsb3cgdXNlIG9mIDxsYWJlbD4gZWxlbWVudHMgYnkgb3ZlcnJpZGluZyBvdXIgZGVmYXVsdCBtYXJnaW4tYm90dG9tXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmQgcm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogJGN1c3RvbS1jb250cm9sLXNwYWNlci14O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xOyAvLyBQdXQgdGhlIGlucHV0IGJlaGluZCB0aGUgbGFiZWwgc28gaXQgZG9lc24ndCBvdmVybGF5IHRleHRcbiAgb3BhY2l0eTogMDtcblxuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc2V1ZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgYm9yZGVyOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvciBzb2xpZCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogbm8tcmVwZWF0IDUwJSAvICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplfTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXNcbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgY2hlY2tib3hlcy5cblxuLmN1c3RvbS1jaGVja2JveCB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgICAmOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhZGlvc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciByYWRpb3MuXG5cbi5jdXN0b20tcmFkaW8ge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIHN3aXRjaGVzXG4vL1xuLy8gVHdlYWsgYSBmZXcgdGhpbmdzIGZvciBzd2l0Y2hlc1xuXG4uY3VzdG9tLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC13aWR0aDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IGNhbGMoI3soKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDIpfSArICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyfSk7XG4gICAgICBsZWZ0OiBjYWxjKCN7LSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpfSArICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyfSk7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBoZWlnaHQ6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIC4xNXMgZWFzZS1pbi1vdXQsICRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93LCAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgLy8gRm9yIHZpc3VhbCBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHBsYXRmb3Jtcy9icm93c2VycyxcbiAgICAgIC8vIHN1cHByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSGlkZXMgdGhlIGRlZmF1bHQgY2FyZXQgaW4gSUUxMVxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtc207XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1sZztcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGcpO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICY6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyO1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoI3skY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodH0gKyAjeyRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDJ9KTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbXMtdGh1bWIgICAgICAgICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQpIC8gMjsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIEVkZ2Ugc3BlY2lmaWNcbiAgICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgbWFyZ2luLWxlZnQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgIC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbXMtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0IC8gMjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC1sb3dlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyAvLyBhcmJpdHJhcnk/XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMgb3IgYDx1bD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0XG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cbiAgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvLyBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIC8vIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgcGFkZGluZy10b3A6MDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZztcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cblxuICArIC5saXN0LWdyb3VwIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbn1cblxuLmNhcmQtaW1nIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ2FyZCBpbWFnZSBjYXBzXG4uY2FyZC1pbWctdG9wIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZy1ib3R0b20ge1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBDYXJkIGRlY2tcblxuLmNhcmQtZGVjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWRlY2stbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtZGVjay1tYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHRcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICAuY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIFN1cHByZXNzIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3IgaW4gbW9kZXJuIGJyb3dzZXJzXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6ICRicmVhZGNydW1iLWRpdmlkZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gT3BpbmlvbmF0ZWQ6IHJlbW92ZSB0aGUgXCJoYW5kXCIgY3Vyc29yIHNldCBwcmV2aW91c2x5IGZvciAucGFnZS1saW5rXG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJGJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRiYWRnZS10cmFuc2l0aW9uKTtcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYWxlcnQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYm9yZGVyLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtY29sb3ItbGV2ZWwpKTtcbiAgfVxufVxuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nO1xuXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xuICBtYXJnaW4tYm90dG9tOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vLyBIb3Jpem9udGFsXG4vL1xuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAtOSksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgNikpO1xufVxuIiwiLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNsb3NlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBvcGFjaXR5OiAuNTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLnRvYXN0IHtcbiAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBjaGVhcCByb3VuZGVkIGNvcm5lcnMgb24gbmVzdGVkIGl0ZW1zXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1wYWRkaW5nLXg7XG4gIH1cblxuICAmLnNob3dpbmcge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b2FzdC1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjtcbn1cblxuLnRvYXN0LWJvZHkge1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy14OyAvLyBhcHBseSB0byBib3RoIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsXG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyfSk7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luICogMn0pOyAvLyBJRTEwLzExXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyfSk7XG5cbiAgLy8gRW5zdXJlIGBtb2RhbC1kaWFsb2ctY2VudGVyZWRgIGV4dGVuZHMgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSB2aWV3IChJRTEwLzExKVxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDJ9KTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLy8gRW5zdXJlIGAubW9kYWwtYm9keWAgc2hvd3Mgc2Nyb2xsYmFyIChJRTEwLzExKVxuICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNsb3NlIHtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy14KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHNob3VsZCB0aGVyZSBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIGJvcmRlci10b3A6ICRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBFYXNpbHkgcGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHsgbWFyZ2luLWxlZnQ6IC4yNXJlbTsgfVxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHsgbWFyZ2luLXJpZ2h0OiAuMjVyZW07IH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDJ9KTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyfSk7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMn0pO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDJ9KTtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogJG1vZGFsLWxnO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgLm1vZGFsLXhsIHsgbWF4LXdpZHRoOiAkbW9kYWwteGw7IH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXRvcCB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgdG9wOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1sZWZ0O1xuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbn1cbiIsIi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcG9wb3Zlci1ib3gtc2hhZG93KTtcblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgbWFyZ2luOiAwICRib3JkZXItcmFkaXVzLWxnO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgbGVmdDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkYm9yZGVyLXJhZGl1cy1sZyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoIC8gMjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICByaWdodDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkYm9yZGVyLXJhZGl1cy1sZyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1sZWZ0O1xuICB9XG59XG5cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogJHBvcG92ZXItaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItaGVhZGVyLWJnLCA1JSk7XG4gICRvZmZzZXQtYm9yZGVyLXdpZHRoOiBjYWxjKCN7JGJvcmRlci1yYWRpdXMtbGd9IC0gI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG9mZnNldC1ib3JkZXItd2lkdGgpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWJvZHktcGFkZGluZy15ICRwb3BvdmVyLWJvZHktcGFkZGluZy14O1xuICBjb2xvcjogJHBvcG92ZXItYm9keS1jb2xvcjtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gb3BhY2l0eSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUgLyAxMDAlIDEwMCU7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8vXG4vLyBSb3RhdGluZyBib3JkZXJcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJvcmRlcjogJHNwaW5uZXItYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogc3Bpbm5lci1ib3JkZXIgLjc1cyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG4gIGJvcmRlci13aWR0aDogJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtO1xufVxuXG4vL1xuLy8gR3Jvd2luZyBjaXJjbGVcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiBzcGlubmVyLWdyb3cgLjc1cyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuIiwiQGltcG9ydCBcInV0aWxpdGllcy9hbGlnblwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9iYWNrZ3JvdW5kXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2JvcmRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZGlzcGxheVwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9lbWJlZFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9mbGV4XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2Zsb2F0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL292ZXJmbG93XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NjcmVlbnJlYWRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2hhZG93c1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zaXppbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc3RyZXRjaGVkLWxpbmtcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc3BhY2luZ1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy90ZXh0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Zpc2liaWxpdHlcIjtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5zaGFkb3ctc20geyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbSAhaW1wb3J0YW50OyB9XG4uc2hhZG93IHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1sZyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbm9uZSB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLy8gVmlld3BvcnQgYWRkaXRpb25hbCBoZWxwZXJzXG5cbi5taW4tdnctMTAwIHsgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4ubWluLXZoLTEwMCB7IG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cblxuLnZ3LTEwMCB7IHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4udmgtMTAwIHsgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgICAuI3skYWJicmV2fSN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn10I3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXRvcDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9ciN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9YiN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAwIHtcbiAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1sI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGU7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIElFICYgPCBFZGdlIDE4XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFByaW50aW5nIFRhYmxlczpcbiAgICAvLyBodHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAvL1xuXG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBTcGVjaWZ5IGEgc2l6ZSBhbmQgbWluLXdpZHRoIHRvIG1ha2UgcHJpbnRpbmcgY2xvc2VyIGFjcm9zcyBicm93c2Vycy5cbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xuICAgIC8vIGRvbid0IHVzZSBgIWltcG9ydGFudGAgb24gYHNpemVgIGFzIGl0IGJyZWFrcyBpbiBDaHJvbWUuXG4gICAgQHBhZ2Uge1xuICAgICAgc2l6ZTogJHByaW50LXBhZ2Utc2l6ZTtcbiAgICB9XG4gICAgYm9keSB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJsYWNrO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1kYXJrIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbiAgfVxufVxuIiwiLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyXG57XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgICAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1saXN0XG57XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuLnNsaWNrLWxpc3Q6Zm9jdXNcbntcbiAgICBvdXRsaW5lOiBub25lO1xufVxuLnNsaWNrLWxpc3QuZHJhZ2dpbmdcbntcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kO1xufVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3RcbntcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2tcbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc2xpY2stdHJhY2s6YmVmb3JlLFxuLnNsaWNrLXRyYWNrOmFmdGVyXG57XG4gICAgZGlzcGxheTogdGFibGU7XG5cbiAgICBjb250ZW50OiAnJztcbn1cbi5zbGljay10cmFjazphZnRlclxue1xuICAgIGNsZWFyOiBib3RoO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrXG57XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpY2stc2xpZGVcbntcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbn1cbltkaXI9J3J0bCddIC5zbGljay1zbGlkZVxue1xuICAgIGZsb2F0OiByaWdodDtcbn1cbi5zbGljay1zbGlkZSBpbWdcbntcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87ICAgIFxufVxuLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nXG57XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWdcbntcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGVcbntcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6YXV0bztcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZVxue1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGVcbntcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIGhlaWdodDogYXV0bztcblxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuXG5cblxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcblxuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcbi8vIFwiXFwyMTkyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpJcIlxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXG5cbiRzbGljay1mb250LXBhdGg6IFwiLi9mb250cy9cIiAhZGVmYXVsdDtcbiRzbGljay1mb250LWZhbWlseTogXCJzbGlja1wiICFkZWZhdWx0O1xuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4vXCIgIWRlZmF1bHQ7XG4kc2xpY2stYXJyb3ctY29sb3I6IHdoaXRlICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvcjogYmxhY2sgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJHNsaWNrLWRvdC1jb2xvciAhZGVmYXVsdDtcbiRzbGljay1wcmV2LWNoYXJhY3RlcjogXCJcXDIxOTBcIiAhZGVmYXVsdDtcbiRzbGljay1uZXh0LWNoYXJhY3RlcjogXCJcXDIxOTJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIlxcMjAyMlwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1zaXplOiA2cHggIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1kZWZhdWx0OiAwLjc1ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDEgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlOiAwLjI1ICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGltYWdlLXVybCkge1xuICAgICAgICBAcmV0dXJuIGltYWdlLXVybCgkdXJsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stbG9hZGVyLXBhdGggKyAkdXJsKTtcbiAgICB9XG59XG5cbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhmb250LXVybCkge1xuICAgICAgICBAcmV0dXJuIGZvbnQtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1mb250LXBhdGggKyAkdXJsKTtcbiAgICB9XG59XG5cbi8qIFNsaWRlciAqL1xuXG4uc2xpY2stbGlzdCB7XG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgc2xpY2staW1hZ2UtdXJsKFwiYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIH1cbn1cblxuLyogSWNvbnMgKi9cbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcbiAgICBAZm9udC1mYWNlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdFwiKTtcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgfVxufVxuXG4vKiBBcnJvd3MgKi9cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICBmb250LXNpemU6IDByZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxufVxuXG4uc2xpY2stcHJldiB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0yNXB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAwcmVtO1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwcmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbiIsIkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Tm90bytTYW5zK1RDOjMwMCw0MDAsNzAwJmRpc3BsYXk9c3dhcCcpO1xuXG5ib2R5e1xuICAgIGZvbnQtZmFtaWx5OiAnTm90byBTYW5zIFRDJywgc2Fucy1zZXJpZjtcbn1cblxuYm9keSB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0Zm9udC1mYW1pbHk6ICdOb3RvIFNhbnMgVEMnLCBzYW5zLXNlcmlmO1xuXHQvLyBmb250LWZhbWlseTogTWljcm9zb2Z0IEpoZW5nSGVpLEFyaWFsIEJsYWNrLExpSGVpIFBybztcblx0bGV0dGVyLXNwYWNpbmc6IDFweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuIFxuXHRjb2xvcjogIzAwMFxufVxuXG5hOmhvdmVye1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5oMSwuaDIsLmgzLC5oNCwuaDUsLmg2LGgxLGgyLGgzLGg0LGg1LGg2IHtcblx0Zm9udC1mYW1pbHk6ICdOb3RvIFNhbnMgVEMnLCBzYW5zLXNlcmlmO1xuXHQvLyBmb250LWZhbWlseTogTWljcm9zb2Z0IEpoZW5nSGVpLEFyaWFsIEJsYWNrLExpSGVpIFBybztcblx0bGluZS1oZWlnaHQ6IDEuNGVtO1xuXHRjbGVhcjogYm90aFxufVxuXG4uaDIsaDIge1xuXHRmb250LXNpemU6IDIwMCU7XG5cdGNvbG9yOiAjODc4OTg4O1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogMSUgMCAwO1xuXHRtYXJnaW46IDBcbn1cblxuLmgyIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrXG59XG5cbi5oMjphZnRlcixoMjphZnRlciB7XG5cdGNvbnRlbnQ6ICcnO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Ym9yZGVyLWJvdHRvbTogMCBzb2xpZCBoc2woMCwwJSw4MyUpO1xuXHRwYWRkaW5nLWJvdHRvbTogNXB4O1xuXHRtYXJnaW4tYm90dG9tOiAwXG59XG5cblxuXG4uY29udGFpbmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDIycHg7XG4gIGhlaWdodDogMTVweDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLyogSGlkZSB0aGUgYnJvd3NlcidzIGRlZmF1bHQgY2hlY2tib3ggKi9cbi5jb250YWluZXIgaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbn1cblxuLyogQ3JlYXRlIGEgY3VzdG9tIGNoZWNrYm94ICovXG4uY2hlY2ttYXJrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDVweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgYm9yZGVyOjJweCBzb2xpZCAgIzAwN2JmZjtcbn1cblxuLyogT24gbW91c2Utb3ZlciwgYWRkIGEgZ3JleSBiYWNrZ3JvdW5kIGNvbG9yICovXG4uY29udGFpbmVyOmhvdmVyIGlucHV0IH4gLmNoZWNrbWFyayB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG59XG5cbi8qIFdoZW4gdGhlIGNoZWNrYm94IGlzIGNoZWNrZWQsIGFkZCBhIGJsdWUgYmFja2dyb3VuZCAqL1xuLmNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7XG59XG5cbi8qIENyZWF0ZSB0aGUgY2hlY2ttYXJrL2luZGljYXRvciAoaGlkZGVuIHdoZW4gbm90IGNoZWNrZWQpICovXG4uY2hlY2ttYXJrOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBTaG93IHRoZSBjaGVja21hcmsgd2hlbiBjaGVja2VkICovXG4uY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIFN0eWxlIHRoZSBjaGVja21hcmsvaW5kaWNhdG9yICovXG4uY29udGFpbmVyIC5jaGVja21hcms6YWZ0ZXIge1xuICBsZWZ0OiAtNXB4O1xuICB0b3A6IC01cHg7XG4gIHdpZHRoOiAyNXB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaGVhcnQucG5nKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgXG59XG5cblxuLypcbi5zZWxlY3RXcmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2F4ZC5wbmcpIDk1JSBjZW50ZXIgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDE0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgJi5ibGt7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9kcm9wX2Jsay5wbmcpIDk1JSA0MCUgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTRweDtcbiAgICBzZWxlY3R7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3RXcmFwcGVyIHNlbGVjdCB7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMjBweCAxMnB4IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcblxuXHRcdGNvbG9yOiNmZmY7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIHRleHQtaW5kZW50OiAwLjAxcHg7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyAgICAgICAgICAgICAgXG4gICAgfVxuICAgICovXG5cblxuXG4gICAgLnNsa19ib3gge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDI1MHB4OyBcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgfVxuICAgIFxuICAgIC5zbGtfYm94IHNlbGVjdCB7XG4gICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDU2M2FmO1xuICAgICAvLyBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICBwYWRkaW5nOiAycHggMjBweDtcbiAgICAgIHdpZHRoOiAyNDhweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAgICAgYXBwZWFyYW5jZTogYnV0dG9uO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGhlaWdodDogMzhweDtcbiAgICB9XG4gICAgXG4gICAgLnNsa19ib3g6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjBkN1wiO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMjAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICNjZWQ0ZGE7O1xuICAgIH1cbiAgICBcbiAgICAuc2xrX2JveDpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgIH1cbiAgICBcbiAgICAuc2xrX2JveCBzZWxlY3Qgb3B0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgfVxuXG5cblxuXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM5MjkyOTI7XG4gIG9wYWNpdHk6IDE7IC8qIEZpcmVmb3ggKi9cbn1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIEludGVybmV0IEV4cGxvcmVyIDEwLTExICovXG4gY29sb3I6ICM5MjkyOTI7XG59XG5cbjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogTWljcm9zb2Z0IEVkZ2UgKi9cbiBjb2xvcjogIzkyOTI5Mjtcbn1cblxuXG5cblxuXG4ubWluX2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiA1MHB4OyBcbiAgLy8gYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4ubWluX2JveCBzZWxlY3Qge1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMnB4IDMwcHggMnB4IDIwcHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAycHgpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgb3V0bGluZTogbm9uZTtcbiAgaGVpZ2h0OiAzOHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLm1pbl9ib3g6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNvbG9yOiNmZmY7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYXhkLnBuZykgY2VudGVyIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBsaW5lLWhlaWdodDogMzhweDsgIFxuICBwb2ludGVyLWV2ZW50czogbm9uZTsgXG59XG5cbi5taW5fYm94OmhvdmVyOjpiZWZvcmUge1xuICBjb2xvcjojZmZmO1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG5cbi5taW5fYm94IHNlbGVjdCBvcHRpb24ge1xuICBwYWRkaW5nOiAzMHB4O1xufVxuXG5cbi5uYXZiYXIge1xuICBwYWRkaW5nOiAxM3B4IDFyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG59IiwiI2hlYWRlcntcbiAgICBib3gtc2hhZG93OiAwIDNweCAzcHggIzljOWM5YzsgICAgXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDk7XG4gICAgYmFja2dyb3VuZDogI2ZmZjsgICBcbiAgICB0b3A6IDA7IFxuICAgIC5ib3h7XG4gICAgICAgIG1heC13aWR0aDoxMTgwcHg7XG4gICAgICAgIHBhZGRpbmc6MCAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6YXV0bztcbiAgICAgICAgLm5hdmJhci1icmFuZHtcbiAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICBoZWlnaHQ6NDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZvcm17XG4gICAgICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJde1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBpe1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNwYWdle1xuICAgIHBhZGRpbmctdG9wOjU2cHg7XG59XG5cblxuXG5cbiIsImZvb3RlcntcbiAgICBiYWNrZ3JvdW5kOiAjMGQ0MDc5O1xuICAgIGNvbG9yOiNmZmY7XG4gICAgcGFkZGluZzoxZW0gMCBjYWxjKDFlbSArIDEwcHgpO1xuICAgIGZvbnQtZmFtaWx5OiAn5b6u6Luf5q2j6buR6auUJztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuYm94e1xuICAgICAgICBtYXgtd2lkdGg6IDExODBweDs7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOmF1dG87XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAuYm90dG9tX2luZm97XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMCAxNXB4OztcbiAgICAgICAgICAgIHVse1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTs7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiM3MGI1ZDQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBuYXZ7XG4gICAgICAgICAgICBwYWRkaW5nOjAgMTVweDtcbiAgICAgICAgICAgIHVse1xuICAgICAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgLmNvcHlyaWdodHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OjI1cHg7XG4gICAgICAgICAgICBib3R0b206MGVtO1xuICAgICAgICB9XG5cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KXtcbiAgICAjZm9vdGVye1xuICAgICAgICBuYXZ7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAxNXB4O1xuICAgICAgICAgICAgdWx7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGluaXRpYWw7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvcHlyaWdodHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIGJvdHRvbTogMGVtO1xuICAgICAgICB9XG4gICAgfSAgIFxufSIsIi5wYWdlX3RvcF9nYWxsZXJ5e1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIC5pdGVte1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB9XG4gICAgaW1ne1xuICAgICAgICBoZWlnaHQ6MzQwcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7O1xuICAgIH1cbn1cblxuXG5cbi5icmVhZGNydW1ieyAgICAgICAgXG4gICAgYmFja2dyb3VuZDojZWZlY2Y2O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY29sb3I6IzRjNGM0YzsgICAgXG4gICBcbiAgICBwYWRkaW5nOiAwO1xuICAgIC5pYm94e1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzowIDE1cHg7XG4gICAgICAgIGhlaWdodDo1MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXgtd2lkdGg6IDExODBweDs7XG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgICAgICBhe1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgICBjb2xvcjojNGM0YzRjO1xuICAgICAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRpdntcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG5cbi5tdGl0bGV7XG4gICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vaW1hZ2VzL21pZF9ibi5wbmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBib3R0b207XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAuc2hhcmV7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOjE2MHB4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGF7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6I2VlZTs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjZweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxuICAgIC5ib3h7XG4gICAgICAgIG1heC13aWR0aDoxMTgwcHg7XG4gICAgICAgIG1hcmdpbjphdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6NjZweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzowIDE1cHg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgLnRpdGxle1xuICAgICAgICAgICAgbWFyZ2luLXRvcDotNXB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICBmb250LXNpemU6MzZweDtcbiAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgIH1cbiAgICAgICAgLmxvZ291dHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgaW1neyBcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrOyBcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MjhweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICBmb250LXNpemU6MjRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmlsdGVye1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAubWluX2JveHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjE1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kYXRhX2Rlc2N7XG4gICAgLm1lbWJlcl9tc2d7XG4gICAgICAgIHBhZGRpbmc6MHB4IDBweCAgMTBweDtcbiAgICAgICAgY29sb3I6IzRjNGM0YztcbiAgICAgICAgLm1lbWJlcntcbiAgICAgICAgICAgIGNvbG9yOiMxNTZkY2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzoyMHB4IDMwcHg7XG4gICAgY29sb3I6IzRjNGM0YztcbiAgICBmb250LXNpemU6MThweDtcbiAgICAubnVte1xuICAgICAgICBjb2xvcjojMTU2ZGNlO1xuICAgIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCl7XG4gICAgLm10aXRsZSAuYm94e1xuICAgICAgICAudGl0bGV7XG4gICAgICAgICAgICBmb250LXNpemU6MjZweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpe1xuICAgIC5tdGl0bGUucndkIC5ib3h7XG4gICAgICAgIGhlaWdodDphdXRvO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDBweDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC50aXRsZXtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOjA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmZpbHRlcntcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAubWluX2JveHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgICAgIHNlbGVjdHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiI3ByZV9zYWxlX2hvdXNle1xuICAgIG1heC13aWR0aDogMTIxMHB4O1xuICAgIG1hcmdpbjphdXRvOztcbiAgICBwYWRkaW5nOjAgMTVweDtcbiAgICBtYXJnaW46MCBhdXRvO1xuXG4gICAgLmRhdGFfZGVzY3tcbiAgICAgICAgcGFkZGluZzogMjBweCAxMHB4O1xuICAgIH1cblxuICAgIHVsLmxpc3R7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgIGxpLml0ZW17XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7OyAgICAgICAgICAgIFxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMjBweCAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgICAgICAucGlje1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjBiMGIwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZGVzY3tcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDM4MHB4KTtcbiAgICAgICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYWRkcmVzc3tcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzRjNGM0YztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4OyAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5zcGVje1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNGM0YzRjOyAgXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHg7ICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm1vYmlsZV9wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgIC5yZWd1bGFyX3ByaWNle1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IzdkN2Q3ZDs7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiM3ZDdkN2Q7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAuc2FsZV9wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiNlNjAwMTI7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MjRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50YWd7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDA3YmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saWtlaXR7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAucHJpY2V7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgLnJlZ3VsYXJfcHJpY2V7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojN2Q3ZDdkOztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IzdkN2Q3ZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6NTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5zYWxlX3ByaWNle1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6I2U2MDAxMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNvbGxlY3Rpb257XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDdiZmY7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6M3B4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOjEwcHg7ICAgXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IzAwN2JmZjtcbiAgICAgICAgICAgICAgICAgICAgfSAgIFxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiMwMDdiZmY7XG4gICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5wYWdpbmF0aW9ue1xuICAgICAgICBtYXJnaW46NTBweCBhdXRvIDUwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCl7XG4gICAgI3ByZV9zYWxlX2hvdXNle1xuICAgICAgICBwYWRkaW5nOiAwIDVweDs7XG4gICAgfVxuICAgICNwcmVfc2FsZV9ob3VzZSB1bC5saXN0IGxpLml0ZW0ge1xuICAgICAgICBmbGV4LXdyYXA6d3JhcDtcbiAgICAgICAgLnBpY3tcbiAgICAgICAgICAgIHdpZHRoOjQwJTtcbiAgICAgICAgfVxuICAgICAgICAuZGVzY3tcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7O1xuICAgICAgICAgICAgaDN7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hZGRyZXNze1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubW9iaWxlX3ByaWNle1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3BlY3tcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFsbFRhZ3MgLnRhZ3tcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MTNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGlrZWl0e1xuICAgICAgICAgICAgcGFkZGluZy10b3A6OHB4O1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgICAgICAucHJpY2V7XG4gICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb2xsZWN0aW9ueyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgYm90dG9tOjA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIjbG9hbkxpc3Rze1xuICAgIG1heC13aWR0aDogMTIxMHB4O1xuICAgIG1hcmdpbjphdXRvOztcbiAgICBwYWRkaW5nOjAgMTVweDtcbiAgICBtYXJnaW46MCBhdXRvO1xuXG4gICAgLmRhdGFfZGVzY3tcbiAgICAgICAgcGFkZGluZzogMjBweCAxMHB4O1xuICAgIH1cblxuICAgIHVsLmxpc3R7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgIGxpLml0ZW17XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7OyAgICAgICAgICAgIFxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMjBweCAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgICAgICAucGlje1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMjBweDtcbiAgICAgICAgICAgICAgICAubXBpY3tcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7ICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGgze1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MjJweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IzAwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbi1sYXN0Omp1c3RpZnk7XG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZXNje1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDMwcHgpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgLmluZm97XG4gICAgICAgICAgICAgICAgICAgIHVse1xuICAgICAgICAgICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCA+IHVse1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2JmYmZiZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6MjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saWtlaXR7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG5cbiAgICAucGFnaW5hdGlvbntcbiAgICAgICAgbWFyZ2luOjUwcHggYXV0byA1MHB4O1xuICAgIH1cbn1cblxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KXtcbiAgICAjbG9hbkxpc3RzIHVsLmxpc3QgbGkuaXRlbXtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwOyBcbiAgICAgICAgLnBpY3tcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNXB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduLWxhc3Q6YXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGlrZWl0e1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuICAgICAgICAuZGVzY3sgXG4gICAgICAgICAgICB3aWR0aDogY2FsYyg3MCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpe1xuICAgICNsb2FuTGlzdHMgdWwubGlzdCBsaS5pdGVte1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7IFxuICAgICAgICAucGlje1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgaDN7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjIycHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6MTVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduLWxhc3Q6YXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVzY3sgXG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlKTtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICAgICAgLmluZm97XG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIHVse1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjAgMCAwIDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICAgICAgdWx7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjAgMCAwIDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5saWtlaXR7XG4gICAgICAgICAgICBwYWRkaW5nOjEwcHggMCAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiI2RlY29MaXN0c3tcbiAgICBtYXgtd2lkdGg6IDEyMTBweDtcbiAgICBtYXJnaW46YXV0bzs7XG4gICAgcGFkZGluZzowIDE1cHg7XG4gICAgbWFyZ2luOjAgYXV0bztcblxuICAgIC5kYXRhX2Rlc2N7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICB9XG5cbiAgICB1bC5saXN0e1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBsaS5pdGVte1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOzsgICAgICAgICAgICBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDIwcHggMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICAgICAgLnBpY3tcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgICAgIGgze1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MjJweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IzAwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbi1sYXN0Omp1c3RpZnk7XG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZXNje1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDMwcHgpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgLmluZm97XG5cbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saWtlaXR7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE3MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG5cbiAgICAucGFnaW5hdGlvbntcbiAgICAgICAgbWFyZ2luOjUwcHggYXV0byA1MHB4O1xuICAgIH1cbn1cblxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KXtcbiAgICAjZGVjb0xpc3RzIHVsLmxpc3QgbGkuaXRlbXtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwOyBcbiAgICAgICAgLnBpY3tcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ24tbGFzdDphdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5saWtlaXR7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG4gICAgICAgIC5kZXNjeyBcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDYwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCl7XG4gICAgI2RlY29MaXN0cyB1bC5saXN0IGxpLml0ZW17XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgXG4gICAgICAgIC5waWN7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MjJweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ24tbGFzdDphdXRvO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRlc2N7IFxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSk7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgICAgICAgIC5pbmZve1xuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGlrZWl0e1xuICAgICAgICAgICAgcGFkZGluZzoxMHB4IDAgMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufSIsIm5hdi5wYWdpbmF0aW9ue1xuICAgIHVse1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IzYxNjk3NjtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgY29sb3I6IzYxNjk3NjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICAgICAgJi5wYWdlLWxpbmt7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDByZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMHJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNDQ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIiIsIiNwYXlfaG9zdWV7XG4gICAgbWluLWhlaWdodDogNjAwcHg7XG4gICAgcGFkZGluZzogNTBweCAxNXB4O1xuICAgIG1heC13aWR0aDogMTE4MHB4O1xuICAgIG1hcmdpbjogYXV0bztcblxuICAgIC5ub3RpY2V7XG4gICAgICAgIHBhZGRpbmc6MTBweCAwIDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICAuYW1vdW50e1xuICAgICAgICAgICAgY29sb3I6I2JmMDAwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLWdyb3Vwe1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTBlMGUwOyBcbiAgICAgICAgbGFiZWx7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4OztcbiAgICAgICAgfSAgICAgIFxuICAgIH1cbn1cblxuaW5wdXRbdHlwZT1cInRleHRcIl17YmFja2dyb3VuZDojZjRmNGY0O31cblxuXG4uY29udHJvbHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgLmJ0bntcbiAgICAgICBtYXJnaW46MzBweCA0MHB4O1xuICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgICAgICAgICAgXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgICAgICAgICAgICBcbiAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgcGFkZGluZzoxMHB4IDIwcHg7XG4gICAgICAgIGltZ3tcbiAgICAgICAgICAgIGhlaWdodDoyMnB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCl7XG4gICAgI3BheV9ob3N1ZXtcbiAgICAgICAgLy8gbWFyZ2luOjAgMTVweDtcbiAgICAgICAgbWF4LXdpZHRoOiA5ODBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCl7XG4gICAgI3BheV9ob3N1ZXtcbiAgICAgICAgLy8gbWFyZ2luOjAgMTVweDtcbiAgICAgICAgbWF4LXdpZHRoOiA3NjhweDtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KXtcbiAgICAuY29udHJvbCAuYnRue1xuICAgICAgICBtYXJnaW46IDMwcHggMTNweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAxM3B4O1xuICAgIH1cbiAgICAjcGF5X2hvc3Vle1xuICAgICAgICAgbWFyZ2luOjAgMTVweDtcbiAgICAgICBcbiAgICB9XG59IiwiI21vZGFsX2luZm97XG4gICAgLm1vZGFsLWRpYWxvZ3tcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgIG1hcmdpbjogLTEwMHB4IGF1dG8gMDtcbiAgICAgICAgLy8gbWFyZ2luLXRvcDogLTEwMHB4O1xuXG4gICAgICAgIC5tb2RhbC1jb250ZW50e1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzE3NmZkMywgIzAzNzlkOCwgIzAwODNkZCwgIzAwOGRlMSwgIzAwOTZlNSwgIzAwOWNlNywgIzA1YTJlOSwgIzExYThlYiwgIzExYWNlYywgIzE0YjBlZSwgIzE4YjRlZiwgIzFkYjhmMCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjIwMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjowcHg7XG4gICAgICAgICAgICAgICAgLm1vZGFsLWJvZHl7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDp3cmFwO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGg0e1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBidXR0b257XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IzE3NmZkMztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7ICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxufVxuLm1vZGFsLWJhY2tkcm9wLmZhZGV7XG4gICAgb3BhY2l0eTogMC4yO1xufSIsIiNsb2dpbl9vdXR0ZXJ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vaW1hZ2VzL2xvZ2luX2JrLnBuZyk7XG4gICAgbWluLWhlaWdodDo2MDBweDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgLmxvZ2luX2JveHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICBtYXgtd2lkdGg6IDQ4MHB4O1xuICAgICAgICBtYXJnaW46MCBhdXRvO1xuXG4gICAgICAgIGgye1xuICAgICAgICAgICAgY29sb3I6I2ZmZjsgIFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgLmlidG57XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6NjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuMXM7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4ICM1MjUyNTI7XG5cbiAgICAgICAgICAgICYuZ2x7XG4gICAgICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjEwcHg7XG4gICAgICAgICAgICAgICAgLy8gaGVpZ2h0OiAzNXB4OztcbiAgICAgICAgICAgICAgICB3aWR0aDoxMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5ob3ZlcntcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC45KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWN0aXZle1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjgpO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45Nyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9ICAgIFxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCl7XG4gICAgI2xvZ2luX291dHRlciAubG9naW5fYm94e1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgIH1cbn0iLCIjbWVtYmVyX2FkbWlue1xuICAgIHBhZGRpbmc6MTVweDtcbiAgICBtYXgtd2lkdGg6IDEyMTBweDs7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OmF1dG87XG4gICAgbWluLWhlaWdodDo2MzBweDtcblxuICAgIC5kYXRhX2Rlc2N7XG4gICAgICAgIHBhZGRpbmc6MjBweCAxMHB4IDMwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIC5idG5ze1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlcjoxcHggc29saWQgI2M1YzVjNTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzYwcHg7O1xuICAgICAgICAgICAgaGVpZ2h0OjQycHg7XG4gICAgICAgICAgICBwYWRkaW5nOjAwcHggMTVweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDpjYWxjKDEwMCUgLSAzMHB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjE1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6NDBweDtcbiAgICAgICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHdpZHRoOjUwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6IzkyOTI5Mjs7XG4gICAgICAgICAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiMxNTZkY2U7O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmMxeyAgIFxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDojYzVjNWM1O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OmNhbGMoMTAwJSAtIDEwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOjVweDtcbiAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgc3BhbnsgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDozMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL2hlYXJ0Mi5wbmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOjIwcHggYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAtMjJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk7O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5jMS5hY3RpdmV7XG4gICAgICAgICAgICAgICAgICAgIHNwYW57ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDdweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAmLmMyeyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgc3BhbnsgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDozMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL2hvbGRlcjIucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZToyMnB4IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgLTE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyOztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuYzIuYWN0aXZle1xuICAgICAgICAgICAgICAgICAgICBzcGFueyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cblxuXG4gICAgdWwubGlzdHtcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIHBhZGRpbmc6MDtcblxuXG5cbiAgICAgICAgbGkuaXRlbXtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTs7ICAgICAgICAgICAgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAyMHB4IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgICAgIC5waWN7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiMGIwYjA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZXNje1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjMwcHgpO1xuICAgICAgICAgICAgICAgIGgze1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hZGRyZXNze1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNGM0YzRjO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7ICAgICAgICBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnNwZWN7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM0YzRjNGM7ICBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDsgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucHJpY2V7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNlNjAwMTI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJpY2VfbW9iaWxle1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgLnJlZ3VsYXJfcHJpY2V7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojN2Q3ZDdkOztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IzdkN2Q3ZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6NTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5zYWxlX3ByaWNle1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6I2U2MDAxMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRhZ3tcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDdiZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7ICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByaWNle1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6MTBweDtcbiAgICAgICAgICAgICAgICByaWdodDo2MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjYwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAucmVndWxhcl9wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IzdkN2Q3ZDs7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDoxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiM3ZDdkN2Q7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc2FsZV9wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6I2U2MDAxMjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjI0cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAgICBcbiAgICAgICAgXG5cblxuXG5cbiAgICAgICAgICAgIC5saWtlaXR7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIC5jb2xsZWN0aW9ue1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDA3YmZmO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjNweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbToxMHB4OyAgIFxuICAgICAgICAgICAgICAgICAgICBzdmd7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiMwMDdiZmY7XG4gICAgICAgICAgICAgICAgICAgIH0gICBcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDojMDA3YmZmO1xuICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IC8qIGxpa2VpdCAqL1xuXG5cbiAgICAgICAgICAgIC5ib29rX2luZm97XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMyMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbToxMHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OjEwcHg7XG4gICAgICAgICAgICAgICAgLmRhdGV7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjM1cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07ICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gLyogIGxpLml0ZW0gKi9cblxuXG5cblxuXG5cblxuXG4gICAgICAgIC8qICA9PT09PT09PT09PT09PT09PSAgQm9vayBpdGVtX2Jvb2sgPT09PT09PT09PT09PT09PT09PT09ICAqLyAgICAgICBcbiAgICAgICAgbGkuaXRlbV9ib29re1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOzsgICAgICAgICAgICBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDIwcHggMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICAgICAgLnBpY3tcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2IwYjBiMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRlc2N7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMzBweCk7XG4gICAgICAgICAgICAgICAgaDN7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmFkZHJlc3N7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM0YzRjNGM7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweDsgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc3BlY3tcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzRjNGM0YzsgIFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4OyAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2U2MDAxMjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcmljZV9tb2JpbGV7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIC8vIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhIGltcG9ydGFudDsgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAucmVndWxhcl9wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiM3ZDdkN2Q7O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDoxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDojN2Q3ZDdkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLnNhbGVfcHJpY2V7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojZTYwMDEyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRhZ3tcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDdiZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7ICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByaWNle1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6MTBweDtcbiAgICAgICAgICAgICAgICByaWdodDoxMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6MTUwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAucmVndWxhcl9wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IzdkN2Q3ZDs7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDoxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiM3ZDdkN2Q7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc2FsZV9wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6I2U2MDAxMjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjI0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAgICBcblxuXG5cbiAgICAgICAgICAgIC5ib29rX2luZm97XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMyMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbToxMHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OjEwcHg7XG4gICAgICAgICAgICAgICAgLmRhdGV7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjM1cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07ICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gLyogbGkuaXRlbV9ib29rICAqL1xuICAgICAgICBcbiAgICB9XG5cblxuXG5cblxuXG5cblxuXG4gICAgLmNvbnRyb2x7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5idG57XG4gICAgICAgICAgIG1hcmdpbjozMHB4IDQwcHg7XG4gICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgICAgICAgICAgXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7ICAgICAgICAgICAgXG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6MTBweCAyMHB4O1xuICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgIGhlaWdodDoyMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufSAgLyogICNtZW1iZXJfYWRtaW4gKi9cblxuXG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpe1xuICAgICNtZW1iZXJfYWRtaW4gdWwubGlzdCBsaS5pdGVtIC5wcmljZSxcbiAgICAjbWVtYmVyX2FkbWluIHVsLmxpc3QgbGkuaXRlbV9ib29rIC5wcmljZXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAjbWVtYmVyX2FkbWluIHVsLmxpc3QgbGkuaXRlbV9ib29re1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCA1MHB4IDEwcHg7XG4gICAgICAgIC5kZXNje1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwMHB4KTtcbiAgICAgICAgfVxuICAgICAgICAuYm9va19pbmZve1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgIGJvdHRvbTowO1xuICAgICAgICAgICByaWdodDoxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAjbWVtYmVyX2FkbWluIHVsLmxpc3QgbGkuaXRlbSAuZGVzYyxcbiAgICAjbWVtYmVyX2FkbWluIHVsLmxpc3QgbGkuaXRlbV9ib29rIC5kZXNje1xuICAgICAgICBoM3tcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFkZHJlc3N7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5zcGVje1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNlX21vYmlsZXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI21lbWJlcl9hZG1pbiAuZGF0YV9kZXNje1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudCA6Y2VudGVyO1xuICAgICAgICBcbiAgICAgICAgLmxlZnR7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICAuYnRuc3tcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KXtcbiAgICAjbWVtYmVyX2FkbWluIC5jb250cm9sIC5idG57XG4gICAgICAgIG1hcmdpbjogMzBweCAyMHB4O1xuICAgIH1cblxuICAgICNtZW1iZXJfYWRtaW4gdWwubGlzdCBsaS5pdGVtX2Jvb2t7XG4gICAgICAgIHBhZGRpbmc6MTBweCAxMHB4IDUwcHggMTBweDtcbiAgICAgICAgLnBpY3tcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5ib29rX2luZm97XG4gICAgICAgICAgICBmb250LXNpemU6MTRweDtcbiAgICAgICAgICAgIHJpZ2h0OjBweDtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjE0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRlc2N7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTMwcHgpO1xuICAgICAgICAgICAgaDN7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFkZHJlc3N7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNwZWN7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRhZ3tcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJpY2VfbW9iaWxleyAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIC5yZWd1bGFyX3ByaWNle1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5zYWxlX3ByaWNle1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAjbWVtYmVyX2FkbWluIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xuXG4gICAgICAgIHVsLmxpc3QgbGkuaXRlbXtcbiAgICAgICAgICAgIHBhZGRpbmc6MTBweCA1cHggMjBweCAxMHB4O1xuICAgICAgICAgICAgLnBpY3tcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZGVzY3tcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTYwcHgpO1xuICAgICAgICAgICAgICAgIGgze1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hZGRyZXNze1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5zcGVje1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC50YWd7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnByaWNlX21vYmlsZXsgICAgIFxuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7OyAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgLnJlZ3VsYXJfcHJpY2V7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5zYWxlX3ByaWNle1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLnN0eWxlZC1jaGVja2JveCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyAvLyB0YWtlIGl0IG91dCBvZiBkb2N1bWVudCBmbG93XG4gICAgb3BhY2l0eTogMDsgLy8gaGlkZSBpdFxuICBcbiAgICAmICsgbGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIFxuICAgIC8vIEJveC5cbiAgICAmICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyOjJweCBzb2xpZCAjMTU2ZGNlO1xuICAgIH1cbiAgXG4gICAgLy8gQm94IGhvdmVyXG4gICAgJjpob3ZlciArIGxhYmVsOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTU2ZGNlO1xuICAgIH1cbiAgICBcbiAgICAvLyBCb3ggZm9jdXNcbiAgICAmOmZvY3VzICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICAgIH1cbiAgXG4gICAgLy8gQm94IGNoZWNrZWRcbiAgICAmOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogIzE1NmRjZTtcbiAgICB9XG4gICAgXG4gICAgLy8gRGlzYWJsZWQgc3RhdGUgbGFiZWwuXG4gICAgJjpkaXNhYmxlZCArIGxhYmVsIHtcbiAgICAgIGNvbG9yOiAjYjhiOGI4O1xuICAgICAgY3Vyc29yOiBhdXRvO1xuICAgIH1cbiAgXG4gICAgLy8gRGlzYWJsZWQgYm94LlxuICAgICY6ZGlzYWJsZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6ICNkZGQ7XG4gICAgfVxuICBcbiAgICAvLyBDaGVja21hcmsuIENvdWxkIGJlIHJlcGxhY2VkIHdpdGggYW4gaW1hZ2VcbiAgICAmOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDVweDtcbiAgICAgIHRvcDogOXB4O1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICB3aWR0aDogMnB4O1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBib3gtc2hhZG93OiBcbiAgICAgICAgMnB4IDAgMCB3aGl0ZSxcbiAgICAgICAgNHB4IDAgMCB3aGl0ZSxcbiAgICAgICAgNHB4IC0ycHggMCB3aGl0ZSxcbiAgICAgICAgNHB4IC00cHggMCB3aGl0ZSxcbiAgICAgICAgNHB4IC02cHggMCB3aGl0ZSxcbiAgICAgICAgNHB4IC04cHggMCB3aGl0ZTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG4gIH1cbiIsIiNzZWFyY2hfbWFwe1xuICAgIHdpZHRoOjEwMCU7XG4gICAgcGFkZGluZzowIDE1cHggMzBweDtcbiAgICAjbWFwe1xuICAgICAgICBtYXgtd2lkdGg6MTE4MHB4OyAgICAgICAgXG4gICAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICAgIGhlaWdodDo2NTBweDtcbiAgICB9XG5cbiAgICAjaG91c2VfbGlzdHtcbiAgICAgICAgcGFkZGluZy10b3A6NTBweDtcbiAgICAgICAgdWwubGlzdHtcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgICAgICAgICBsaS5pdGVte1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTs7ICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAyMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5waWN7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2IwYjBiMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kZXNje1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzODBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGgze1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmFkZHJlc3N7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM0YzRjNGM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7ICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3BlY3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzRjNGM0YzsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDsgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZTYwMDEyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tb2JpbGVfcHJpY2V7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmVndWxhcl9wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojN2Q3ZDdkOztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDoxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IzdkN2Q3ZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6NTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zYWxlX3ByaWNle1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiNlNjAwMTI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRhZ3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDA3YmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7ICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5saWtlaXR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxODBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJpY2V7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJlZ3VsYXJfcHJpY2V7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IzdkN2Q3ZDs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiM3ZDdkN2Q7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2FsZV9wcmljZXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojZTYwMDEyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbGxlY3Rpb257XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDA3YmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzozcHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDowO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOjEwcHg7ICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmd7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiMwMDdiZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9ICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IzAwN2JmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnBhZ2luYXRpb257XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgfSAgICAgICAgICAgIFxuXG5cbiAgICB9XG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpe1xuICAgICNzZWFyY2hfbWFwICNob3VzZV9saXN0IHVsLmxpc3QgbGkuaXRlbSB7XG4gICAgICAgIGZsZXgtd3JhcDp3cmFwO1xuICAgICAgICAucGlje1xuICAgICAgICAgICAgd2lkdGg6NDAlO1xuICAgICAgICB9XG4gICAgICAgIC5kZXNje1xuICAgICAgICAgICAgd2lkdGg6IDYwJTs7XG4gICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFkZHJlc3N7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tb2JpbGVfcHJpY2V7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zcGVje1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWxsVGFncyAudGFne1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5saWtlaXR7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDo4cHg7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgICAgIC5wcmljZXtcbiAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7ICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbGxlY3Rpb257ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDoyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIlxuLmJhbmtfaW5mb3tcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1heC13aWR0aDogMTIxMHB4OztcbiAgICBwYWRkaW5nOjMwcHggMTVweDtcbiAgICBtYXJnaW4tbGVmdDphdXRvO1xuICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC5iYW5rX3BpY3tcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYWN0aW9ue1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBidXR0b257XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjowIDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggMTVweDtcbiAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjNweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MjBweDtcbiAgICAgICAgICAgIH0gICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubG9hZF9pbmZve1xuICAgIG1heC13aWR0aDogMTE4MHB4OztcbiAgICBiYWNrZ3JvdW5kOiNmM2YyZjY7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzozMHB4O1xuICAgIG9se1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MjVweDtcbiAgICAgICAgbGl7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43ZW07XG4gICAgICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgICAgIGNvbG9yOiM0YzRjNGM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjBweDtcbiAgICAgICAgbGl7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6bm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgICAgICAgICAgIC5xX3RleHR7XG4gICAgICAgICAgICAgICAgY29sb3I6I2U2MDAxMjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hX3RleHR7XG4gICAgICAgICAgICAgICAgY29sb3I6IzAwMDAwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi5sb2FkX2RldGFpbHtcbiAgICAvKiAgc2VnbWFudHMgKi8gICAgXG4gICAgbWF4LXdpZHRoOiAxMTgwcHg7O1xuICAgIGJhY2tncm91bmQ6I2YzZjJmNjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICA+IC5zZWN7XG4gICAgICAgIHBhZGRpbmc6MjBweCAzMHB4IDMwcHggMzBweDtcbiAgICAgICAgYm9yZGVyLXRvcDoycHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgaDN7XG4gICAgICAgICAgICBjb2xvcjogIzE1NmRjZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyNnB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMTU2ZGNlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBvbHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDoyNXB4O1xuICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuN2VtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiM0YzRjNGM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYm94X2luZm97XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIFxuICAgICAgICAuc2Vje1xuICAgICAgICAgICAgcGFkZGluZzowICAyMHB4IDAgMDtcbiAgICAgICAgICAgIG1hcmdpbjowIDIwcHggMCAwO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICAgICAgdWx7XG4gICAgICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6bm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zYWxlbWFue1xuICAgIGRpc3BsYXk6IGZsZXg7ICAgXG4gICAgcGFkZGluZzoxMHB4IDIwcHggMTBweCAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAucGlje1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MTBweDtcbiAgICB9XG4gICAgLnRleHR7XG4gICAgICAgIC5uYW1le1xuICAgICAgICAgICAgZm9udC1zaXplOjE1cHg7XG4gICAgICAgICAgICBjb2xvcjojMDAwO1xuICAgICAgICB9XG4gICAgICAgIC50ZWx7XG4gICAgICAgICAgICBjb2xvcjojZTYwMDEyO1xuICAgICAgICAgICAgZm9udC1zaXplOjE1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpe1xuICAgIC5icmVhZGNydW1ie1xuICAgICAgICAuaWJveHtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjEzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IGRpdntcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MTNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubXRpdGxlIC5ib3ggLnRpdGxle1xuICAgICAgICBmb250LXNpemU6MjBweDsgICAgICAgIFxuICAgIH1cblxuICAgIC5sb2FkX2RldGFpbCA+IC5zZWN7XG4gICAgICAgIGgze1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYm94X2luZm97XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgPiAuc2Vje1xuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwcHggMCAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwcHggMjBweCAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMHB4OyAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLnNhbGVtYW57XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gXG5cblxuXG4gICAgLmJhbmtfaW5mb3tcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDBweDtcbiAgICAgICAgLmJhbmtfcGlje1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbntcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBidXR0b257XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmludGVyaW9yX2luZm97XG4gICAgbWF4LXdpZHRoOjExODBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmludGVyaW9yX2RldGFpbHtcbiAgICBtYXgtd2lkdGg6MTE4MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6MzBweCAwIDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBiYWNrZ3JvdW5kOiNmM2YyZjY7XG5cbiAgICAuYnRfbGluZXtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIC5nYWxsZXJ5e1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgICAgICAgXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLmxlZnR7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTs7XG4gICAgICAgICAgICBsZWZ0OjE1cHg7XG4gICAgICAgICAgICB0b3A6NTAlO1xuICAgICAgICAgICAgei1pbmRleDo2O1xuICAgICAgICB9XG4gICAgICAgIC5yaWdodHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOztcbiAgICAgICAgICAgIHJpZ2h0OjE1cHg7XG4gICAgICAgICAgICB0b3A6NTAlO1xuICAgICAgICAgICAgei1pbmRleDo2O1xuICAgICAgICB9XG4gICAgXG4gICAgICAgIC5zbGlkZXtcbiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7O1xuICAgICAgICAgICAgbWFyZ2luOmF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgLmFydGlzdHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjMwcHg7XG5cbiAgICAgICAgdWx7XG4gICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgIGNvbG9yOiM0YzRjNGM7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjdlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRlc2N7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDozMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiM0YzRjNGM7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjdlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgIGgze1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MzBweDtcbiAgICAgICAgY29sb3I6IzE1NmRjZTtcbiAgICAgICAgZm9udC1zaXplOjI2cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIC5jb250YWN0e1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MzBweDtcbiAgICAgICAgdWx7XG4gICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgIGNvbG9yOiM0YzRjNGM7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjdlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmhvdXNlX3RvcHtcbiAgICBtYXgtd2lkdGg6IDExODBweDtcbiAgICBwYWRkaW5nOjMwcHggMHB4IDMwcHg7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgLmhvdXNlX2dhbGxlcnl7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIHBhZGRpbmc6MCAzMHB4O1xuXG4gICAgICAgIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGV7XG4gICAgICAgICAgICBwYWRkaW5nOjNweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGlkZXItbmF2e1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLmxlZnR7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOztcbiAgICAgICAgICAgICAgICBsZWZ0Oi0yNXB4O1xuICAgICAgICAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDotMjBweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OjY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmlnaHR7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOztcbiAgICAgICAgICAgICAgICByaWdodDotMjVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOi0yMHB4O1xuICAgICAgICAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICAgICAgICAgei1pbmRleDo2O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5ob3VzZV9zcGVje1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBwYWRkaW5nOjE1cHg7XG4gICAgICAgIC5pbm5lcntcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgdWx7XG4gICAgICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgICAgICAgICAgICAgLnRse1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojN2Q3ZDdkO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5hY3Rpb257XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4OzsgICAgICAgICAgICBcbiAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgIC5idG57XG4gICAgICAgICAgICAgICBtYXJnaW46MCAxMHB4O1xuICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsgICAgXG4gICAgICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyAgICAgICAgXG4gICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICAgaGVpZ2h0OjIwcHg7XG4gICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjIwcHg7XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4uZ2FsbGVyeTM2MHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAxMTgwcHg7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBhLmJ0bntcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXgtd2lkdGg6IDE0MHB4O1xuICAgICAgICBtYXJnaW4tdG9wOi03MHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDotNzBweDtcbiAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgbGVmdDo1MCU7XG4gICAgICAgIGltZ3tcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgIGltZ3tcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG59XG5cblxuXG5cbi5ob3VzZV9pbmZvX3dpZHRoLFxuLmhvdXNlX2luZm97XG4gICAgbWF4LXdpZHRoOiAxMTgwcHg7XG4gICAgcGFkZGluZzozMHB4IDMwcHggMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgIGJhY2tncm91bmQ6I2YzZjJmNjtcbiAgICBmb250LXNpemU6MThweDtcbiAgICAmLmxhc3R7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIH0gICBcblxuICAgIGgze1xuICAgICAgICBjb2xvcjojMTU2ZGNlO1xuICAgICAgICBmb250LXNpemU6MjZweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgICB1bHtcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgbGl7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idF9saW5le1xuICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjZTBlMGUwOyAgICAgICBcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgfVxuXG4gICAgLmJveF9pbmZve1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyAgXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyAgXG4gICAgICAgXG4gICAgICAgIC5zZWN7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjIwcHg7XG4gICAgICAgICAgICB1bHtcbiAgICAgICAgICAgICAgICBsaXtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjE4cHg7XG4gICAgICAgICAgICAgICAgICAgIC50bHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IzdkN2Q3ZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAuaG91c2VfZ21hcHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOztcbiAgICAgICAgICAgICNtYXB7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MzAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubmF2aXtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgICAgICB0b3A6MjMwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6MTVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnJnYmEoMjEsMTA5LDIwNiwwLjgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6MTBweCAxNXB4IDEwcHggNDBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDoyNHB4OyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgbGVmdDoxNnB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6OHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yb2Fke1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6MTBweCAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIFxuXG5cblxuICAgIHRhYmxlLnByaWNlX3RhYmxle1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDg1MHB4OztcbiAgICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgICAgdGh7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiNlOGU4ZTg7XG4gICAgICAgIH1cbiAgICAgICAgdGR7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiNmZmY7XG4gICAgICAgIH1cbiAgICAgICAgdGgsdGR7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNhOWE5YTk7XG4gICAgICAgICAgICBwYWRkaW5nOjVweCAycHg7XG4gICAgICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhvdXNlX2luZm9fd2lkdGh7XG4gICAgcGFkZGluZzozMHB4IDBweCAwcHg7XG5cbiAgICAuZ2FsbGVyeXtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7ICAgICAgIFxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC5sZWZ0e1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7O1xuICAgICAgICAgICAgbGVmdDoxNXB4O1xuICAgICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6LTIwcHg7XG4gICAgICAgICAgICB6LWluZGV4OjY7XG4gICAgICAgIH1cbiAgICAgICAgLnJpZ2h0e1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7O1xuICAgICAgICAgICAgcmlnaHQ6MTVweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6LTIwcHg7XG4gICAgICAgICAgICB0b3A6NTAlO1xuICAgICAgICAgICAgei1pbmRleDo2O1xuICAgICAgICB9XG4gICAgXG4gICAgICAgIC5zbGlkZXtcbiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7O1xuICAgICAgICAgICAgbWFyZ2luOmF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCl7XG4gICAgLmhvdXNlX3RvcHsgXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgLmhvdXNlX2dhbGxlcnl7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDpoaWRkZW47XG4gICAgICAgIH1cbiAgICAgICAgLmhvdXNlX3NwZWN7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhvdXNlX2luZm8gLmJveF9pbmZve1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIC5zZWN7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDsgICBcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlMGUwZTA7OyAgICAgICAgXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmhvdXNlX2luZm8uYnRfbGluZXtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHggMTVweDs7XG4gICAgICAgIHRhYmxlLnByaWNlX3RhYmxlIHRoLFxuICAgICAgICB0YWJsZS5wcmljZV90YWJsZSB0ZHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ob3VzZV9pbmZvX3dpZHRoIC5nYWxsZXJ5e1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OmhpZGRlbjtcbiAgICB9XG5cbiAgICAgXG59IiwiLmhvbWVfdG9wX2dhbGxlcnl7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBvdmVyZmxvdy14OmhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAwICEgaW1wb3J0YW50O1xuXG4gICAgLml0ZW17XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6NTYwcHg7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIC5pbm5lcntcbiAgICAgICAgICAgIGhlaWdodDo1NjBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDoxMTgwcHg7XG4gICAgICAgICAgICBtYXJnaW46YXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAuaW5mb19ib3h7XG4gICAgICAgICAgICAgICAgd2lkdGg6NDUwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzozMHB4IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vaW1hZ2VzL21zZ2JveC5wbmcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgNXB4ICMzMzM7XG4gICAgICAgICAgICAgICAgaDN7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTo0MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoNXtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjI1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjdlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzo1cHggNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLXNsaWRle1xuICAgICAgICBvdXRsaW5lOm5vbmU7XG4gICAgfVxuXG5cblxuXG4gICAgLnNsaWNrLWRvdHN7XG4gICAgICAgIGJvdHRvbTozMHB4O1xuICAgICAgICB6LWluZGV4OiA1OztcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICBidXR0b257ICAgICAgICAgICAgXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjZweDtcbiAgICAgICAgICAgICAgICB3aWR0aDo2cHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OjUwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOi0zcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6LTNweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiNmZmZmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiMxNTZkY2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zbGljay1hY3RpdmV7XG4gICAgICAgICAgICBidXR0b257XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJvcmRlcjoxcHggc29saWQgIzE1NmRjZTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjZweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6NnB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDojMTU2ZGNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cblxuXG4uc3VibWVudXtcbiAgICBiYWNrZ3JvdW5kOiNlZmVjZjc7ICAgIFxuICAgIHVse1xuICAgICAgICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBoZWlnaHQ6MTUwcHg7ICAgXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyBcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICAuaWNvbntcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IzE1NmRkMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICB3aWR0aDoxcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjkycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2QxZDBkMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6NXB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMTU2ZGQxO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICAuaWNvbntcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IzE1NmRkMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gXG5cbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgY29sb3I6IzAwMDsgIFxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuXG4gICAgICAgICAgICAgICAgLmljb257XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjYwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDo2MHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNjNWM1YzU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDVweDtcbiAgICAgICAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy5wbmcpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDkwJTsgICBcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB9ICAgIFxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICYubTEgLmljb257XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaHAxLnBuZyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA1MCU7XG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAmLm0yIC5pY29ue1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2hwMi5wbmcpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDUlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubTMgLmljb257XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaHAzLnBuZyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0NSU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5tNCAuaWNvbntcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9ocDQucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLm01IC5pY29ue1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2hwNS5wbmcpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExODBweCl7XG4gICAgLnNlY3QyIC50ZXh0LmxlZnQgaDMucmliYm9ue1xuICAgICAgICBwYWRkaW5nLWxlZnQ6NTBweCAhIGltcG9ydGFudDtcbiAgICB9XG4gICAgLnNlY3QyIC50ZXh0LmxlZnQgLmxpc3R7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjUwcHggISBpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDUwcHgpe1xuICAgIC5zZWN0MiAudGV4dC5yaWdodCBoMy5yaWJib24sXG4gICAgLnNlY3QyIC50ZXh0LmxlZnQgaDMucmliYm9ue1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MjBweCAhIGltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDoyMHB4ICEgaW1wb3J0YW50O1xuICAgIH1cbiAgICAuc2VjdDIgLnRleHQucmlnaHQgLmxpc3QsXG4gICAgLnNlY3QyIC50ZXh0LmxlZnQgLmxpc3R7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjIwcHggISBpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MjBweCAhIGltcG9ydGFudDtcbiAgICB9XG59IiwiI2hvbWVfbWFwe1xuICAgIC8vIG1heC13aWR0aDogMTE4MHB4O1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjQ5MHB4O1xuICAgIG1hcmdpbjogYXV0bztcbn0iLCJcbi5ob21lX3ByZV9zYWxle1xuICAgIHdpZHRoOjEwMCU7XG4gICAgb3ZlcmZsb3cteDpoaWRkZW47XG4gICAgXG4gICAgLnNsaWNrLWRvdHN7XG4gICAgICAgIGJ1dHRvbnsgICAgICAgICAgICBcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6NnB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOjZweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OjUwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOi0zcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6LTNweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2MwYzBjMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IzE1NmRjZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLWFjdGl2ZXtcbiAgICAgICAgICAgIGJ1dHRvbntcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjMTU2ZGNlO1xuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6NnB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDo2cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6NTAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiMxNTZkY2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjdGlvbntcbiAgICAgICAgcGFkZGluZzozMHB4IDAgNTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAubW9yZXtcbiAgICAgICAgICAgIHBhZGRpbmc6NXB4IDgwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cblxufVxuXG4ucHJlX3NhbGV7XG4gICAgbWF4LXdpZHRoOiAxMTkwcHg7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwYWRkaW5nOjMwcHggMzBweCAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgXG4gICAgLmhvdXNle1xuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNjMmMyYzI7ICAgXG4gICAgICAgIHdpZHRoOmNhbGMoMjUlIC0gMjBweCk7XG4gICAgICAgIG1hcmdpbjowIDEwcHg7XG4gICAgICAgIHBhZGRpbmc6MTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5oZWFydHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDoyMHB4O1xuICAgICAgICAgICAgcmlnaHQ6MjBweDtcbiAgICAgICAgICAgIHotaW5kZXg6NjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6MzJweDtcblxuICAgICAgICB9XG5cbiAgICAgICAgLnBpY3tcbiAgICAgICAgICAgIGJvcmRlcjoycHggc29saWQgI2IwYjBiMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgaDN7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5hZGRyZXNze1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgY29sb3I6IzRjNGM0YztcbiAgICAgICAgfVxuICAgICAgICAuc3BlY3tcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGNvbG9yOiM0YzRjNGM7XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNle1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgY29sb3I6I2U2MDAxMjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuICAgICAgICAudGFnc3tcbiAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICAgIC50YWd7XG4gICAgICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjMTU2ZGNlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6MnB4IDVweDsgbWFyZ2luLXJpZ2h0OjVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiMxNTZkY2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLyogID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gICovXG5cblxuLnNlY3Qye1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLnBpY19ia3tcbiAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7ICBcbiAgICAgICAgaGVpZ2h0OjUwMHB4O1xuICAgICAgICAgICAgXG4gICAgICAgIC5ia19pbWd7XG4gICAgICAgICAgICBoZWlnaHQ6MTAwJTs7ICAgICAgICAgICBcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7ICAgICAgICAgICAgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtcbiAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAudGV4dHtcbiAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICBwYWRkaW5nOjMwcHggMCA1MHB4IDBweDtcbiAgICAgICAgYmFja2dyb3VuZDojZWZlY2Y2O1xuICAgICAgICBcbiAgICAgICAgaDMucmliYm9ue1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9yaXBvbjEucG5nJyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIGJvdHRvbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGhlaWdodDogNjZweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAubGlzdHsgICAgICAgICAgICBcbiAgICAgICAgICAgIHVse1xuICAgICAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICAgICBsaXtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDZkNWRhO1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0MzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubW9yZXtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjVweCA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VjdDIgLnRleHQucmlnaHQge1xuICAgIGgzLnJpYmJvbntcbiAgICAgICAgcGFkZGluZy1sZWZ0OjUwcHg7XG4gICAgfVxuICAgIC5saXN0e1xuICAgICAgICBtYXJnaW4tbGVmdDo1MHB4O1xuICAgIH1cbn1cblxuLnNlY3QyIC50ZXh0LmxlZnQge1xuICAgIGgzLnJpYmJvbntcbiAgICAgICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OmNhbGMoNTB2dyAtIDU5MHB4KTtcbiAgICB9XG4gICAgLmxpc3R7ICAgICAgICBcbiAgICAgICAgbWFyZ2luLWxlZnQ6Y2FsYyg1MHZ3IC0gNTkwcHgpO1xuICAgIH1cbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCl7XG4gICAgLnByZV9zYWxlIC5ob3VzZXtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgfVxuXG4gICAgLnNlY3Qye1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIC5waWNfYmt7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRleHQubGVmdCxcbiAgICAgICAgLnRleHQucmlnaHR7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGgzLnJpYmJvbntcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIC8vIGhlaWdodDo1NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxpc3R7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MTVweCAhIGltcG9ydGFudDs7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjE1cHg7XG4gICAgICAgICAgICAgICAgdWx7XG4gICAgICAgICAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxuICAgIC5zZWN0Mi5lbmR7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgLnRleHQubGVmdCB7XG4gICAgICAgICAgICBoMy5yaWJib257XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6NTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCl7XG4gICAgLnByZV9zYWxleyBcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDA7XG4gICAgICAgIC5ob3VzZXtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAz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LEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUE0QjtJQUl0QyxTQUFTLEVBQUUsSUFBNEIsR0RBaEM7RUFHSCxBQUFBLGVBQWUsQ0FBTztJQUFFLEtBQUssRUFBRSxFQUFFLEdBQUs7RUFFdEMsQUFBQSxjQUFjLENBQU87SUFBRSxLQUFLLEVBQUUsRUFBWSxHQUFJO0VBRzVDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxD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QyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQTRCO0lBSXRDLFNBQVMsRUFBRSxHQUE0QixHREFoQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQTRCO0lBSXRDLFNBQVMsRUFBRSxTQUE0QixHREFoQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQTRCO0lBSXRDLFNBQVMsRUFBRSxJQUE0QixHREFoQztFQUdILEFBQUEsZUFBZSxDQUFPO0lBQUUsS0FBSyxFQUFFLEVBQUUsR0FBSztFQUV0QyxBQUFBLGNBQWMsQ0FBTztJQUFFLEtBQUssRUFBRSxFQUFZLEdBQUk7RUFHNUMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFLLEVBRGxCLENBQUMsR0FDeUI7RUFBckMsQUFBQSxXQUFXLENBQVc7SUFBRSxLQUFL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R0FDaEI7RUFDRCxBQUFBLFlBQVksQ0FBTztJQUNqQixJQUFJLEVBQUUsUUFBUTtJQUNkLEtBQUssRUFBRSxJQUFJO0lBQ1gsU0FBUyxFQUFFLElBQUksR0FDaEI7RUFHQyxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUE0QjtJQUl0QyxTQUFTLEVBQUUsUUFBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUE0QjtJQUl0QyxTQUFTLEVBQUUsSUFBNEIsR0RBaEM7RUFHSCxBQUFBLGVBQWUsQ0FBTztJQUFFLEtBQUssRUFBRSxFQUFFLEdBQUs7RUFFdEMsQUFBQSxjQUFjLENBQU87SUFBRSxLQUFLLEVBQUUsRUFBWSxHQUFJO0VBRzVDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDLEdBQ3lCO0VBQXJDLEFBQUEsWUFBWSxDQUFVO0lBQUUsS0FBSyxFQURsQixFQUFDLEdBQ3lCO0VBQXJDLEFB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 */
