/* This document was compiled on Thu Mar 16 2023 12:42:44 GMT-0600 (Mountain Daylight Time) */
@charset "UTF-8";
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@font-face {
  font-family: Urbanist;
  font-style: italic;
  font-weight: 500;
  src: url("/fonts/Urbanist-BoldItalic.woff2") format("woff2"), url("/fonts/Urbanist-BoldItalic.woff") format("woff"); }

@font-face {
  font-family: Urbanist;
  font-style: normal;
  font-weight: 500;
  src: url("/fonts/Urbanist-Bold.woff2") format("woff2"), url("/fonts/Urbanist-Bold.woff") format("woff"); }

@font-face {
  font-family: Urbanist;
  font-style: italic;
  font-weight: 300;
  src: url("/fonts/Urbanist-MediumItalic.woff2") format("woff2"), url("/fonts/Urbanist-MediumItalic.woff") format("woff"); }

@font-face {
  font-family: Urbanist;
  font-style: normal;
  font-weight: 300;
  src: url("/fonts/Urbanist-Medium.woff2") format("woff2"), url("/fonts/Urbanist-Medium.woff") format("woff"); }

@font-face {
  font-family: Urbanist;
  font-style: italic;
  font-weight: normal;
  src: url("/fonts/Urbanist-Italic.woff2") format("woff2"), url("/fonts/Urbanist-Italic.woff") format("woff"); }

@font-face {
  font-family: Urbanist;
  font-style: normal;
  font-weight: normal;
  src: url("/fonts/Urbanist-Regular.woff2") format("woff2"), url("/fonts/Urbanist-Regular.woff") format("woff"); }

@font-face {
  font-family: Urbanist;
  font-style: italic;
  font-weight: 100;
  src: url("/fonts/Urbanist-LightItalic.woff2") format("woff2"), url("/fonts/Urbanist-LightItalic.woff") format("woff"); }

@font-face {
  font-family: Urbanist;
  font-style: normal;
  font-weight: 100;
  src: url("/fonts/Urbanist-Light.woff2") format("woff2"), url("/fonts/Urbanist-Light.woff") format("woff"); }

:root {
  --blue: #002f87;
  --indigo: #6610f2;
  --purple: #a3238e;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #e65526;
  --yellow: #efaf00;
  --green: #70d44b;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #002f87;
  --secondary: #6c757d;
  --success: #70d44b;
  --info: #17a2b8;
  --warning: #efaf00;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --wp: #002f87;
  --white: #fff;
  --black: #000;
  --ltgrey: #f2f2f2;
  --grey: #ced4da;
  --dkgrey: #6c757d;
  --accent-blue: #0075c9;
  --ltblue: #0075c9;
  --blue: #002f87;
  --dkblue: #0f2e4f;
  --purple: #a3238e;
  --green: #70d44b;
  --orange: #e65526;
  --ltorange: #efaf00;
  --yellow: #efaf00;
  --cta: #cd7300;
  --water-flosser: #0075c9;
  --whitening: #a3238e;
  --complete-care: #70d44b;
  --sonic-fusion: #e65526;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "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: rgba(0, 0, 0, 0); }

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

body {
  margin: 0;
  font-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "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:not(:focus-visible) {
  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: #0075c9;
  text-decoration: none;
  background-color: transparent; }
  a:hover {
    color: #00487d;
    text-decoration: underline; }

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none; }
  a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none; }

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em; }

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

figure {
  margin: 0 0 1rem; }

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

svg {
  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;
  text-align: -webkit-match-parent; }

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

button {
  border-radius: 0; }

button:focus:not(:focus-visible) {
  outline: 0; }

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

[role="button"] {
  cursor: pointer; }

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

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; }
  @media (max-width: 1200px) {
    legend {
      font-size: calc(1.275rem + 0.3vw) ; } }

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-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 500;
  line-height: 1.2; }

h1, .h1 {
  font-size: 2.3rem; }
  @media (max-width: 1200px) {
    h1, .h1 {
      font-size: calc(1.355rem + 1.26vw) ; } }

h2, .h2 {
  font-size: 1.8rem; }
  @media (max-width: 1200px) {
    h2, .h2 {
      font-size: calc(1.305rem + 0.66vw) ; } }

h3, .h3 {
  font-size: 1.5rem; }
  @media (max-width: 1200px) {
    h3, .h3 {
      font-size: calc(1.275rem + 0.3vw) ; } }

h4, .h4 {
  font-size: 1.3rem; }
  @media (max-width: 1200px) {
    h4, .h4 {
      font-size: calc(1.255rem + 0.06vw) ; } }

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

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; }
  @media (max-width: 1200px) {
    .display-1 {
      font-size: calc(1.725rem + 5.7vw) ; } }

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2; }
  @media (max-width: 1200px) {
    .display-2 {
      font-size: calc(1.675rem + 5.1vw) ; } }

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2; }
  @media (max-width: 1200px) {
    .display-3 {
      font-size: calc(1.575rem + 3.9vw) ; } }

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2; }
  @media (max-width: 1200px) {
    .display-4 {
      font-size: calc(1.475rem + 2.7vw) ; } }

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

small,
.small,
footer nav.legal .nav {
  font-size: 0.875em;
  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: 0.875em;
  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; }

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px; } }

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px; } }

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px; } }

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1140px; } }

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

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%; }

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%; }

.row-cols-3 > * {
  flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%; }

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%; }

.row-cols-6 > * {
  flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.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%; }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-sm-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-sm-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .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%; }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-md-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-md-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .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%; }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-lg-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-lg-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .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%; }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-xl-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-xl-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .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: #b8c5dd; }

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7a93c1; }

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

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

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #b5e9a1; }

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

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

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #f7d57a; }

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

.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-wp,
.table-wp > th,
.table-wp > td {
  background-color: #b8c5dd; }

.table-wp th,
.table-wp td,
.table-wp thead th,
.table-wp tbody + tbody {
  border-color: #7a93c1; }

.table-hover .table-wp:hover {
  background-color: #a7b7d5; }
  .table-hover .table-wp:hover > td,
  .table-hover .table-wp:hover > th {
    background-color: #a7b7d5; }

.table-white,
.table-white > th,
.table-white > td {
  background-color: white; }

.table-white th,
.table-white td,
.table-white thead th,
.table-white tbody + tbody {
  border-color: white; }

.table-hover .table-white:hover {
  background-color: #f2f2f2; }
  .table-hover .table-white:hover > td,
  .table-hover .table-white:hover > th {
    background-color: #f2f2f2; }

.table-black,
.table-black > th,
.table-black > td {
  background-color: #b8b8b8; }

.table-black th,
.table-black td,
.table-black thead th,
.table-black tbody + tbody {
  border-color: #7a7a7a; }

.table-hover .table-black:hover {
  background-color: #ababab; }
  .table-hover .table-black:hover > td,
  .table-hover .table-black:hover > th {
    background-color: #ababab; }

.table-ltgrey,
.table-ltgrey > th,
.table-ltgrey > td {
  background-color: #fbfbfb; }

.table-ltgrey th,
.table-ltgrey td,
.table-ltgrey thead th,
.table-ltgrey tbody + tbody {
  border-color: #f8f8f8; }

.table-hover .table-ltgrey:hover {
  background-color: #eeeeee; }
  .table-hover .table-ltgrey:hover > td,
  .table-hover .table-ltgrey:hover > th {
    background-color: #eeeeee; }

.table-grey,
.table-grey > th,
.table-grey > td {
  background-color: #f1f3f5; }

.table-grey th,
.table-grey td,
.table-grey thead th,
.table-grey tbody + tbody {
  border-color: #e6e9ec; }

.table-hover .table-grey:hover {
  background-color: #e2e6ea; }
  .table-hover .table-grey:hover > td,
  .table-hover .table-grey:hover > th {
    background-color: #e2e6ea; }

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

.table-dkgrey th,
.table-dkgrey td,
.table-dkgrey thead th,
.table-dkgrey tbody + tbody {
  border-color: #b3b7bb; }

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

.table-accent-blue,
.table-accent-blue > th,
.table-accent-blue > td {
  background-color: #b8d8f0; }

.table-accent-blue th,
.table-accent-blue td,
.table-accent-blue thead th,
.table-accent-blue tbody + tbody {
  border-color: #7ab7e3; }

.table-hover .table-accent-blue:hover {
  background-color: #a3ccec; }
  .table-hover .table-accent-blue:hover > td,
  .table-hover .table-accent-blue:hover > th {
    background-color: #a3ccec; }

.table-ltblue,
.table-ltblue > th,
.table-ltblue > td {
  background-color: #b8d8f0; }

.table-ltblue th,
.table-ltblue td,
.table-ltblue thead th,
.table-ltblue tbody + tbody {
  border-color: #7ab7e3; }

.table-hover .table-ltblue:hover {
  background-color: #a3ccec; }
  .table-hover .table-ltblue:hover > td,
  .table-hover .table-ltblue:hover > th {
    background-color: #a3ccec; }

.table-blue,
.table-blue > th,
.table-blue > td {
  background-color: #b8c5dd; }

.table-blue th,
.table-blue td,
.table-blue thead th,
.table-blue tbody + tbody {
  border-color: #7a93c1; }

.table-hover .table-blue:hover {
  background-color: #a7b7d5; }
  .table-hover .table-blue:hover > td,
  .table-hover .table-blue:hover > th {
    background-color: #a7b7d5; }

.table-dkblue,
.table-dkblue > th,
.table-dkblue > td {
  background-color: #bcc4ce; }

.table-dkblue th,
.table-dkblue td,
.table-dkblue thead th,
.table-dkblue tbody + tbody {
  border-color: #8292a3; }

.table-hover .table-dkblue:hover {
  background-color: #adb7c3; }
  .table-hover .table-dkblue:hover > td,
  .table-hover .table-dkblue:hover > th {
    background-color: #adb7c3; }

.table-purple,
.table-purple > th,
.table-purple > td {
  background-color: #e5c1df; }

.table-purple th,
.table-purple td,
.table-purple thead th,
.table-purple tbody + tbody {
  border-color: #cf8dc4; }

.table-hover .table-purple:hover {
  background-color: #ddafd6; }
  .table-hover .table-purple:hover > td,
  .table-hover .table-purple:hover > th {
    background-color: #ddafd6; }

.table-green,
.table-green > th,
.table-green > td {
  background-color: #d7f3cd; }

.table-green th,
.table-green td,
.table-green thead th,
.table-green tbody + tbody {
  border-color: #b5e9a1; }

.table-hover .table-green:hover {
  background-color: #c7eeb8; }
  .table-hover .table-green:hover > td,
  .table-hover .table-green:hover > th {
    background-color: #c7eeb8; }

.table-orange,
.table-orange > th,
.table-orange > td {
  background-color: #f8cfc2; }

.table-orange th,
.table-orange td,
.table-orange thead th,
.table-orange tbody + tbody {
  border-color: #f2a78e; }

.table-hover .table-orange:hover {
  background-color: #f5bdab; }
  .table-hover .table-orange:hover > td,
  .table-hover .table-orange:hover > th {
    background-color: #f5bdab; }

.table-ltorange,
.table-ltorange > th,
.table-ltorange > td {
  background-color: #fbe9b8; }

.table-ltorange th,
.table-ltorange td,
.table-ltorange thead th,
.table-ltorange tbody + tbody {
  border-color: #f7d57a; }

.table-hover .table-ltorange:hover {
  background-color: #fae2a0; }
  .table-hover .table-ltorange:hover > td,
  .table-hover .table-ltorange:hover > th {
    background-color: #fae2a0; }

.table-yellow,
.table-yellow > th,
.table-yellow > td {
  background-color: #fbe9b8; }

.table-yellow th,
.table-yellow td,
.table-yellow thead th,
.table-yellow tbody + tbody {
  border-color: #f7d57a; }

.table-hover .table-yellow:hover {
  background-color: #fae2a0; }
  .table-hover .table-yellow:hover > td,
  .table-hover .table-yellow:hover > th {
    background-color: #fae2a0; }

.table-cta,
.table-cta > th,
.table-cta > td {
  background-color: #f1d8b8; }

.table-cta th,
.table-cta td,
.table-cta thead th,
.table-cta tbody + tbody {
  border-color: #e5b67a; }

.table-hover .table-cta:hover {
  background-color: #edcca3; }
  .table-hover .table-cta:hover > td,
  .table-hover .table-cta:hover > th {
    background-color: #edcca3; }

.table-water-flosser,
.table-water-flosser > th,
.table-water-flosser > td {
  background-color: #b8d8f0; }

.table-water-flosser th,
.table-water-flosser td,
.table-water-flosser thead th,
.table-water-flosser tbody + tbody {
  border-color: #7ab7e3; }

.table-hover .table-water-flosser:hover {
  background-color: #a3ccec; }
  .table-hover .table-water-flosser:hover > td,
  .table-hover .table-water-flosser:hover > th {
    background-color: #a3ccec; }

.table-whitening,
.table-whitening > th,
.table-whitening > td {
  background-color: #e5c1df; }

.table-whitening th,
.table-whitening td,
.table-whitening thead th,
.table-whitening tbody + tbody {
  border-color: #cf8dc4; }

.table-hover .table-whitening:hover {
  background-color: #ddafd6; }
  .table-hover .table-whitening:hover > td,
  .table-hover .table-whitening:hover > th {
    background-color: #ddafd6; }

.table-complete-care,
.table-complete-care > th,
.table-complete-care > td {
  background-color: #d7f3cd; }

.table-complete-care th,
.table-complete-care td,
.table-complete-care thead th,
.table-complete-care tbody + tbody {
  border-color: #b5e9a1; }

.table-hover .table-complete-care:hover {
  background-color: #c7eeb8; }
  .table-hover .table-complete-care:hover > td,
  .table-hover .table-complete-care:hover > th {
    background-color: #c7eeb8; }

.table-sonic-fusion,
.table-sonic-fusion > th,
.table-sonic-fusion > td {
  background-color: #f8cfc2; }

.table-sonic-fusion th,
.table-sonic-fusion td,
.table-sonic-fusion thead th,
.table-sonic-fusion tbody + tbody {
  border-color: #f2a78e; }

.table-hover .table-sonic-fusion:hover {
  background-color: #f5bdab; }
  .table-hover .table-sonic-fusion:hover > td,
  .table-hover .table-sonic-fusion:hover > th {
    background-color: #f5bdab; }

.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-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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: #085eff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 47, 135, 0.25); }
  .form-control::placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control:disabled, .form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1; }

input[type="date"].form-control,
input[type="time"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control {
  appearance: none; }

select.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057; }

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: 0.375rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  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,
  .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: 0.875em;
  color: #70d44b; }

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  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: #212529;
  background-color: rgba(112, 212, 75, 0.9);
  border-radius: 0.25rem; }
  .form-row > .col > .valid-tooltip,
  .form-row > [class*="col-"] > .valid-tooltip {
    left: 5px; }

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

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #70d44b;
  padding-right: calc(1.5em + 0.75rem) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2370d44b' 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: right calc(0.375em + 0.1875rem) center;
  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: #70d44b;
    box-shadow: 0 0 0 0.2rem rgba(112, 212, 75, 0.25); }

.was-validated select.form-control:valid, select.form-control.is-valid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center; }

.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: #70d44b;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2370d44b' 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") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat; }
  .was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
    border-color: #70d44b;
    box-shadow: 0 0 0 0.2rem rgba(112, 212, 75, 0.25); }

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

.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: #70d44b; }
  .was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
    border-color: #70d44b; }

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

.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(112, 212, 75, 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: #70d44b; }

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #70d44b; }

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #70d44b;
  box-shadow: 0 0 0 0.2rem rgba(112, 212, 75, 0.25); }

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

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  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; }
  .form-row > .col > .invalid-tooltip,
  .form-row > [class*="col-"] > .invalid-tooltip {
    left: 5px; }

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

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  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 select.form-control:invalid, select.form-control.is-invalid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center; }

.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(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat; }
  .was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.was-validated .form-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: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: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-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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, 47, 135, 0.25); }
  .btn.disabled, .btn:disabled {
    opacity: 0.65; }
  .btn:not(:disabled):not(.disabled) {
    cursor: pointer; }

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

.btn-primary {
  color: #fff;
  background-color: #002f87;
  border-color: #002f87; }
  .btn-primary:hover {
    color: #fff;
    background-color: #002261;
    border-color: #001d54; }
  .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: #002261;
    border-color: #001d54;
    box-shadow: 0 0 0 0.2rem rgba(38, 78, 153, 0.5); }
  .btn-primary.disabled, .btn-primary:disabled {
    color: #fff;
    background-color: #002f87;
    border-color: #002f87; }
  .btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
  .show > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #001d54;
    border-color: #001947; }
    .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, 78, 153, 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 {
    color: #fff;
    background-color: #5a6268;
    border-color: #545b62;
    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: #212529;
  background-color: #70d44b;
  border-color: #70d44b; }
  .btn-success:hover {
    color: #212529;
    background-color: #59c930;
    border-color: #55be2e; }
  .btn-success:focus, .btn-success.focus {
    color: #212529;
    background-color: #59c930;
    border-color: #55be2e;
    box-shadow: 0 0 0 0.2rem rgba(100, 186, 70, 0.5); }
  .btn-success.disabled, .btn-success:disabled {
    color: #212529;
    background-color: #70d44b;
    border-color: #70d44b; }
  .btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
  .show > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #55be2e;
    border-color: #50b42b; }
    .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(100, 186, 70, 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 {
    color: #fff;
    background-color: #138496;
    border-color: #117a8b;
    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: #efaf00;
  border-color: #efaf00; }
  .btn-warning:hover {
    color: #fff;
    background-color: #c99300;
    border-color: #bc8a00; }
  .btn-warning:focus, .btn-warning.focus {
    color: #fff;
    background-color: #c99300;
    border-color: #bc8a00;
    box-shadow: 0 0 0 0.2rem rgba(208, 154, 6, 0.5); }
  .btn-warning.disabled, .btn-warning:disabled {
    color: #212529;
    background-color: #efaf00;
    border-color: #efaf00; }
  .btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
  .show > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #bc8a00;
    border-color: #af8000; }
    .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(208, 154, 6, 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 {
    color: #fff;
    background-color: #c82333;
    border-color: #bd2130;
    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 {
    color: #212529;
    background-color: #e2e6ea;
    border-color: #dae0e5;
    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 {
    color: #fff;
    background-color: #23272b;
    border-color: #1d2124;
    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-wp {
  color: #fff;
  background-color: #002f87;
  border-color: #002f87; }
  .btn-wp:hover {
    color: #fff;
    background-color: #002261;
    border-color: #001d54; }
  .btn-wp:focus, .btn-wp.focus {
    color: #fff;
    background-color: #002261;
    border-color: #001d54;
    box-shadow: 0 0 0 0.2rem rgba(38, 78, 153, 0.5); }
  .btn-wp.disabled, .btn-wp:disabled {
    color: #fff;
    background-color: #002f87;
    border-color: #002f87; }
  .btn-wp:not(:disabled):not(.disabled):active, .btn-wp:not(:disabled):not(.disabled).active,
  .show > .btn-wp.dropdown-toggle {
    color: #fff;
    background-color: #001d54;
    border-color: #001947; }
    .btn-wp:not(:disabled):not(.disabled):active:focus, .btn-wp:not(:disabled):not(.disabled).active:focus,
    .show > .btn-wp.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(38, 78, 153, 0.5); }

.btn-white {
  color: #212529;
  background-color: #fff;
  border-color: #fff; }
  .btn-white:hover {
    color: #212529;
    background-color: #ececec;
    border-color: #e6e6e6; }
  .btn-white:focus, .btn-white.focus {
    color: #212529;
    background-color: #ececec;
    border-color: #e6e6e6;
    box-shadow: 0 0 0 0.2rem rgba(222, 222, 223, 0.5); }
  .btn-white.disabled, .btn-white:disabled {
    color: #212529;
    background-color: #fff;
    border-color: #fff; }
  .btn-white:not(:disabled):not(.disabled):active, .btn-white:not(:disabled):not(.disabled).active,
  .show > .btn-white.dropdown-toggle {
    color: #212529;
    background-color: #e6e6e6;
    border-color: #dfdfdf; }
    .btn-white:not(:disabled):not(.disabled):active:focus, .btn-white:not(:disabled):not(.disabled).active:focus,
    .show > .btn-white.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(222, 222, 223, 0.5); }

.btn-black {
  color: #fff;
  background-color: #000;
  border-color: #000; }
  .btn-black:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-black:focus, .btn-black.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }
  .btn-black.disabled, .btn-black:disabled {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-black:not(:disabled):not(.disabled):active, .btn-black:not(:disabled):not(.disabled).active,
  .show > .btn-black.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .btn-black:not(:disabled):not(.disabled):active:focus, .btn-black:not(:disabled):not(.disabled).active:focus,
    .show > .btn-black.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }

.btn-ltgrey {
  color: #212529;
  background-color: #f2f2f2;
  border-color: #f2f2f2; }
  .btn-ltgrey:hover {
    color: #212529;
    background-color: #dfdfdf;
    border-color: #d9d9d9; }
  .btn-ltgrey:focus, .btn-ltgrey.focus {
    color: #212529;
    background-color: #dfdfdf;
    border-color: #d9d9d9;
    box-shadow: 0 0 0 0.2rem rgba(211, 211, 212, 0.5); }
  .btn-ltgrey.disabled, .btn-ltgrey:disabled {
    color: #212529;
    background-color: #f2f2f2;
    border-color: #f2f2f2; }
  .btn-ltgrey:not(:disabled):not(.disabled):active, .btn-ltgrey:not(:disabled):not(.disabled).active,
  .show > .btn-ltgrey.dropdown-toggle {
    color: #212529;
    background-color: #d9d9d9;
    border-color: #d2d2d2; }
    .btn-ltgrey:not(:disabled):not(.disabled):active:focus, .btn-ltgrey:not(:disabled):not(.disabled).active:focus,
    .show > .btn-ltgrey.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(211, 211, 212, 0.5); }

.btn-grey {
  color: #212529;
  background-color: #ced4da;
  border-color: #ced4da; }
  .btn-grey:hover {
    color: #212529;
    background-color: #b8c1ca;
    border-color: #b1bbc4; }
  .btn-grey:focus, .btn-grey.focus {
    color: #212529;
    background-color: #b8c1ca;
    border-color: #b1bbc4;
    box-shadow: 0 0 0 0.2rem rgba(180, 186, 191, 0.5); }
  .btn-grey.disabled, .btn-grey:disabled {
    color: #212529;
    background-color: #ced4da;
    border-color: #ced4da; }
  .btn-grey:not(:disabled):not(.disabled):active, .btn-grey:not(:disabled):not(.disabled).active,
  .show > .btn-grey.dropdown-toggle {
    color: #212529;
    background-color: #b1bbc4;
    border-color: #aab4bf; }
    .btn-grey:not(:disabled):not(.disabled):active:focus, .btn-grey:not(:disabled):not(.disabled).active:focus,
    .show > .btn-grey.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(180, 186, 191, 0.5); }

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

.btn-accent-blue {
  color: #fff;
  background-color: #0075c9;
  border-color: #0075c9; }
  .btn-accent-blue:hover {
    color: #fff;
    background-color: #005fa3;
    border-color: #005796; }
  .btn-accent-blue:focus, .btn-accent-blue.focus {
    color: #fff;
    background-color: #005fa3;
    border-color: #005796;
    box-shadow: 0 0 0 0.2rem rgba(38, 138, 209, 0.5); }
  .btn-accent-blue.disabled, .btn-accent-blue:disabled {
    color: #fff;
    background-color: #0075c9;
    border-color: #0075c9; }
  .btn-accent-blue:not(:disabled):not(.disabled):active, .btn-accent-blue:not(:disabled):not(.disabled).active,
  .show > .btn-accent-blue.dropdown-toggle {
    color: #fff;
    background-color: #005796;
    border-color: #005089; }
    .btn-accent-blue:not(:disabled):not(.disabled):active:focus, .btn-accent-blue:not(:disabled):not(.disabled).active:focus,
    .show > .btn-accent-blue.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(38, 138, 209, 0.5); }

.btn-ltblue {
  color: #fff;
  background-color: #0075c9;
  border-color: #0075c9; }
  .btn-ltblue:hover {
    color: #fff;
    background-color: #005fa3;
    border-color: #005796; }
  .btn-ltblue:focus, .btn-ltblue.focus {
    color: #fff;
    background-color: #005fa3;
    border-color: #005796;
    box-shadow: 0 0 0 0.2rem rgba(38, 138, 209, 0.5); }
  .btn-ltblue.disabled, .btn-ltblue:disabled {
    color: #fff;
    background-color: #0075c9;
    border-color: #0075c9; }
  .btn-ltblue:not(:disabled):not(.disabled):active, .btn-ltblue:not(:disabled):not(.disabled).active,
  .show > .btn-ltblue.dropdown-toggle {
    color: #fff;
    background-color: #005796;
    border-color: #005089; }
    .btn-ltblue:not(:disabled):not(.disabled):active:focus, .btn-ltblue:not(:disabled):not(.disabled).active:focus,
    .show > .btn-ltblue.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(38, 138, 209, 0.5); }

.btn-blue {
  color: #fff;
  background-color: #002f87;
  border-color: #002f87; }
  .btn-blue:hover {
    color: #fff;
    background-color: #002261;
    border-color: #001d54; }
  .btn-blue:focus, .btn-blue.focus {
    color: #fff;
    background-color: #002261;
    border-color: #001d54;
    box-shadow: 0 0 0 0.2rem rgba(38, 78, 153, 0.5); }
  .btn-blue.disabled, .btn-blue:disabled {
    color: #fff;
    background-color: #002f87;
    border-color: #002f87; }
  .btn-blue:not(:disabled):not(.disabled):active, .btn-blue:not(:disabled):not(.disabled).active,
  .show > .btn-blue.dropdown-toggle {
    color: #fff;
    background-color: #001d54;
    border-color: #001947; }
    .btn-blue:not(:disabled):not(.disabled):active:focus, .btn-blue:not(:disabled):not(.disabled).active:focus,
    .show > .btn-blue.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(38, 78, 153, 0.5); }

.btn-dkblue {
  color: #fff;
  background-color: #0f2e4f;
  border-color: #0f2e4f; }
  .btn-dkblue:hover {
    color: #fff;
    background-color: #091b2f;
    border-color: #071524; }
  .btn-dkblue:focus, .btn-dkblue.focus {
    color: #fff;
    background-color: #091b2f;
    border-color: #071524;
    box-shadow: 0 0 0 0.2rem rgba(51, 77, 105, 0.5); }
  .btn-dkblue.disabled, .btn-dkblue:disabled {
    color: #fff;
    background-color: #0f2e4f;
    border-color: #0f2e4f; }
  .btn-dkblue:not(:disabled):not(.disabled):active, .btn-dkblue:not(:disabled):not(.disabled).active,
  .show > .btn-dkblue.dropdown-toggle {
    color: #fff;
    background-color: #071524;
    border-color: #050f19; }
    .btn-dkblue:not(:disabled):not(.disabled):active:focus, .btn-dkblue:not(:disabled):not(.disabled).active:focus,
    .show > .btn-dkblue.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(51, 77, 105, 0.5); }

.btn-purple {
  color: #fff;
  background-color: #a3238e;
  border-color: #a3238e; }
  .btn-purple:hover {
    color: #fff;
    background-color: #841c73;
    border-color: #791a69; }
  .btn-purple:focus, .btn-purple.focus {
    color: #fff;
    background-color: #841c73;
    border-color: #791a69;
    box-shadow: 0 0 0 0.2rem rgba(177, 68, 159, 0.5); }
  .btn-purple.disabled, .btn-purple:disabled {
    color: #fff;
    background-color: #a3238e;
    border-color: #a3238e; }
  .btn-purple:not(:disabled):not(.disabled):active, .btn-purple:not(:disabled):not(.disabled).active,
  .show > .btn-purple.dropdown-toggle {
    color: #fff;
    background-color: #791a69;
    border-color: #6f1860; }
    .btn-purple:not(:disabled):not(.disabled):active:focus, .btn-purple:not(:disabled):not(.disabled).active:focus,
    .show > .btn-purple.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(177, 68, 159, 0.5); }

.btn-green {
  color: #212529;
  background-color: #70d44b;
  border-color: #70d44b; }
  .btn-green:hover {
    color: #212529;
    background-color: #59c930;
    border-color: #55be2e; }
  .btn-green:focus, .btn-green.focus {
    color: #212529;
    background-color: #59c930;
    border-color: #55be2e;
    box-shadow: 0 0 0 0.2rem rgba(100, 186, 70, 0.5); }
  .btn-green.disabled, .btn-green:disabled {
    color: #212529;
    background-color: #70d44b;
    border-color: #70d44b; }
  .btn-green:not(:disabled):not(.disabled):active, .btn-green:not(:disabled):not(.disabled).active,
  .show > .btn-green.dropdown-toggle {
    color: #fff;
    background-color: #55be2e;
    border-color: #50b42b; }
    .btn-green:not(:disabled):not(.disabled):active:focus, .btn-green:not(:disabled):not(.disabled).active:focus,
    .show > .btn-green.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(100, 186, 70, 0.5); }

.btn-orange {
  color: #fff;
  background-color: #e65526;
  border-color: #e65526; }
  .btn-orange:hover {
    color: #fff;
    background-color: #ce4418;
    border-color: #c34116; }
  .btn-orange:focus, .btn-orange.focus {
    color: #fff;
    background-color: #ce4418;
    border-color: #c34116;
    box-shadow: 0 0 0 0.2rem rgba(234, 111, 71, 0.5); }
  .btn-orange.disabled, .btn-orange:disabled {
    color: #fff;
    background-color: #e65526;
    border-color: #e65526; }
  .btn-orange:not(:disabled):not(.disabled):active, .btn-orange:not(:disabled):not(.disabled).active,
  .show > .btn-orange.dropdown-toggle {
    color: #fff;
    background-color: #c34116;
    border-color: #b73d15; }
    .btn-orange:not(:disabled):not(.disabled):active:focus, .btn-orange:not(:disabled):not(.disabled).active:focus,
    .show > .btn-orange.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(234, 111, 71, 0.5); }

.btn-ltorange {
  color: #212529;
  background-color: #efaf00;
  border-color: #efaf00; }
  .btn-ltorange:hover {
    color: #fff;
    background-color: #c99300;
    border-color: #bc8a00; }
  .btn-ltorange:focus, .btn-ltorange.focus {
    color: #fff;
    background-color: #c99300;
    border-color: #bc8a00;
    box-shadow: 0 0 0 0.2rem rgba(208, 154, 6, 0.5); }
  .btn-ltorange.disabled, .btn-ltorange:disabled {
    color: #212529;
    background-color: #efaf00;
    border-color: #efaf00; }
  .btn-ltorange:not(:disabled):not(.disabled):active, .btn-ltorange:not(:disabled):not(.disabled).active,
  .show > .btn-ltorange.dropdown-toggle {
    color: #fff;
    background-color: #bc8a00;
    border-color: #af8000; }
    .btn-ltorange:not(:disabled):not(.disabled):active:focus, .btn-ltorange:not(:disabled):not(.disabled).active:focus,
    .show > .btn-ltorange.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(208, 154, 6, 0.5); }

.btn-yellow {
  color: #212529;
  background-color: #efaf00;
  border-color: #efaf00; }
  .btn-yellow:hover {
    color: #fff;
    background-color: #c99300;
    border-color: #bc8a00; }
  .btn-yellow:focus, .btn-yellow.focus {
    color: #fff;
    background-color: #c99300;
    border-color: #bc8a00;
    box-shadow: 0 0 0 0.2rem rgba(208, 154, 6, 0.5); }
  .btn-yellow.disabled, .btn-yellow:disabled {
    color: #212529;
    background-color: #efaf00;
    border-color: #efaf00; }
  .btn-yellow:not(:disabled):not(.disabled):active, .btn-yellow:not(:disabled):not(.disabled).active,
  .show > .btn-yellow.dropdown-toggle {
    color: #fff;
    background-color: #bc8a00;
    border-color: #af8000; }
    .btn-yellow:not(:disabled):not(.disabled):active:focus, .btn-yellow:not(:disabled):not(.disabled).active:focus,
    .show > .btn-yellow.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(208, 154, 6, 0.5); }

.btn-cta {
  color: #fff;
  background-color: #cd7300;
  border-color: #cd7300; }
  .btn-cta:hover {
    color: #fff;
    background-color: #a75e00;
    border-color: #9a5600; }
  .btn-cta:focus, .btn-cta.focus {
    color: #fff;
    background-color: #a75e00;
    border-color: #9a5600;
    box-shadow: 0 0 0 0.2rem rgba(213, 136, 38, 0.5); }
  .btn-cta.disabled, .btn-cta:disabled {
    color: #fff;
    background-color: #cd7300;
    border-color: #cd7300; }
  .btn-cta:not(:disabled):not(.disabled):active, .btn-cta:not(:disabled):not(.disabled).active,
  .show > .btn-cta.dropdown-toggle {
    color: #fff;
    background-color: #9a5600;
    border-color: #8d4f00; }
    .btn-cta:not(:disabled):not(.disabled):active:focus, .btn-cta:not(:disabled):not(.disabled).active:focus,
    .show > .btn-cta.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(213, 136, 38, 0.5); }

.btn-water-flosser {
  color: #fff;
  background-color: #0075c9;
  border-color: #0075c9; }
  .btn-water-flosser:hover {
    color: #fff;
    background-color: #005fa3;
    border-color: #005796; }
  .btn-water-flosser:focus, .btn-water-flosser.focus {
    color: #fff;
    background-color: #005fa3;
    border-color: #005796;
    box-shadow: 0 0 0 0.2rem rgba(38, 138, 209, 0.5); }
  .btn-water-flosser.disabled, .btn-water-flosser:disabled {
    color: #fff;
    background-color: #0075c9;
    border-color: #0075c9; }
  .btn-water-flosser:not(:disabled):not(.disabled):active, .btn-water-flosser:not(:disabled):not(.disabled).active,
  .show > .btn-water-flosser.dropdown-toggle {
    color: #fff;
    background-color: #005796;
    border-color: #005089; }
    .btn-water-flosser:not(:disabled):not(.disabled):active:focus, .btn-water-flosser:not(:disabled):not(.disabled).active:focus,
    .show > .btn-water-flosser.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(38, 138, 209, 0.5); }

.btn-whitening {
  color: #fff;
  background-color: #a3238e;
  border-color: #a3238e; }
  .btn-whitening:hover {
    color: #fff;
    background-color: #841c73;
    border-color: #791a69; }
  .btn-whitening:focus, .btn-whitening.focus {
    color: #fff;
    background-color: #841c73;
    border-color: #791a69;
    box-shadow: 0 0 0 0.2rem rgba(177, 68, 159, 0.5); }
  .btn-whitening.disabled, .btn-whitening:disabled {
    color: #fff;
    background-color: #a3238e;
    border-color: #a3238e; }
  .btn-whitening:not(:disabled):not(.disabled):active, .btn-whitening:not(:disabled):not(.disabled).active,
  .show > .btn-whitening.dropdown-toggle {
    color: #fff;
    background-color: #791a69;
    border-color: #6f1860; }
    .btn-whitening:not(:disabled):not(.disabled):active:focus, .btn-whitening:not(:disabled):not(.disabled).active:focus,
    .show > .btn-whitening.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(177, 68, 159, 0.5); }

.btn-complete-care {
  color: #212529;
  background-color: #70d44b;
  border-color: #70d44b; }
  .btn-complete-care:hover {
    color: #212529;
    background-color: #59c930;
    border-color: #55be2e; }
  .btn-complete-care:focus, .btn-complete-care.focus {
    color: #212529;
    background-color: #59c930;
    border-color: #55be2e;
    box-shadow: 0 0 0 0.2rem rgba(100, 186, 70, 0.5); }
  .btn-complete-care.disabled, .btn-complete-care:disabled {
    color: #212529;
    background-color: #70d44b;
    border-color: #70d44b; }
  .btn-complete-care:not(:disabled):not(.disabled):active, .btn-complete-care:not(:disabled):not(.disabled).active,
  .show > .btn-complete-care.dropdown-toggle {
    color: #fff;
    background-color: #55be2e;
    border-color: #50b42b; }
    .btn-complete-care:not(:disabled):not(.disabled):active:focus, .btn-complete-care:not(:disabled):not(.disabled).active:focus,
    .show > .btn-complete-care.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(100, 186, 70, 0.5); }

.btn-sonic-fusion {
  color: #fff;
  background-color: #e65526;
  border-color: #e65526; }
  .btn-sonic-fusion:hover {
    color: #fff;
    background-color: #ce4418;
    border-color: #c34116; }
  .btn-sonic-fusion:focus, .btn-sonic-fusion.focus {
    color: #fff;
    background-color: #ce4418;
    border-color: #c34116;
    box-shadow: 0 0 0 0.2rem rgba(234, 111, 71, 0.5); }
  .btn-sonic-fusion.disabled, .btn-sonic-fusion:disabled {
    color: #fff;
    background-color: #e65526;
    border-color: #e65526; }
  .btn-sonic-fusion:not(:disabled):not(.disabled):active, .btn-sonic-fusion:not(:disabled):not(.disabled).active,
  .show > .btn-sonic-fusion.dropdown-toggle {
    color: #fff;
    background-color: #c34116;
    border-color: #b73d15; }
    .btn-sonic-fusion:not(:disabled):not(.disabled):active:focus, .btn-sonic-fusion:not(:disabled):not(.disabled).active:focus,
    .show > .btn-sonic-fusion.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(234, 111, 71, 0.5); }

.btn-outline-primary {
  color: #002f87;
  border-color: #002f87; }
  .btn-outline-primary:hover {
    color: #fff;
    background-color: #002f87;
    border-color: #002f87; }
  .btn-outline-primary:focus, .btn-outline-primary.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 47, 135, 0.5); }
  .btn-outline-primary.disabled, .btn-outline-primary:disabled {
    color: #002f87;
    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: #002f87;
    border-color: #002f87; }
    .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, 47, 135, 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: #70d44b;
  border-color: #70d44b; }
  .btn-outline-success:hover {
    color: #212529;
    background-color: #70d44b;
    border-color: #70d44b; }
  .btn-outline-success:focus, .btn-outline-success.focus {
    box-shadow: 0 0 0 0.2rem rgba(112, 212, 75, 0.5); }
  .btn-outline-success.disabled, .btn-outline-success:disabled {
    color: #70d44b;
    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: #212529;
    background-color: #70d44b;
    border-color: #70d44b; }
    .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(112, 212, 75, 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: #efaf00;
  border-color: #efaf00; }
  .btn-outline-warning:hover {
    color: #212529;
    background-color: #efaf00;
    border-color: #efaf00; }
  .btn-outline-warning:focus, .btn-outline-warning.focus {
    box-shadow: 0 0 0 0.2rem rgba(239, 175, 0, 0.5); }
  .btn-outline-warning.disabled, .btn-outline-warning:disabled {
    color: #efaf00;
    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: #efaf00;
    border-color: #efaf00; }
    .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(239, 175, 0, 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-outline-wp {
  color: #002f87;
  border-color: #002f87; }
  .btn-outline-wp:hover {
    color: #fff;
    background-color: #002f87;
    border-color: #002f87; }
  .btn-outline-wp:focus, .btn-outline-wp.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 47, 135, 0.5); }
  .btn-outline-wp.disabled, .btn-outline-wp:disabled {
    color: #002f87;
    background-color: transparent; }
  .btn-outline-wp:not(:disabled):not(.disabled):active, .btn-outline-wp:not(:disabled):not(.disabled).active,
  .show > .btn-outline-wp.dropdown-toggle {
    color: #fff;
    background-color: #002f87;
    border-color: #002f87; }
    .btn-outline-wp:not(:disabled):not(.disabled):active:focus, .btn-outline-wp:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-wp.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 47, 135, 0.5); }

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

.btn-outline-black {
  color: #000;
  border-color: #000; }
  .btn-outline-black:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-outline-black:focus, .btn-outline-black.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
  .btn-outline-black.disabled, .btn-outline-black:disabled {
    color: #000;
    background-color: transparent; }
  .btn-outline-black:not(:disabled):not(.disabled):active, .btn-outline-black:not(:disabled):not(.disabled).active,
  .show > .btn-outline-black.dropdown-toggle {
    color: #fff;
    background-color: #000;
    border-color: #000; }
    .btn-outline-black:not(:disabled):not(.disabled):active:focus, .btn-outline-black:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-black.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-outline-ltgrey {
  color: #f2f2f2;
  border-color: #f2f2f2; }
  .btn-outline-ltgrey:hover {
    color: #212529;
    background-color: #f2f2f2;
    border-color: #f2f2f2; }
  .btn-outline-ltgrey:focus, .btn-outline-ltgrey.focus {
    box-shadow: 0 0 0 0.2rem rgba(242, 242, 242, 0.5); }
  .btn-outline-ltgrey.disabled, .btn-outline-ltgrey:disabled {
    color: #f2f2f2;
    background-color: transparent; }
  .btn-outline-ltgrey:not(:disabled):not(.disabled):active, .btn-outline-ltgrey:not(:disabled):not(.disabled).active,
  .show > .btn-outline-ltgrey.dropdown-toggle {
    color: #212529;
    background-color: #f2f2f2;
    border-color: #f2f2f2; }
    .btn-outline-ltgrey:not(:disabled):not(.disabled):active:focus, .btn-outline-ltgrey:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-ltgrey.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(242, 242, 242, 0.5); }

.btn-outline-grey {
  color: #ced4da;
  border-color: #ced4da; }
  .btn-outline-grey:hover {
    color: #212529;
    background-color: #ced4da;
    border-color: #ced4da; }
  .btn-outline-grey:focus, .btn-outline-grey.focus {
    box-shadow: 0 0 0 0.2rem rgba(206, 212, 218, 0.5); }
  .btn-outline-grey.disabled, .btn-outline-grey:disabled {
    color: #ced4da;
    background-color: transparent; }
  .btn-outline-grey:not(:disabled):not(.disabled):active, .btn-outline-grey:not(:disabled):not(.disabled).active,
  .show > .btn-outline-grey.dropdown-toggle {
    color: #212529;
    background-color: #ced4da;
    border-color: #ced4da; }
    .btn-outline-grey:not(:disabled):not(.disabled):active:focus, .btn-outline-grey:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-grey.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(206, 212, 218, 0.5); }

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

.btn-outline-accent-blue {
  color: #0075c9;
  border-color: #0075c9; }
  .btn-outline-accent-blue:hover {
    color: #fff;
    background-color: #0075c9;
    border-color: #0075c9; }
  .btn-outline-accent-blue:focus, .btn-outline-accent-blue.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 117, 201, 0.5); }
  .btn-outline-accent-blue.disabled, .btn-outline-accent-blue:disabled {
    color: #0075c9;
    background-color: transparent; }
  .btn-outline-accent-blue:not(:disabled):not(.disabled):active, .btn-outline-accent-blue:not(:disabled):not(.disabled).active,
  .show > .btn-outline-accent-blue.dropdown-toggle {
    color: #fff;
    background-color: #0075c9;
    border-color: #0075c9; }
    .btn-outline-accent-blue:not(:disabled):not(.disabled):active:focus, .btn-outline-accent-blue:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-accent-blue.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 117, 201, 0.5); }

.btn-outline-ltblue {
  color: #0075c9;
  border-color: #0075c9; }
  .btn-outline-ltblue:hover {
    color: #fff;
    background-color: #0075c9;
    border-color: #0075c9; }
  .btn-outline-ltblue:focus, .btn-outline-ltblue.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 117, 201, 0.5); }
  .btn-outline-ltblue.disabled, .btn-outline-ltblue:disabled {
    color: #0075c9;
    background-color: transparent; }
  .btn-outline-ltblue:not(:disabled):not(.disabled):active, .btn-outline-ltblue:not(:disabled):not(.disabled).active,
  .show > .btn-outline-ltblue.dropdown-toggle {
    color: #fff;
    background-color: #0075c9;
    border-color: #0075c9; }
    .btn-outline-ltblue:not(:disabled):not(.disabled):active:focus, .btn-outline-ltblue:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-ltblue.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 117, 201, 0.5); }

.btn-outline-blue {
  color: #002f87;
  border-color: #002f87; }
  .btn-outline-blue:hover {
    color: #fff;
    background-color: #002f87;
    border-color: #002f87; }
  .btn-outline-blue:focus, .btn-outline-blue.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 47, 135, 0.5); }
  .btn-outline-blue.disabled, .btn-outline-blue:disabled {
    color: #002f87;
    background-color: transparent; }
  .btn-outline-blue:not(:disabled):not(.disabled):active, .btn-outline-blue:not(:disabled):not(.disabled).active,
  .show > .btn-outline-blue.dropdown-toggle {
    color: #fff;
    background-color: #002f87;
    border-color: #002f87; }
    .btn-outline-blue:not(:disabled):not(.disabled):active:focus, .btn-outline-blue:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-blue.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 47, 135, 0.5); }

.btn-outline-dkblue {
  color: #0f2e4f;
  border-color: #0f2e4f; }
  .btn-outline-dkblue:hover {
    color: #fff;
    background-color: #0f2e4f;
    border-color: #0f2e4f; }
  .btn-outline-dkblue:focus, .btn-outline-dkblue.focus {
    box-shadow: 0 0 0 0.2rem rgba(15, 46, 79, 0.5); }
  .btn-outline-dkblue.disabled, .btn-outline-dkblue:disabled {
    color: #0f2e4f;
    background-color: transparent; }
  .btn-outline-dkblue:not(:disabled):not(.disabled):active, .btn-outline-dkblue:not(:disabled):not(.disabled).active,
  .show > .btn-outline-dkblue.dropdown-toggle {
    color: #fff;
    background-color: #0f2e4f;
    border-color: #0f2e4f; }
    .btn-outline-dkblue:not(:disabled):not(.disabled):active:focus, .btn-outline-dkblue:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-dkblue.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(15, 46, 79, 0.5); }

.btn-outline-purple {
  color: #a3238e;
  border-color: #a3238e; }
  .btn-outline-purple:hover {
    color: #fff;
    background-color: #a3238e;
    border-color: #a3238e; }
  .btn-outline-purple:focus, .btn-outline-purple.focus {
    box-shadow: 0 0 0 0.2rem rgba(163, 35, 142, 0.5); }
  .btn-outline-purple.disabled, .btn-outline-purple:disabled {
    color: #a3238e;
    background-color: transparent; }
  .btn-outline-purple:not(:disabled):not(.disabled):active, .btn-outline-purple:not(:disabled):not(.disabled).active,
  .show > .btn-outline-purple.dropdown-toggle {
    color: #fff;
    background-color: #a3238e;
    border-color: #a3238e; }
    .btn-outline-purple:not(:disabled):not(.disabled):active:focus, .btn-outline-purple:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-purple.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(163, 35, 142, 0.5); }

.btn-outline-green {
  color: #70d44b;
  border-color: #70d44b; }
  .btn-outline-green:hover {
    color: #212529;
    background-color: #70d44b;
    border-color: #70d44b; }
  .btn-outline-green:focus, .btn-outline-green.focus {
    box-shadow: 0 0 0 0.2rem rgba(112, 212, 75, 0.5); }
  .btn-outline-green.disabled, .btn-outline-green:disabled {
    color: #70d44b;
    background-color: transparent; }
  .btn-outline-green:not(:disabled):not(.disabled):active, .btn-outline-green:not(:disabled):not(.disabled).active,
  .show > .btn-outline-green.dropdown-toggle {
    color: #212529;
    background-color: #70d44b;
    border-color: #70d44b; }
    .btn-outline-green:not(:disabled):not(.disabled):active:focus, .btn-outline-green:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-green.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(112, 212, 75, 0.5); }

.btn-outline-orange {
  color: #e65526;
  border-color: #e65526; }
  .btn-outline-orange:hover {
    color: #fff;
    background-color: #e65526;
    border-color: #e65526; }
  .btn-outline-orange:focus, .btn-outline-orange.focus {
    box-shadow: 0 0 0 0.2rem rgba(230, 85, 38, 0.5); }
  .btn-outline-orange.disabled, .btn-outline-orange:disabled {
    color: #e65526;
    background-color: transparent; }
  .btn-outline-orange:not(:disabled):not(.disabled):active, .btn-outline-orange:not(:disabled):not(.disabled).active,
  .show > .btn-outline-orange.dropdown-toggle {
    color: #fff;
    background-color: #e65526;
    border-color: #e65526; }
    .btn-outline-orange:not(:disabled):not(.disabled):active:focus, .btn-outline-orange:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-orange.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(230, 85, 38, 0.5); }

.btn-outline-ltorange {
  color: #efaf00;
  border-color: #efaf00; }
  .btn-outline-ltorange:hover {
    color: #212529;
    background-color: #efaf00;
    border-color: #efaf00; }
  .btn-outline-ltorange:focus, .btn-outline-ltorange.focus {
    box-shadow: 0 0 0 0.2rem rgba(239, 175, 0, 0.5); }
  .btn-outline-ltorange.disabled, .btn-outline-ltorange:disabled {
    color: #efaf00;
    background-color: transparent; }
  .btn-outline-ltorange:not(:disabled):not(.disabled):active, .btn-outline-ltorange:not(:disabled):not(.disabled).active,
  .show > .btn-outline-ltorange.dropdown-toggle {
    color: #212529;
    background-color: #efaf00;
    border-color: #efaf00; }
    .btn-outline-ltorange:not(:disabled):not(.disabled):active:focus, .btn-outline-ltorange:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-ltorange.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(239, 175, 0, 0.5); }

.btn-outline-yellow {
  color: #efaf00;
  border-color: #efaf00; }
  .btn-outline-yellow:hover {
    color: #212529;
    background-color: #efaf00;
    border-color: #efaf00; }
  .btn-outline-yellow:focus, .btn-outline-yellow.focus {
    box-shadow: 0 0 0 0.2rem rgba(239, 175, 0, 0.5); }
  .btn-outline-yellow.disabled, .btn-outline-yellow:disabled {
    color: #efaf00;
    background-color: transparent; }
  .btn-outline-yellow:not(:disabled):not(.disabled):active, .btn-outline-yellow:not(:disabled):not(.disabled).active,
  .show > .btn-outline-yellow.dropdown-toggle {
    color: #212529;
    background-color: #efaf00;
    border-color: #efaf00; }
    .btn-outline-yellow:not(:disabled):not(.disabled):active:focus, .btn-outline-yellow:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-yellow.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(239, 175, 0, 0.5); }

.btn-outline-cta {
  color: #cd7300;
  border-color: #cd7300; }
  .btn-outline-cta:hover {
    color: #fff;
    background-color: #cd7300;
    border-color: #cd7300; }
  .btn-outline-cta:focus, .btn-outline-cta.focus {
    box-shadow: 0 0 0 0.2rem rgba(205, 115, 0, 0.5); }
  .btn-outline-cta.disabled, .btn-outline-cta:disabled {
    color: #cd7300;
    background-color: transparent; }
  .btn-outline-cta:not(:disabled):not(.disabled):active, .btn-outline-cta:not(:disabled):not(.disabled).active,
  .show > .btn-outline-cta.dropdown-toggle {
    color: #fff;
    background-color: #cd7300;
    border-color: #cd7300; }
    .btn-outline-cta:not(:disabled):not(.disabled):active:focus, .btn-outline-cta:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-cta.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(205, 115, 0, 0.5); }

.btn-outline-water-flosser {
  color: #0075c9;
  border-color: #0075c9; }
  .btn-outline-water-flosser:hover {
    color: #fff;
    background-color: #0075c9;
    border-color: #0075c9; }
  .btn-outline-water-flosser:focus, .btn-outline-water-flosser.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 117, 201, 0.5); }
  .btn-outline-water-flosser.disabled, .btn-outline-water-flosser:disabled {
    color: #0075c9;
    background-color: transparent; }
  .btn-outline-water-flosser:not(:disabled):not(.disabled):active, .btn-outline-water-flosser:not(:disabled):not(.disabled).active,
  .show > .btn-outline-water-flosser.dropdown-toggle {
    color: #fff;
    background-color: #0075c9;
    border-color: #0075c9; }
    .btn-outline-water-flosser:not(:disabled):not(.disabled):active:focus, .btn-outline-water-flosser:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-water-flosser.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 117, 201, 0.5); }

.btn-outline-whitening {
  color: #a3238e;
  border-color: #a3238e; }
  .btn-outline-whitening:hover {
    color: #fff;
    background-color: #a3238e;
    border-color: #a3238e; }
  .btn-outline-whitening:focus, .btn-outline-whitening.focus {
    box-shadow: 0 0 0 0.2rem rgba(163, 35, 142, 0.5); }
  .btn-outline-whitening.disabled, .btn-outline-whitening:disabled {
    color: #a3238e;
    background-color: transparent; }
  .btn-outline-whitening:not(:disabled):not(.disabled):active, .btn-outline-whitening:not(:disabled):not(.disabled).active,
  .show > .btn-outline-whitening.dropdown-toggle {
    color: #fff;
    background-color: #a3238e;
    border-color: #a3238e; }
    .btn-outline-whitening:not(:disabled):not(.disabled):active:focus, .btn-outline-whitening:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-whitening.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(163, 35, 142, 0.5); }

.btn-outline-complete-care {
  color: #70d44b;
  border-color: #70d44b; }
  .btn-outline-complete-care:hover {
    color: #212529;
    background-color: #70d44b;
    border-color: #70d44b; }
  .btn-outline-complete-care:focus, .btn-outline-complete-care.focus {
    box-shadow: 0 0 0 0.2rem rgba(112, 212, 75, 0.5); }
  .btn-outline-complete-care.disabled, .btn-outline-complete-care:disabled {
    color: #70d44b;
    background-color: transparent; }
  .btn-outline-complete-care:not(:disabled):not(.disabled):active, .btn-outline-complete-care:not(:disabled):not(.disabled).active,
  .show > .btn-outline-complete-care.dropdown-toggle {
    color: #212529;
    background-color: #70d44b;
    border-color: #70d44b; }
    .btn-outline-complete-care:not(:disabled):not(.disabled):active:focus, .btn-outline-complete-care:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-complete-care.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(112, 212, 75, 0.5); }

.btn-outline-sonic-fusion {
  color: #e65526;
  border-color: #e65526; }
  .btn-outline-sonic-fusion:hover {
    color: #fff;
    background-color: #e65526;
    border-color: #e65526; }
  .btn-outline-sonic-fusion:focus, .btn-outline-sonic-fusion.focus {
    box-shadow: 0 0 0 0.2rem rgba(230, 85, 38, 0.5); }
  .btn-outline-sonic-fusion.disabled, .btn-outline-sonic-fusion:disabled {
    color: #e65526;
    background-color: transparent; }
  .btn-outline-sonic-fusion:not(:disabled):not(.disabled):active, .btn-outline-sonic-fusion:not(:disabled):not(.disabled).active,
  .show > .btn-outline-sonic-fusion.dropdown-toggle {
    color: #fff;
    background-color: #e65526;
    border-color: #e65526; }
    .btn-outline-sonic-fusion:not(:disabled):not(.disabled):active:focus, .btn-outline-sonic-fusion:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-sonic-fusion.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(230, 85, 38, 0.5); }

.btn-link {
  font-weight: 400;
  color: #0075c9;
  text-decoration: none; }
  .btn-link:hover {
    color: #00487d;
    text-decoration: underline; }
  .btn-link:focus, .btn-link.focus {
    text-decoration: underline; }
  .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(.show) {
  display: none; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease; }
  @media (prefers-reduced-motion: reduce) {
    .collapsing {
      transition: none; } }
  .collapsing.width {
    width: 0;
    height: auto;
    transition: width 0.35s ease; }
    @media (prefers-reduced-motion: reduce) {
      .collapsing.width {
        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: #e9ecef; }
  .dropdown-item.active, .dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: #002f87; }
  .dropdown-item.disabled, .dropdown-item:disabled {
    color: #adb5bd;
    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%;
    min-width: 0;
    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(: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:not(.has-validation) > .form-control:not(:last-child),
  .input-group:not(.has-validation) > .custom-select:not(:last-child),
  .input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label,
  .input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .input-group.has-validation > .form-control:nth-last-child(n + 3),
  .input-group.has-validation > .custom-select:nth-last-child(n + 3),
  .input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label,
  .input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label::after {
    border-top-right-radius: 0;
    border-bottom-right-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:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .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;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  print-color-adjust: exact; }

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

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0; }
  .custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: #002f87;
    background-color: #002f87; }
  .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(0, 47, 135, 0.25); }
  .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #085eff; }
  .custom-control-input:not(:disabled):active ~ .custom-control-label::before {
    color: #fff;
    background-color: #3b7fff;
    border-color: #3b7fff; }
  .custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
    color: #6c757d; }
    .custom-control-input[disabled] ~ .custom-control-label::before, .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: 1px solid #adb5bd; }
  .custom-control-label::after {
    position: absolute;
    top: 0.25rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    content: "";
    background: 50% / 50% 50% no-repeat; }

.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' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e"); }

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #002f87;
  background-color: #002f87; }

.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' width='4' height='4' 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, 47, 135, 0.5); }

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 47, 135, 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' width='12' height='12' 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, 47, 135, 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, 47, 135, 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-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none; }
  .custom-select:focus {
    border-color: #085eff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 47, 135, 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:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #495057; }

.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;
  overflow: hidden;
  opacity: 0; }
  .custom-file-input:focus ~ .custom-file-label {
    border-color: #085eff;
    box-shadow: 0 0 0 0.2rem rgba(0, 47, 135, 0.25); }
  .custom-file-input[disabled] ~ .custom-file-label,
  .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;
  overflow: hidden;
  font-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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: 1.4rem;
  padding: 0;
  background-color: transparent;
  appearance: none; }
  .custom-range:focus {
    outline: 0; }
    .custom-range:focus::-webkit-slider-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 47, 135, 0.25); }
    .custom-range:focus::-moz-range-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 47, 135, 0.25); }
    .custom-range:focus::-ms-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 47, 135, 0.25); }
  .custom-range::-moz-focus-outer {
    border: 0; }
  .custom-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    background-color: #002f87;
    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: #3b7fff; }
  .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: #002f87;
    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: #3b7fff; }
  .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: #002f87;
    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: #3b7fff; }
  .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-link {
    margin-bottom: -1px;
    background-color: transparent;
    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 {
      isolation: isolate;
      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 {
  background: none;
  border: 0;
  border-radius: 0.25rem; }

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

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

.nav-justified > .nav-link,
.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, .navbar .container-sm, .navbar .container-md, .navbar .container-lg, .navbar .container-xl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between; }

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

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

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

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

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

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

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto; }

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    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, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
      flex-wrap: nowrap; }
    .navbar-expand-sm .navbar-nav-scroll {
      overflow: visible; }
    .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, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    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, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
      flex-wrap: nowrap; }
    .navbar-expand-md .navbar-nav-scroll {
      overflow: visible; }
    .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, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    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, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
      flex-wrap: nowrap; }
    .navbar-expand-lg .navbar-nav-scroll {
      overflow: visible; }
    .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, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    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, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
      flex-wrap: nowrap; }
    .navbar-expand-xl .navbar-nav-scroll {
      overflow: visible; }
    .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, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
    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, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
    flex-wrap: nowrap; }
  .navbar-expand .navbar-nav-scroll {
    overflow: visible; }
  .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 xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' 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 xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' 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 {
    border-top: inherit;
    border-bottom: inherit; }
    .card > .list-group:first-child {
      border-top-width: 0;
      border-top-left-radius: calc(0.25rem - 1px);
      border-top-right-radius: calc(0.25rem - 1px); }
    .card > .list-group:last-child {
      border-bottom-width: 0;
      border-bottom-right-radius: calc(0.25rem - 1px);
      border-bottom-left-radius: calc(0.25rem - 1px); }
  .card > .card-header + .list-group,
  .card > .list-group + .card-footer {
    border-top: 0; }

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  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-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;
  border-radius: calc(0.25rem - 1px); }

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%; }

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

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

.card-deck .card {
  margin-bottom: 15px; }

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

.card-group > .card {
  margin-bottom: 15px; }

@media (min-width: 576px) {
  .card-group {
    display: flex;
    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 {
  overflow-anchor: none; }
  .accordion > .card {
    overflow: hidden; }
    .accordion > .card:not(:last-of-type) {
      border-bottom: 0;
      border-bottom-right-radius: 0;
      border-bottom-left-radius: 0; }
    .accordion > .card:not(:first-of-type) {
      border-top-left-radius: 0;
      border-top-right-radius: 0; }
    .accordion > .card > .card-header {
      border-radius: 0;
      margin-bottom: -1px; }

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

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem; }
  .breadcrumb-item + .breadcrumb-item::before {
    float: left;
    padding-right: 0.5rem;
    color: #343a40;
    content: "/"; }

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

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

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

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

.media-body {
  flex: 1; }

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 0.25rem; }

.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;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125); }
  .list-group-item:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit; }
  .list-group-item:last-child {
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit; }
  .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: #002f87;
    border-color: #002f87; }
  .list-group-item + .list-group-item {
    border-top-width: 0; }
    .list-group-item + .list-group-item.active {
      margin-top: -1px;
      border-top-width: 1px; }

.list-group-horizontal {
  flex-direction: row; }
  .list-group-horizontal > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0; }
  .list-group-horizontal > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0; }
  .list-group-horizontal > .list-group-item.active {
    margin-top: 0; }
  .list-group-horizontal > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0; }
    .list-group-horizontal > .list-group-item + .list-group-item.active {
      margin-left: -1px;
      border-left-width: 1px; }

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row; }
    .list-group-horizontal-sm > .list-group-item:first-child {
      border-bottom-left-radius: 0.25rem;
      border-top-right-radius: 0; }
    .list-group-horizontal-sm > .list-group-item:last-child {
      border-top-right-radius: 0.25rem;
      border-bottom-left-radius: 0; }
    .list-group-horizontal-sm > .list-group-item.active {
      margin-top: 0; }
    .list-group-horizontal-sm > .list-group-item + .list-group-item {
      border-top-width: 1px;
      border-left-width: 0; }
      .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px; } }

@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row; }
    .list-group-horizontal-md > .list-group-item:first-child {
      border-bottom-left-radius: 0.25rem;
      border-top-right-radius: 0; }
    .list-group-horizontal-md > .list-group-item:last-child {
      border-top-right-radius: 0.25rem;
      border-bottom-left-radius: 0; }
    .list-group-horizontal-md > .list-group-item.active {
      margin-top: 0; }
    .list-group-horizontal-md > .list-group-item + .list-group-item {
      border-top-width: 1px;
      border-left-width: 0; }
      .list-group-horizontal-md > .list-group-item + .list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px; } }

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row; }
    .list-group-horizontal-lg > .list-group-item:first-child {
      border-bottom-left-radius: 0.25rem;
      border-top-right-radius: 0; }
    .list-group-horizontal-lg > .list-group-item:last-child {
      border-top-right-radius: 0.25rem;
      border-bottom-left-radius: 0; }
    .list-group-horizontal-lg > .list-group-item.active {
      margin-top: 0; }
    .list-group-horizontal-lg > .list-group-item + .list-group-item {
      border-top-width: 1px;
      border-left-width: 0; }
      .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px; } }

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row; }
    .list-group-horizontal-xl > .list-group-item:first-child {
      border-bottom-left-radius: 0.25rem;
      border-top-right-radius: 0; }
    .list-group-horizontal-xl > .list-group-item:last-child {
      border-top-right-radius: 0.25rem;
      border-bottom-left-radius: 0; }
    .list-group-horizontal-xl > .list-group-item.active {
      margin-top: 0; }
    .list-group-horizontal-xl > .list-group-item + .list-group-item {
      border-top-width: 1px;
      border-left-width: 0; }
      .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px; } }

.list-group-flush {
  border-radius: 0; }
  .list-group-flush > .list-group-item {
    border-width: 0 0 1px; }
    .list-group-flush > .list-group-item:last-child {
      border-bottom-width: 0; }

.list-group-item-primary {
  color: #001846;
  background-color: #b8c5dd; }
  .list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
    color: #001846;
    background-color: #a7b7d5; }
  .list-group-item-primary.list-group-item-action.active {
    color: #fff;
    background-color: #001846;
    border-color: #001846; }

.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: #3a6e27;
  background-color: #d7f3cd; }
  .list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
    color: #3a6e27;
    background-color: #c7eeb8; }
  .list-group-item-success.list-group-item-action.active {
    color: #fff;
    background-color: #3a6e27;
    border-color: #3a6e27; }

.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: #7c5b00;
  background-color: #fbe9b8; }
  .list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
    color: #7c5b00;
    background-color: #fae2a0; }
  .list-group-item-warning.list-group-item-action.active {
    color: #fff;
    background-color: #7c5b00;
    border-color: #7c5b00; }

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

.list-group-item-wp {
  color: #001846;
  background-color: #b8c5dd; }
  .list-group-item-wp.list-group-item-action:hover, .list-group-item-wp.list-group-item-action:focus {
    color: #001846;
    background-color: #a7b7d5; }
  .list-group-item-wp.list-group-item-action.active {
    color: #fff;
    background-color: #001846;
    border-color: #001846; }

.list-group-item-white {
  color: #858585;
  background-color: white; }
  .list-group-item-white.list-group-item-action:hover, .list-group-item-white.list-group-item-action:focus {
    color: #858585;
    background-color: #f2f2f2; }
  .list-group-item-white.list-group-item-action.active {
    color: #fff;
    background-color: #858585;
    border-color: #858585; }

.list-group-item-black {
  color: black;
  background-color: #b8b8b8; }
  .list-group-item-black.list-group-item-action:hover, .list-group-item-black.list-group-item-action:focus {
    color: black;
    background-color: #ababab; }
  .list-group-item-black.list-group-item-action.active {
    color: #fff;
    background-color: black;
    border-color: black; }

.list-group-item-ltgrey {
  color: #7e7e7e;
  background-color: #fbfbfb; }
  .list-group-item-ltgrey.list-group-item-action:hover, .list-group-item-ltgrey.list-group-item-action:focus {
    color: #7e7e7e;
    background-color: #eeeeee; }
  .list-group-item-ltgrey.list-group-item-action.active {
    color: #fff;
    background-color: #7e7e7e;
    border-color: #7e7e7e; }

.list-group-item-grey {
  color: #6b6e71;
  background-color: #f1f3f5; }
  .list-group-item-grey.list-group-item-action:hover, .list-group-item-grey.list-group-item-action:focus {
    color: #6b6e71;
    background-color: #e2e6ea; }
  .list-group-item-grey.list-group-item-action.active {
    color: #fff;
    background-color: #6b6e71;
    border-color: #6b6e71; }

.list-group-item-dkgrey {
  color: #383d41;
  background-color: #d6d8db; }
  .list-group-item-dkgrey.list-group-item-action:hover, .list-group-item-dkgrey.list-group-item-action:focus {
    color: #383d41;
    background-color: #c8cbcf; }
  .list-group-item-dkgrey.list-group-item-action.active {
    color: #fff;
    background-color: #383d41;
    border-color: #383d41; }

.list-group-item-accent-blue {
  color: #003d69;
  background-color: #b8d8f0; }
  .list-group-item-accent-blue.list-group-item-action:hover, .list-group-item-accent-blue.list-group-item-action:focus {
    color: #003d69;
    background-color: #a3ccec; }
  .list-group-item-accent-blue.list-group-item-action.active {
    color: #fff;
    background-color: #003d69;
    border-color: #003d69; }

.list-group-item-ltblue {
  color: #003d69;
  background-color: #b8d8f0; }
  .list-group-item-ltblue.list-group-item-action:hover, .list-group-item-ltblue.list-group-item-action:focus {
    color: #003d69;
    background-color: #a3ccec; }
  .list-group-item-ltblue.list-group-item-action.active {
    color: #fff;
    background-color: #003d69;
    border-color: #003d69; }

.list-group-item-blue {
  color: #001846;
  background-color: #b8c5dd; }
  .list-group-item-blue.list-group-item-action:hover, .list-group-item-blue.list-group-item-action:focus {
    color: #001846;
    background-color: #a7b7d5; }
  .list-group-item-blue.list-group-item-action.active {
    color: #fff;
    background-color: #001846;
    border-color: #001846; }

.list-group-item-dkblue {
  color: #081829;
  background-color: #bcc4ce; }
  .list-group-item-dkblue.list-group-item-action:hover, .list-group-item-dkblue.list-group-item-action:focus {
    color: #081829;
    background-color: #adb7c3; }
  .list-group-item-dkblue.list-group-item-action.active {
    color: #fff;
    background-color: #081829;
    border-color: #081829; }

.list-group-item-purple {
  color: #55124a;
  background-color: #e5c1df; }
  .list-group-item-purple.list-group-item-action:hover, .list-group-item-purple.list-group-item-action:focus {
    color: #55124a;
    background-color: #ddafd6; }
  .list-group-item-purple.list-group-item-action.active {
    color: #fff;
    background-color: #55124a;
    border-color: #55124a; }

.list-group-item-green {
  color: #3a6e27;
  background-color: #d7f3cd; }
  .list-group-item-green.list-group-item-action:hover, .list-group-item-green.list-group-item-action:focus {
    color: #3a6e27;
    background-color: #c7eeb8; }
  .list-group-item-green.list-group-item-action.active {
    color: #fff;
    background-color: #3a6e27;
    border-color: #3a6e27; }

.list-group-item-orange {
  color: #782c14;
  background-color: #f8cfc2; }
  .list-group-item-orange.list-group-item-action:hover, .list-group-item-orange.list-group-item-action:focus {
    color: #782c14;
    background-color: #f5bdab; }
  .list-group-item-orange.list-group-item-action.active {
    color: #fff;
    background-color: #782c14;
    border-color: #782c14; }

.list-group-item-ltorange {
  color: #7c5b00;
  background-color: #fbe9b8; }
  .list-group-item-ltorange.list-group-item-action:hover, .list-group-item-ltorange.list-group-item-action:focus {
    color: #7c5b00;
    background-color: #fae2a0; }
  .list-group-item-ltorange.list-group-item-action.active {
    color: #fff;
    background-color: #7c5b00;
    border-color: #7c5b00; }

.list-group-item-yellow {
  color: #7c5b00;
  background-color: #fbe9b8; }
  .list-group-item-yellow.list-group-item-action:hover, .list-group-item-yellow.list-group-item-action:focus {
    color: #7c5b00;
    background-color: #fae2a0; }
  .list-group-item-yellow.list-group-item-action.active {
    color: #fff;
    background-color: #7c5b00;
    border-color: #7c5b00; }

.list-group-item-cta {
  color: #6b3c00;
  background-color: #f1d8b8; }
  .list-group-item-cta.list-group-item-action:hover, .list-group-item-cta.list-group-item-action:focus {
    color: #6b3c00;
    background-color: #edcca3; }
  .list-group-item-cta.list-group-item-action.active {
    color: #fff;
    background-color: #6b3c00;
    border-color: #6b3c00; }

.list-group-item-water-flosser {
  color: #003d69;
  background-color: #b8d8f0; }
  .list-group-item-water-flosser.list-group-item-action:hover, .list-group-item-water-flosser.list-group-item-action:focus {
    color: #003d69;
    background-color: #a3ccec; }
  .list-group-item-water-flosser.list-group-item-action.active {
    color: #fff;
    background-color: #003d69;
    border-color: #003d69; }

.list-group-item-whitening {
  color: #55124a;
  background-color: #e5c1df; }
  .list-group-item-whitening.list-group-item-action:hover, .list-group-item-whitening.list-group-item-action:focus {
    color: #55124a;
    background-color: #ddafd6; }
  .list-group-item-whitening.list-group-item-action.active {
    color: #fff;
    background-color: #55124a;
    border-color: #55124a; }

.list-group-item-complete-care {
  color: #3a6e27;
  background-color: #d7f3cd; }
  .list-group-item-complete-care.list-group-item-action:hover, .list-group-item-complete-care.list-group-item-action:focus {
    color: #3a6e27;
    background-color: #c7eeb8; }
  .list-group-item-complete-care.list-group-item-action.active {
    color: #fff;
    background-color: #3a6e27;
    border-color: #3a6e27; }

.list-group-item-sonic-fusion {
  color: #782c14;
  background-color: #f8cfc2; }
  .list-group-item-sonic-fusion.list-group-item-action:hover, .list-group-item-sonic-fusion.list-group-item-action:focus {
    color: #782c14;
    background-color: #f5bdab; }
  .list-group-item-sonic-fusion.list-group-item-action.active {
    color: #fff;
    background-color: #782c14;
    border-color: #782c14; }

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5; }
  @media (max-width: 1200px) {
    .close {
      font-size: calc(1.275rem + 0.3vw) ; } }
  .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; }

a.close.disabled {
  pointer-events: none; }

.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.modal-static .modal-dialog {
    transform: scale(1.02); }

.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);
    height: min-content;
    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: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px); }
  .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;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px); }
  .modal-footer > * {
    margin: 0.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);
      height: min-content; }
  .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; } }

.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: opacity 0s 0.6s; }
  @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%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: none;
  border: 0;
  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: 50% / 100% 100% no-repeat; }

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%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' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-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; }

.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: #002f87 !important; }

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #001d54 !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: #70d44b !important; }

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #55be2e !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: #efaf00 !important; }

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #bc8a00 !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-wp {
  background-color: #002f87 !important; }

a.bg-wp:hover, a.bg-wp:focus,
button.bg-wp:hover,
button.bg-wp:focus {
  background-color: #001d54 !important; }

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

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

.bg-black {
  background-color: #000 !important; }

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

.bg-ltgrey {
  background-color: #f2f2f2 !important; }

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

.bg-grey {
  background-color: #ced4da !important; }

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

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

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

.bg-accent-blue {
  background-color: #0075c9 !important; }

a.bg-accent-blue:hover, a.bg-accent-blue:focus,
button.bg-accent-blue:hover,
button.bg-accent-blue:focus {
  background-color: #005796 !important; }

.bg-ltblue {
  background-color: #0075c9 !important; }

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

.bg-blue {
  background-color: #002f87 !important; }

a.bg-blue:hover, a.bg-blue:focus,
button.bg-blue:hover,
button.bg-blue:focus {
  background-color: #001d54 !important; }

.bg-dkblue {
  background-color: #0f2e4f !important; }

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

.bg-purple {
  background-color: #a3238e !important; }

a.bg-purple:hover, a.bg-purple:focus,
button.bg-purple:hover,
button.bg-purple:focus {
  background-color: #791a69 !important; }

.bg-green {
  background-color: #70d44b !important; }

a.bg-green:hover, a.bg-green:focus,
button.bg-green:hover,
button.bg-green:focus {
  background-color: #55be2e !important; }

.bg-orange {
  background-color: #e65526 !important; }

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

.bg-ltorange {
  background-color: #efaf00 !important; }

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

.bg-yellow {
  background-color: #efaf00 !important; }

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

.bg-cta {
  background-color: #cd7300 !important; }

a.bg-cta:hover, a.bg-cta:focus,
button.bg-cta:hover,
button.bg-cta:focus {
  background-color: #9a5600 !important; }

.bg-water-flosser {
  background-color: #0075c9 !important; }

a.bg-water-flosser:hover, a.bg-water-flosser:focus,
button.bg-water-flosser:hover,
button.bg-water-flosser:focus {
  background-color: #005796 !important; }

.bg-whitening {
  background-color: #a3238e !important; }

a.bg-whitening:hover, a.bg-whitening:focus,
button.bg-whitening:hover,
button.bg-whitening:focus {
  background-color: #791a69 !important; }

.bg-complete-care {
  background-color: #70d44b !important; }

a.bg-complete-care:hover, a.bg-complete-care:focus,
button.bg-complete-care:hover,
button.bg-complete-care:focus {
  background-color: #55be2e !important; }

.bg-sonic-fusion {
  background-color: #e65526 !important; }

a.bg-sonic-fusion:hover, a.bg-sonic-fusion:focus,
button.bg-sonic-fusion:hover,
button.bg-sonic-fusion:focus {
  background-color: #c34116 !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: #002f87 !important; }

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

.border-success {
  border-color: #70d44b !important; }

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

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

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

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

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

.border-wp {
  border-color: #002f87 !important; }

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

.border-black {
  border-color: #000 !important; }

.border-ltgrey {
  border-color: #f2f2f2 !important; }

.border-grey {
  border-color: #ced4da !important; }

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

.border-accent-blue {
  border-color: #0075c9 !important; }

.border-ltblue {
  border-color: #0075c9 !important; }

.border-blue {
  border-color: #002f87 !important; }

.border-dkblue {
  border-color: #0f2e4f !important; }

.border-purple {
  border-color: #a3238e !important; }

.border-green {
  border-color: #70d44b !important; }

.border-orange {
  border-color: #e65526 !important; }

.border-ltorange {
  border-color: #efaf00 !important; }

.border-yellow {
  border-color: #efaf00 !important; }

.border-cta {
  border-color: #cd7300 !important; }

.border-water-flosser {
  border-color: #0075c9 !important; }

.border-whitening {
  border-color: #a3238e !important; }

.border-complete-care {
  border-color: #70d44b !important; }

.border-sonic-fusion {
  border-color: #e65526 !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; } }

.user-select-all {
  user-select: all !important; }

.user-select-auto {
  user-select: auto !important; }

.user-select-none {
  user-select: 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;
  margin: -1px;
  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; }

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

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0); }

.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: #002f87 !important; }

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

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

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

.text-success {
  color: #70d44b !important; }

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

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

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

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

a.text-warning:hover, a.text-warning:focus {
  color: #a37700 !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-wp {
  color: #002f87 !important; }

a.text-wp:hover, a.text-wp:focus {
  color: #00143b !important; }

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

a.text-white:hover, a.text-white:focus {
  color: #d9d9d9 !important; }

.text-black {
  color: #000 !important; }

a.text-black:hover, a.text-black:focus {
  color: black !important; }

.text-ltgrey {
  color: #f2f2f2 !important; }

a.text-ltgrey:hover, a.text-ltgrey:focus {
  color: #cccccc !important; }

.text-grey {
  color: #ced4da !important; }

a.text-grey:hover, a.text-grey:focus {
  color: #a2aeb9 !important; }

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

a.text-dkgrey:hover, a.text-dkgrey:focus {
  color: #494f54 !important; }

.text-accent-blue {
  color: #0075c9 !important; }

a.text-accent-blue:hover, a.text-accent-blue:focus {
  color: #00487d !important; }

.text-ltblue {
  color: #0075c9 !important; }

a.text-ltblue:hover, a.text-ltblue:focus {
  color: #00487d !important; }

.text-blue {
  color: #002f87 !important; }

a.text-blue:hover, a.text-blue:focus {
  color: #00143b !important; }

.text-dkblue {
  color: #0f2e4f !important; }

a.text-dkblue:hover, a.text-dkblue:focus {
  color: #03090f !important; }

.text-purple {
  color: #a3238e !important; }

a.text-purple:hover, a.text-purple:focus {
  color: #641557 !important; }

.text-green {
  color: #70d44b !important; }

a.text-green:hover, a.text-green:focus {
  color: #4caa29 !important; }

.text-orange {
  color: #e65526 !important; }

a.text-orange:hover, a.text-orange:focus {
  color: #ac3914 !important; }

.text-ltorange {
  color: #efaf00 !important; }

a.text-ltorange:hover, a.text-ltorange:focus {
  color: #a37700 !important; }

.text-yellow {
  color: #efaf00 !important; }

a.text-yellow:hover, a.text-yellow:focus {
  color: #a37700 !important; }

.text-cta {
  color: #cd7300 !important; }

a.text-cta:hover, a.text-cta:focus {
  color: #814800 !important; }

.text-water-flosser {
  color: #0075c9 !important; }

a.text-water-flosser:hover, a.text-water-flosser:focus {
  color: #00487d !important; }

.text-whitening {
  color: #a3238e !important; }

a.text-whitening:hover, a.text-whitening:focus {
  color: #641557 !important; }

.text-complete-care {
  color: #70d44b !important; }

a.text-complete-care:hover, a.text-complete-care:focus {
  color: #4caa29 !important; }

.text-sonic-fusion {
  color: #e65526 !important; }

a.text-sonic-fusion:hover, a.text-sonic-fusion:focus {
  color: #ac3914 !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;
  word-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; }
  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; } }

.blog-list a,
.research a {
  color: #000; }
  .blog-list a:hover,
  .research a:hover {
    text-decoration: none; }

.quote::before, .quote::after, .blog-list .filterBtn::after,
.research .filterBtn::after {
  display: inline-block;
  font-family: "Font Awesome 5 Pro";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  line-height: 1;
  text-rendering: auto; }

.bg-gradient-cta, .btn-cta, .shop-now {
  background-image: linear-gradient(to bottom, #efaf00 0%, #e65526 100%);
  background-repeat: repeat-x; }

.bg-gradient-orange {
  background-image: linear-gradient(to bottom, #e65526 0%, #efaf00 100%);
  background-repeat: repeat-x; }

.bg-gradient-orange-radial {
  background-image: radial-gradient(at 91% 100%, #efaf00 1%, #e65526 100%);
  color: #fff; }

.bg-gradient-dkblue {
  background-image: linear-gradient(to bottom, #0f2e4f 0%, #002f87 100%);
  background-repeat: repeat-x;
  color: #fff; }

.bg-gradient-dkblue-radial {
  background-image: radial-gradient(at 91% 100%, #002f87 1%, #0f2e4f 100%);
  color: #fff; }

.bg-gradient-blue {
  background-image: linear-gradient(to bottom, #002f87 0%, #0075c9 100%);
  background-repeat: repeat-x;
  color: #fff; }

.bg-gradient-blue-radial, .homeHero, .pillar .hero::before, .rightsolution .product-selector {
  background-image: radial-gradient(at 91% 100%, #0075c9 1%, #002f87 100%);
  color: #fff; }

.bg-gradient-grey {
  background-image: linear-gradient(to bottom, #6c757d 0%, #ced4da 100%);
  background-repeat: repeat-x;
  color: #fff; }

.bg-gradient-grey-radial {
  background-image: radial-gradient(at 91% 100%, #f2f2f2 1%, #6c757d 100%);
  color: #fff; }

@keyframes fade-up-in {
  0% {
    opacity: 0;
    transform: translateY(30px); }
  100% {
    opacity: 1;
    transform: translateY(0px); } }

form.user .field-validation-error {
  color: #dc3545; }

form.user p {
  margin-bottom: 0;
  padding-bottom: 0; }
  form.user p span {
    padding-bottom: 0;
    padding-top: .2rem; }

form.user .required:before {
  padding-right: .3em;
  font-size: .4rem;
  color: #dc3545;
  display: inline-block;
  font-family: "Font Awesome 5 Pro";
  font-weight: 800;
  content: "\f069";
  line-height: 1em;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  vertical-align: baseline;
  position: relative;
  top: -0.8em; }

form .input-group sup {
  top: .5em; }

.bg-image {
  padding-top: 3rem;
  padding-bottom: 3rem;
  background-color: #343a40;
  background-image: url("https://via.placeholder.com/1600x800?text=Image.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  text-align: center; }
  .bg-image .row {
    justify-content: center; }
  .bg-image .card {
    color: #000;
    height: 100%; }
  .bg-image p {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem; }
    .bg-image p + p {
      padding-top: 0;
      padding-bottom: 0; }
  .bg-image .embed-responsive {
    margin-bottom: 3rem; }

.btn-cta {
  background-size: 1px 75px;
  border-color: #efaf00;
  color: #fff;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1rem;
  padding: 15px;
  text-transform: capitalize;
  transition: background 0.5s ease-out; }
  .btn-cta.arrow:after {
    content: "\f105";
    display: inline-block;
    font-family: "Font Awesome 5 Pro";
    font-size: 1.5rem;
    font-weight: 900;
    line-height: 1.3rem;
    margin-left: 5px;
    position: relative;
    right: 0px;
    text-rendering: auto;
    transition: all 1s ease; }
  .btn-cta:hover {
    background-position: 75px;
    border-color: #efaf00; }
    .btn-cta:hover.arrow:after {
      right: -5px; }

.btn-block.btn-cta.arrow:after {
  float: right; }

.icon-right:after {
  display: inline-block;
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-variant: normal;
  /*top: 50%;*/
  line-height: 0px;
  margin-left: 10px;
  position: relative;
  right: 0px;
  text-rendering: auto;
  transition: all 1s ease; }

.icon-right:hover:after {
  right: -5px; }

.icon-left:before {
  display: inline-block;
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-variant: normal;
  left: 0px;
  /*top: 50%;*/
  line-height: 0px;
  margin-right: 10px;
  position: relative; }

.icon-left.arrow:before {
  content: "\f104"; }

.icon-left.download:before {
  content: "\f34a"; }

.icon-left.document:before {
  content: "\f15c"; }

.icon-left.chevron:before {
  content: "\f324"; }

.icon-left.up:before {
  content: "\f0de"; }

.icon-left.down:before {
  content: "\f0dd"; }

.icon-right.arrow:after {
  content: "\f105"; }

.icon-right.download:after {
  content: "\f34a"; }

.icon-right.document:after {
  content: "\f15c"; }

.icon-right.chevron:after {
  content: "\f324"; }

.icon-right.up:after {
  content: "\f0de"; }

.icon-right.down:after {
  content: "\f0dd"; }

p + h2,
p + h3,
p + h4,
small + h2,
small + h3,
small + h4 {
  margin-top: 1.5rem; }

.text-white * hr {
  border-top: 1px solid #fff; }

strong,
.strong {
  font-weight: bolder; }

sup {
  top: -0.25rem; }

.text-skinny {
  font-weight: 200; }

.quote::before {
  content: "\f10d ";
  float: left;
  font-size: 1.2rem; }

.quote::after {
  content: " \f10e"; }

@media (min-width: 992px) {
  .skinny-page main {
    margin-left: auto;
    margin-right: auto;
    max-width: 800px; } }

img.float-left {
  margin-right: 1rem;
  margin-top: 0.25rem; }

img.float-right {
  margin-left: 1rem;
  margin-top: 0.25rem; }

.float-left + ul {
  margin-top: 1rem;
  padding-left: 1rem;
  display: inline-block; }
  @media (min-width: 576px) {
    .float-left + ul {
      margin-top: 0;
      display: block;
      overflow: hidden; } }

#topNav {
  letter-spacing: 0.07rem; }
  #topNav a.nav-link {
    color: #f8f9fa;
    font-size: 0.8rem;
    font-weight: 300;
    line-height: 1rem;
    padding: 0.2rem 0.5rem; }
    #topNav a.nav-link:hover {
      text-decoration: underline; }
    #topNav a.nav-link.wp-link {
      font-size: 1rem;
      font-weight: 600; }

@media (max-width: 767.98px) {
  #topNav {
    letter-spacing: 0.07rem; }
    #topNav .wp-link {
      font-size: 1rem;
      font-weight: 600; }
  .container-lg {
    padding: 0; }
  .primary-nav {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 1rem; }
    .primary-nav .navbar-collapse {
      padding-left: 1rem;
      padding-right: 1rem; }
  #mainNav.navbar {
    padding: 0; }
  #mainNav .navbar-collapse {
    margin-bottom: 1rem; }
  #mainNav .mobile-search {
    background-color: #f8f9fa;
    display: flex;
    width: 100%; }
    #mainNav .mobile-search form {
      margin-top: 0.5rem;
      margin-bottom: 0.5rem;
      margin: 0;
      padding: 10px; }
  #mainNav.navbar-light .navbar-toggler {
    border-color: transparent;
    margin: 0 10px 0 20px;
    padding: 0; }
  #mainNav .navbar-toggler > .close {
    display: inline;
    padding: 0 8px; }
  #mainNav .navbar-toggler.collapsed > .close,
  #mainNav .navbar-toggler:not(.collapsed) > .navbar-toggler-icon {
    display: none; }
  #mainNav .navbar-nav {
    margin-top: 1rem;
    background-color: #f2f2f2;
    border: solid 1px #ced4da; }
  #mainNav .nav-item {
    border-bottom: solid 1px #ced4da; }
    #mainNav .nav-item .nav-link {
      color: #000;
      font-size: 1.3rem;
      font-weight: 600;
      letter-spacing: 0.1rem;
      padding: 1.1rem 1.5rem;
      text-transform: uppercase; }
    #mainNav .nav-item.active .nav-link {
      color: #0075c9; }
  #mainNav .dropdown-menu {
    border: 0; }
    #mainNav .dropdown-menu.show {
      padding-bottom: 20px; }
    #mainNav .dropdown-menu .dropdown-item {
      color: #343a40;
      font-size: 1.2rem;
      font-weight: 400;
      line-height: 2.2rem;
      padding: 0.5rem 20px; }
      #mainNav .dropdown-menu .dropdown-item.active {
        color: #fff;
        background-color: #0075c9; }
  #mainNav .drop-down-footer {
    background-color: #0f2e4f;
    padding-bottom: 1rem; }
    #mainNav .drop-down-footer .nav-item {
      border-bottom: 0; }
      #mainNav .drop-down-footer .nav-item:last-child .nav-link {
        border-bottom: 0; }
      #mainNav .drop-down-footer .nav-item .nav-link {
        border-bottom: 1px solid #fff;
        color: #fff;
        font-size: 1.1rem;
        margin: 0 1.5rem;
        padding: 1rem 0;
        text-transform: capitalize; }
  #mainNav .dropdown-toggle::after {
    content: "+";
    float: right;
    border: 0; }
  #mainNav .dropdown.show .dropdown-toggle::after {
    content: "-"; } }

#mainNav .mobile-search .form-control {
  border-left: 0; }

#mainNav .input-group-text {
  background-color: #fff;
  border-right: 0;
  padding-right: 0; }

@media (min-width: 768px) {
  .primary-nav {
    margin-bottom: 1.5rem;
    height: 118px; }
    .primary-nav.compact {
      height: auto; }
    .primary-nav .container-lg {
      padding-left: 0;
      padding-right: 0; }
    .primary-nav nav {
      padding: 0; }
  #mainNav {
    color: #000;
    font-size: 1.25rem; }
    #mainNav .nav-link {
      line-height: 2.5rem; }
    #mainNav .navbar-nav {
      align-self: stretch;
      border: 0; }
    #mainNav .nav-link,
    #mainNav .nav-item {
      background: transparent;
      border-bottom: 0;
      display: flex; }
    #mainNav .nav-link:focus:focus,
    #mainNav .nav-link:active:focus,
    #mainNav .nav-item:focus:focus,
    #mainNav .nav-item:active .nav-link:focus,
    #mainNav .nav-item:focus {
      outline-color: transparent;
      outline-width: 0; }
    #mainNav .nav-link:hover {
      border-bottom: 3px solid #0075c9;
      color: #000; }
    #mainNav .active .nav-link {
      border-bottom: 3px solid #0075c9; }
    #mainNav .collapse,
    #mainNav .nav-link {
      align-self: stretch; }
      #mainNav .collapse span,
      #mainNav .nav-link span {
        align-self: center; }
    #mainNav .navbar-nav {
      justify-content: space-between;
      margin-right: 40px;
      overflow: contain;
      width: 100%; }
      #mainNav .navbar-nav .nav-link {
        font-weight: 600;
        /*&.show,
                &:focus,
                &:hover {
                    border-bottom: 3px solid $black;
                    color: $black;
                }*/ }
      #mainNav .navbar-nav .dropdown-toggle::after {
        display: none; }
      #mainNav .navbar-nav .dropdown {
        position: static; }
      #mainNav .navbar-nav .dropdown-menu {
        background: #fff;
        border: 0;
        border-top: 1px solid #ced4da;
        flex-flow: row nowrap;
        justify-content: center;
        margin: 0;
        padding: 0;
        text-align: center;
        width: 100%; }
      #mainNav .navbar-nav .dropdown-menu.in,
      #mainNav .navbar-nav .active .dropdown-menu,
      #mainNav .navbar-nav .show .dropdown-menu,
      #mainNav .navbar-nav .dropdown:hover .dropdown-menu {
        display: flex !important; }
      #mainNav .navbar-nav .dropdown-menu .dropdown-item {
        padding: 1rem 2rem;
        width: auto; }
        #mainNav .navbar-nav .dropdown-menu .dropdown-item:hover, #mainNav .navbar-nav .dropdown-menu .dropdown-item:focus, #mainNav .navbar-nav .dropdown-menu .dropdown-item.active, #mainNav .navbar-nav .dropdown-menu .dropdown-item:active {
          background-color: #f8f9fa;
          color: #0075c9;
          text-decoration: none; }
        #mainNav .navbar-nav .dropdown-menu .dropdown-item.active, #mainNav .navbar-nav .dropdown-menu .dropdown-item:focus, #mainNav .navbar-nav .dropdown-menu .dropdown-item:active {
          font-weight: 600; }
        #mainNav .navbar-nav .dropdown-menu .dropdown-item:hover {
          color: #0075c9; } }

@media (min-width: 768px) and (min-width: 992px) {
  .primary-nav {
    height: 145px; }
    .primary-nav.compact {
      height: auto; }
  #mainNav .navbar-nav {
    justify-content: space-around;
    margin-right: 0; } }

.breadcrumb {
  display: none;
  font-size: 0.8rem; }
  .breadcrumb a {
    color: #6c757d;
    text-decoration: underline; }
    .breadcrumb a:hover {
      color: #0075c9; }

@media (min-width: 576px) {
  .breadcrumb {
    display: flex; } }

footer {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  background-color: #f8f9fa; }
  footer .social-icons {
    text-align: center; }
    footer .social-icons a {
      padding-left: 0;
      padding-right: 0;
      padding-left: 0.25rem; }
  footer .nav {
    padding-top: 1rem;
    padding-bottom: 1rem; }
    footer .nav a {
      color: #6c757d;
      font-weight: normal; }
      footer .nav a:hover {
        text-decoration: underline; }
    footer .nav .nav-link {
      padding: 0 0.5rem; }
  footer nav.footer-menu {
    text-align: center; }
    footer nav.footer-menu .nav {
      display: flex;
      flex-direction: column; }
      footer nav.footer-menu .nav .nav-header {
        color: #000;
        font-size: 1.5rem;
        font-weight: 500; }
  footer nav.international .nav {
    border-bottom: 1px solid #ced4da;
    flex-flow: row wrap;
    justify-content: center; }
    footer nav.international .nav a {
      color: #6c757d; }
    footer nav.international .nav .active {
      color: #343a40;
      font-weight: 600; }
    footer nav.international .nav .distributor {
      border-left: 1px solid;
      margin-left: 0.5rem;
      padding-left: 1rem; }
  footer nav.legal .nav {
    align-items: center;
    flex-flow: row wrap;
    justify-content: center; }
    footer nav.legal .nav .copyright {
      color: #000; }

#ot-sdk-btn.ot-sdk-show-settings,
#ot-sdk-btn.optanon-show-settings {
  border: none !important;
  color: #6c757d !important;
  font-size: 12.8px !important;
  font-weight: 400 !important;
  padding: 0 8px !important; }

#ot-sdk-btn.ot-sdk-show-settings:hover,
#ot-sdk-btn.optanon-show-settings:hover {
  background-color: transparent !important;
  text-decoration: underline !important; }

.back-to-top {
  position: fixed;
  bottom: 25px;
  right: 25px;
  display: none; }

.blog-list a h2.card-title,
.research a h2.card-title {
  font-size: 1.5rem;
  font-weight: 200;
  margin-bottom: 0; }
  @media (max-width: 1200px) {
    .blog-list a h2.card-title,
    .research a h2.card-title {
      font-size: calc(1.275rem + 0.3vw) ; } }

.blog-list a .border-bottom:hover,
.research a .border-bottom:hover {
  background-color: #f8f9fa; }

.blog-list footer .social-icons a,
.research footer .social-icons a {
  color: #0075c9; }

.blog-list .input-wrap,
.research .input-wrap {
  padding-left: 0.5rem; }

.blog-list .filterBtn,
.research .filterBtn {
  color: #fff; }
  .blog-list .filterBtn:hover,
  .research .filterBtn:hover {
    text-decoration: none; }
  .blog-list .filterBtn::after,
  .research .filterBtn::after {
    padding-right: 0.5rem;
    content: "";
    float: right; }
  .blog-list .filterBtn.collapsed::after,
  .research .filterBtn.collapsed::after {
    content: ""; }

@media (min-width: 992px) {
  .blog-list #filter-options,
  .research #filter-options {
    display: block; } }

@media (min-width: 1200px) {
  .blog-detail main {
    margin-left: auto;
    margin-right: auto;
    max-width: 800px; } }

.blog-detail .author,
.blog-detail .date {
  font-size: 0.8rem;
  margin: 0;
  padding: 0; }
  .blog-detail .author + .hero,
  .blog-detail .date + .hero {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem; }

form .required:after {
  content: "*";
  color: red; }

.accordion .card-header .btn {
  padding: 0;
  text-decoration: none; }
  .accordion .card-header .btn::before {
    padding-left: 0.5rem;
    font-family: "Font Awesome 5 Pro";
    border: 0;
    content: "";
    float: right; }
  .accordion .card-header .btn.collapsed::before {
    content: ""; }

#productCarousel .carousel-control-prev,
#productCarousel .carousel-control-next {
  filter: invert(100%);
  opacity: 0.6; }

#productCarousel .view360 {
  border-color: #343a40;
  color: #002f87;
  margin-top: 1rem;
  margin-bottom: 1rem; }

#productCarousel .carousel-indicators {
  padding-top: 1.5rem;
  margin: 0;
  position: relative; }
  #productCarousel .carousel-indicators li {
    border: 2px solid #ced4da;
    height: 66px;
    margin: 10px;
    opacity: 1;
    padding: 0;
    width: 66px; }
    #productCarousel .carousel-indicators li img {
      display: block;
      opacity: 1; }
    #productCarousel .carousel-indicators li:hover {
      opacity: 0.5; }
    #productCarousel .carousel-indicators li.active, #productCarousel .carousel-indicators li.active:hover {
      border: 2px solid #e65526;
      opacity: 1; }

@media (min-width: 768px) {
  #productCarousel .center-video {
    display: flex;
    min-height: 330px; }
    #productCarousel .center-video .embed-responsive {
      align-self: center; }
  #productCarousel .carousel-control-prev,
  #productCarousel .carousel-control-next {
    display: none; } }

@media (min-width: 992px) {
  #productCarousel .center-video {
    min-height: 530px; } }

@media (min-width: 1200px) {
  #productCarousel .center-video {
    min-height: 600px; } }

.rating {
  /*@extend %fontawesome;*/
  color: #f2f2f2;
  display: inline-block;
  font-size: 20px;
  height: 20px;
  margin: 0;
  padding: 0;
  position: relative;
  width: auto; }
  .rating i {
    margin: 0 2px; }
  .rating .rating-upper {
    color: #e65526;
    display: flex;
    left: 0;
    overflow: hidden;
    padding: 0;
    position: absolute;
    top: 0;
    z-index: 1; }
  .rating .rating-lower {
    display: flex;
    padding: 0;
    z-index: 0; }

.Reviews {
  height: 24px;
  white-space: nowrap; }

.stars {
  display: block;
  position: relative; }
  .stars div {
    height: 20px;
    line-height: 18px; }
  .stars .starsBox {
    position: relative;
    width: 79px;
    height: 20px;
    margin-right: 8px;
    display: inline-block; }
  .stars .starsBack {
    color: #f2f2f2;
    position: absolute;
    top: 0;
    left: 0;
    width: 75px;
    height: 20px; }
  .stars .starsFront {
    color: #e65526;
    position: absolute;
    top: 0;
    left: 0;
    clip: auto;
    overflow: hidden;
    height: 20px; }
  .stars .starsRating {
    display: block;
    position: absolute;
    top: 20px;
    left: 0px;
    height: 20px;
    font-size: 12px;
    line-height: 12px;
    text-align: center;
    width: 100px; }
  .stars .star {
    color: inherit;
    width: 15px !important;
    display: inline-block;
    -ms-text-size-adjust: 20%;
    line-height: 14px;
    font-size: 18px;
    height: 15px;
    text-align: center; }

@media (max-width: 991.98px) {
  .nav-tabs {
    display: none; }
  .tab-content .card .card-header {
    background-color: #002f87;
    padding: 0; }
    .tab-content .card .card-header a {
      align-items: center;
      color: #fff;
      display: block;
      padding: 12px 20px;
      text-align: left;
      width: 100%; }
      .tab-content .card .card-header a h2 {
        font-size: 1.1rem;
        font-weight: 200;
        letter-spacing: 0.1rem;
        margin: 0; }
        .tab-content .card .card-header a h2::after {
          border: 0;
          content: "";
          float: right;
          font-family: "Font Awesome 5 Pro"; }
      .tab-content .card .card-header a.dropdown-toggle::after {
        display: none; }
      .tab-content .card .card-header a.dropdown-toggle.collapsed h2::after {
        content: ""; }
  .tab-content .tab-pane {
    display: block;
    opacity: 1; } }

@media (min-width: 992px) {
  .tab-content .collapse {
    display: block; }
  .nav-tabs {
    display: flex;
    justify-content: center; }
    .nav-tabs .nav-link {
      padding-left: 1.5rem;
      padding-right: 1.5rem;
      padding-top: 1rem;
      padding-bottom: 1rem;
      background-color: #002f87;
      border-left: 1px solid #fff;
      border-radius: 0; }
      .nav-tabs .nav-link h2 {
        color: #fff;
        font-size: 1rem;
        font-weight: 400;
        margin: 0; }
      .nav-tabs .nav-link.active,
      .nav-tabs .nav-link.show .nav-link {
        background-color: #fff;
        border-color: #ced4da #ced4da #fff; }
        .nav-tabs .nav-link.active h2,
        .nav-tabs .nav-link.show .nav-link h2 {
          color: #002f87; }
  .tab-content {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    padding-left: 3rem;
    padding-right: 3rem;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-top: 0; }
    .tab-content .card {
      border: 0; }
      .tab-content .card .card-header {
        display: none; } }

.tab-content .card-body h3 {
  font-size: 1rem; }

.tab-content .card-body ul {
  margin-top: 1.5rem;
  padding-left: 1rem;
  list-style-type: none; }
  .tab-content .card-body ul li {
    margin-top: 1rem;
    margin-bottom: 1rem; }
  .tab-content .card-body ul ul {
    margin-bottom: 1.5rem;
    margin-top: 0; }
    .tab-content .card-body ul ul li {
      margin-top: 0.25rem;
      margin-bottom: 0.25rem; }

.testimonial-video-section {
  text-align: center; }
  .testimonial-video-section h2 {
    color: #fff;
    font-size: 1.875rem;
    padding-top: 1rem;
    padding-bottom: 1rem; }
  .testimonial-video-section h3 {
    color: #fff;
    font-size: 18px;
    font-weight: 200;
    line-height: 25px;
    margin-bottom: 20px;
    margin-top: 20px;
    text-align: left; }
  .testimonial-video-section button {
    width: 100%;
    background-color: transparent;
    color: #fff;
    border: solid 2px #fff;
    padding: 10px 0px;
    border-radius: 20px;
    font-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    margin-bottom: 10px;
    -webkit-transition: all ease 0.25s;
    transition: all ease 0.25s;
    cursor: pointer; }
    .testimonial-video-section button:hover, .testimonial-video-section button.active {
      background-color: #fff;
      color: #0075c9;
      border: none; }
    .testimonial-video-section button:focus {
      outline: none; }
  .testimonial-video-section .video-container {
    position: relative;
    overflow: hidden;
    padding-top: 56.25%; }
    .testimonial-video-section .video-container iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      border: 0; }

@media (min-width: 992px) {
  .testimonial-video-section h3 {
    line-height: 28px;
    margin-bottom: 20px; }
  .testimonial-video-section .video-wrap {
    max-width: 900px; } }

.manuals .col {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  align-items: center;
  border-bottom: 1px solid #ced4da;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media (min-width: 768px) {
    .manuals .col {
      flex-direction: row;
      flex-wrap: nowrap; } }

.manuals h2 {
  font-size: 1.2rem; }

.manuals .btn {
  font-size: 1rem;
  font-weight: 200; }

.ps-widget {
  background: #dc3545 !important;
  border: none !important;
  border-radius: 0.4rem !important;
  display: inline-block !important;
  float: none !important;
  padding: 0.25rem 1rem !important;
  text-align: center; }
  .ps-widget:before {
    display: none !important; }
  .ps-widget .ps-button-label,
  .ps-widget .ps-disabled small {
    font-family: "Urbanist, -apple-system, Arial, sans-serif, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Noto Sans, Liberation Sans, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji", sans-serif !important;
    font-size: 1rem !important;
    font-weight: 600;
    text-transform: capitalize !important; }

button.ps-btn {
  border-radius: 0.4rem !important; }
  button.ps-btn .ps-widget {
    background: transparent !important; }

.shop-now {
  background-size: 1px 75px;
  align-items: center !important;
  display: flex;
  min-height: 40px;
  padding: 0;
  transition: background 0.75s ease-out; }
  .shop-now:hover {
    background-position: 75px !important; }
  .shop-now .ps-widget {
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    display: block !important;
    flex: 1 1 auto !important;
    float: none !important;
    padding: 0 !important;
    text-align: center; }
    .shop-now .ps-widget span,
    .shop-now .ps-widget.ps-disabled small {
      color: #fff !important;
      font-family: "Urbanist, -apple-system, Arial, sans-serif, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Noto Sans, Liberation Sans, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji", sans-serif !important;
      font-size: 0.8rem !important;
      font-weight: 600; }
    .shop-now .ps-widget:before {
      display: none !important; }

.container {
  max-width: 1300px !important; }

table {
  border-bottom: 3px solid #002f87; }
  table .table-primary th {
    background-color: #002f87;
    color: #fff; }
    table .table-primary th a {
      color: #fff;
      text-decoration: none; }
  table caption {
    font-size: 0.9rem;
    text-align: right; }

blockquote {
  border-left: 12px solid #002f87;
  margin: 20px;
  padding: 5px 15px;
  font-size: 1.5rem;
  line-height: normal;
  background-color: #f2f2f2; }

sup {
  font-size: 40%;
  vertical-align: super; }

.skinnyPage #bodycontent .container {
  max-width: 900px !important; }

.research-detail {
  max-width: 900px !important; }

.buying-guide #bodycontent,
.EDU #bodycontent,
.professionals .skinnyPage #bodycontent {
  padding-bottom: 3rem; }

.colors,
.color {
  background-color: #f2f2f2;
  color: #000;
  font-size: 0.8em;
  vertical-align: text-top;
  text-align: center;
  padding: 0;
  overflow: hidden; }
  .colors .color-wrapper,
  .color .color-wrapper {
    display: block;
    margin-top: 1em;
    word-wrap: none;
    padding: 0 0 10px 0; }
  .colors span:hover,
  .color span:hover {
    cursor: default; }
  .colors div,
  .color div {
    padding-bottom: 2px; }
  .colors.pblack,
  .color.pblack {
    background-color: #000; }
  .colors.pblue,
  .color.pblue {
    background-color: #385282; }
  .colors.pgray,
  .color.pgray {
    background-color: #828c96; }
  .colors.porchid,
  .color.porchid {
    background-color: #6a245e; }
  .colors.ppink,
  .color.ppink {
    background-color: #f38592; }
  .colors.pteal,
  .color.pteal {
    background-color: #79c5bf; }
  .colors.pwhite,
  .color.pwhite {
    background-color: #eee; }
  .colors.pmintgreen,
  .color.pmintgreen {
    background-color: #bdcfbf; }
  .colors.pburgundy,
  .color.pburgundy {
    background-color: #b0445e; }
  .colors.pblushpink,
  .color.pblushpink {
    background-color: #f7dbe0; }
  .colors.pfreshgreen,
  .color.pfreshgreen {
    background-color: #788672; }
  .colors.pblackcopper,
  .color.pblackcopper {
    background: linear-gradient(to bottom right, #000 50%, #dec6aa 55%); }
  .colors.pblackchrome,
  .color.pblackchrome {
    background: linear-gradient(to bottom right, #000 50%, #e5e5e5 55%); }
  .colors.prosegold, .colors.pwhiterosegold,
  .color.prosegold,
  .color.pwhiterosegold {
    background: linear-gradient(to bottom right, #eee 50%, #935867 55%); }
  .colors span,
  .colors a,
  .color span,
  .color a {
    border: solid 1px #343a40;
    border-radius: 50%;
    display: inline-block;
    height: 25px;
    margin: 0 1px;
    width: 25px; }
    .colors span.active,
    .colors a.active,
    .color span.active,
    .color a.active {
      box-shadow: #5490ff 0 0 3px 3px;
      text-decoration: none; }
    .colors span:hover,
    .colors a:hover,
    .color span:hover,
    .color a:hover {
      cursor: pointer; }

.background {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  max-height: 710px;
  min-height: 300px;
  margin-bottom: 20px; }
  .background .text-left {
    animation: fade-up-in ease 1s forwards 0.25s;
    z-index: 1; }
    @media (max-width: 575.99px) {
      .background .text-left .display-4 {
        font-size: 2.125rem;
        line-height: 2rem; } }
    .background .text-left .display-4 p {
      font-size: 1.438rem;
      font-weight: bold; }
  .background.waterFlossers {
    background-image: url(/images/waterflosser.jpg); }
  .background.flossing-toothbrush {
    background-image: url(/images/sonic_fusion.jpg); }
  .background.flosser-toothbrush {
    background-image: url(/images/combination.jpg); }
  .background.whitening {
    background-image: url(/images/whitening.jpg); }

.shop-now {
  display: block;
  margin: 25px auto;
  border-radius: 3px;
  min-height: 51px; }
  .shop-now .ps-widget {
    padding: 10px 0 !important; }
    .shop-now .ps-widget span,
    .shop-now .ps-widget.ps-disabled small {
      font-size: 1rem !important; }

.shop-WPS {
  background-image: linear-gradient(180deg, #0f2e4f 0, #002f87);
  background-repeat: repeat-x;
  background-size: 1px 75px;
  text-align: center;
  font-weight: 800;
  transition: background 0.75s ease-out;
  padding: 15px 0;
  display: block; }

.shop-WPS:hover {
  background-image: linear-gradient(180deg, #0f2e4f 0, #0075c9);
  text-decoration: none; }

.list-group-item-action.icon-left {
  height: 100%;
  display: block; }
  .list-group-item-action.icon-left > * {
    margin-left: 25px; }
  .list-group-item-action.icon-left:before {
    display: inline-block;
    font-size: 1.75rem;
    font-weight: 900;
    top: 50%;
    position: absolute;
    padding: 0 10px; }

.list-group-item-action.icon-right {
  display: block;
  height: 100%; }
  .list-group-item-action.icon-right > * {
    max-width: 95%; }
  .list-group-item-action.icon-right:after {
    font-size: 2rem;
    font-weight: 900;
    right: 15px;
    top: 50%;
    position: absolute;
    margin-left: 10px; }
  .list-group-item-action.icon-right:hover:after {
    right: 5px; }

.list-group-item h2 {
  font-size: 1.75rem; }

.list-group-item h3 {
  font-size: 1.4rem;
  margin-bottom: 0;
  line-height: 1.4rem; }

.list-group-item p {
  font-size: 1rem;
  padding: 0;
  margin: 5px 0 0;
  line-height: 1.2rem; }
  .list-group-item p + * {
    margin-top: 10px; }

.filter-nav {
  position: relative; }
  .filter-nav a.filterBtn {
    background-color: #0f2e4f;
    font-weight: 500;
    border: none;
    font-size: 1.5rem;
    padding: 5px 20px; }
    .filter-nav a.filterBtn:after {
      display: inline-block;
      font-family: "Font Awesome 5 Pro";
      font-weight: 200;
      content: "\f068";
      font-variant: normal;
      text-rendering: auto;
      -webkit-font-smoothing: antialiased;
      font-size: 1.25rem;
      line-height: 2.5rem;
      float: right;
      transition: all ease 0.5s; }
    .filter-nav a.filterBtn.collapsed:after {
      content: "\f067"; }
    .filter-nav a.filterBtn.btn {
      color: #fff; }

.selector-menu .input-wrap {
  padding: 5px 10px; }
  .selector-menu .input-wrap label {
    font-size: 0.8125rem;
    padding-left: 5px; }

.selector-menu .filter-list {
  margin-top: 3px; }
  .selector-menu .filter-list span {
    padding: 4px 15px 5px;
    font-size: 0.75rem;
    text-transform: none;
    border: solid 1px #ced4da;
    border-radius: 20px;
    display: inline-block;
    margin-top: 7px;
    color: #000;
    background: #f2f2f2;
    cursor: pointer; }
    .selector-menu .filter-list span:before {
      margin-right: 5px;
      padding-left: 6px;
      width: 24px;
      height: 24px;
      font-weight: 900;
      border: solid 1px #6c757d;
      background-color: #fff;
      border-radius: 30px;
      content: "X";
      background-size: contain;
      display: inline-block; }
    .selector-menu .filter-list span:hover:before {
      color: red; }
  .selector-menu .filter-list #results-count {
    float: right;
    cursor: default; }
    .selector-menu .filter-list #results-count:before {
      content: none; }

.selector-menu .check-group {
  border-bottom: 1px solid #6c757d; }
  .selector-menu .check-group .input-wrap {
    position: relative;
    /* stylized box for checkboxes */ }
    .selector-menu .check-group .input-wrap label {
      display: inline-block;
      position: relative;
      margin-left: 5px;
      /* stylized circular indicator for checkboxes */ }
      .selector-menu .check-group .input-wrap label:after {
        content: "";
        width: 12px;
        height: 12px;
        border-radius: 8px;
        border: 4px #0f2e4f solid;
        background-color: #fff;
        position: absolute;
        top: 4px;
        left: -16px;
        opacity: 0; }
    .selector-menu .check-group .input-wrap:before {
      content: "";
      width: 16px;
      height: 16px;
      border-radius: 2px;
      background-color: #fff;
      border: solid 1px #6c757d;
      position: absolute;
      top: 11px;
      left: -3px;
      opacity: 1; }
  .selector-menu .check-group input {
    opacity: 0;
    position: absolute; }
    .selector-menu .check-group input:checked + label:after {
      opacity: 1; }
    .selector-menu .check-group input.color-filter:checked + label:after {
      display: none; }
    .selector-menu .check-group input.color-filter:checked + label:before {
      display: none; }

.color-filter .input-wrap {
  display: inline-block;
  padding: 2px; }

.color-filter input {
  opacity: 0;
  position: absolute;
  z-index: -10; }

.color-filter label {
  width: 35px;
  height: 35px;
  border-radius: 4px;
  border: 1px solid #fff; }

.color-filter input:checked + label {
  border: solid 1px #002f87 !important;
  box-shadow: #002f87 0 0 2px 2px; }

.color-filter label.color:after {
  opacity: 0;
  display: none; }

.color-filter .input-wrap:before {
  opacity: 0;
  display: none; }

/*.nav-item.active .navlink {
    color: #ff0000;
    text-decoration: underline;
}*/
.hero {
  overflow: hidden; }
  .hero .text-white {
    animation: fade-up-in ease 1s forwards .25s;
    z-index: 1; }
  .hero p {
    font-size: 1.438rem;
    font-weight: bold; }

.hero-product {
  position: absolute;
  left: -50%;
  top: -50%;
  animation: fade-up-in ease 1s forwards .75s;
  opacity: 0;
  z-index: 0; }

.splash {
  background-image: url(/images/splash.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center -20%; }

.seal {
  background-image: url(/images/ADA-Seal.png);
  width: 100px;
  height: 100px;
  background-repeat: no-repeat;
  background-size: contain; }

.product-cols a {
  padding-bottom: 20px;
  transition: all ease 0.25s;
  background-color: #fff;
  cursor: pointer; }
  .product-cols a .btn {
    white-space: normal;
    text-transform: none;
    width: 90%; }
  .product-cols a .btn-outline-secondary {
    color: #002f87;
    border: solid 2px #002f87;
    font-size: 0.875rem;
    font-weight: 600; }
  .product-cols a:hover .btn {
    background-color: #002f87;
    border: 2px solid #002f87;
    color: #fff; }

.product-cols .col-md-3 img {
  width: 90%; }

.product-cols .col-md-3 .image-swap {
  overflow: hidden;
  height: 0px;
  padding-bottom: 145%;
  margin: 0 3%; }
  .product-cols .col-md-3 .image-swap img {
    transform: translateY(-50%); }
  .product-cols .col-md-3 .image-swap:hover img {
    transform: translateY(0%); }

.card-list {
  /*padding: 4vh 0px;*/ }
  .card-list .container {
    position: relative; }
    @media (max-width: 768px) {
      .card-list .container {
        padding: 0px;
        width: 100%; } }
  .card-list .card {
    width: 100% !important;
    box-shadow: 0px 0px 25px rgba(0, 0, 0, 0.25); }
    .card-list .card .card-header {
      color: #fff;
      font-weight: 900;
      font-size: 1.563rem;
      padding: 20px 1.25rem; }
      .card-list .card .card-header .yellow,
      .card-list .card .card-header .orange {
        background-color: #e65526;
        border-radius: 100px;
        padding: 0px 10px 3px;
        font-weight: 900;
        font-size: 26px; }
      .card-list .card .card-header img {
        vertical-align: middle;
        padding-right: 10px;
        margin-top: -10px; }
    .card-list .card .list-group-item {
      padding: .75rem 2.25rem;
      height: auto;
      max-height: 87px; }
      .card-list .card .list-group-item h4,
      .card-list .card .list-group-item p {
        font-weight: 600;
        font-size: 18px;
        color: #000; }
      .card-list .card .list-group-item p {
        font-size: 14px;
        padding: 0px;
        line-height: 22px; }
      .card-list .card .list-group-item:after {
        content: '';
        display: block;
        position: absolute;
        right: 30px;
        width: 20px;
        height: 20px;
        top: 40%;
        background-image: url(../images/carousel-arrow.png);
        background-size: contain;
        background-repeat: no-repeat;
        transform: rotate(180deg);
        transition: all ease .25s; }
      .card-list .card .list-group-item:hover h4,
      .card-list .card .list-group-item:hover p,
      .card-list .card .list-group-item:hover a {
        text-decoration: none; }
      .card-list .card .list-group-item:hover:after {
        right: 20px; }
      @media (max-width: 768px) {
        .card-list .card .list-group-item .image {
          display: none; } }
      .card-list .card .list-group-item .floated-img {
        float: right;
        margin-right: -20px;
        position: relative;
        z-index: 1; }
        @media (max-width: 768px) {
          .card-list .card .list-group-item .floated-img {
            display: none; } }
  @media (max-width: 768px) {
    .card-list .btn {
      right: inherit;
      /*position: relative;*/
      bottom: inherit;
      margin: 20px auto 0 auto; } }
  .card-list.content h2 {
    color: #000; }
  .card-list.content p {
    font-size: 25px;
    line-height: 35px; }
    @media (max-width: 991.98px) {
      .card-list.content p {
        font-size: 20px;
        line-height: 25px; } }

.stat-cards .card {
  font-size: 1.438rem;
  color: #0f2e4f;
  font-weight: 600;
  border: none;
  border-bottom: solid 20px #e65526;
  border-radius: 5px;
  padding: 60px 15px;
  line-height: 1.5rem; }

.stat-cards .stat {
  font-size: 4.25rem;
  color: #002f87;
  font-weight: 900;
  letter-spacing: -2px;
  font-weight: bold;
  white-space: nowrap;
  line-height: 4.5rem;
  padding: 10px; }
  .stat-cards .stat sup {
    vertical-align: baseline;
    position: relative;
    top: -1.60rem;
    font-size: 2rem; }

.callout-box-large {
  padding: 5vh 0px; }
  @media (max-width: 990px) {
    .callout-box-large {
      padding: 5vh 0px; } }
  @media (max-width: 768px) {
    .callout-box-large .container {
      padding: 0px;
      margin: 0px; } }
  @media (max-width: 768px) {
    .callout-box-large .box {
      padding: 0px; } }
  .callout-box-large .box .content {
    width: auto;
    margin: 50px;
    box-sizing: border-box;
    text-align: left;
    padding: 30px;
    border: solid #fff 15px; }
    @media (max-width: 768px) {
      .callout-box-large .box .content {
        padding: 10% 0%;
        border: none !important;
        margin: 0px;
        width: 100%; } }
    .callout-box-large .box .content h3 {
      font-size: 43px; }
      @media (max-width: 575.98px) {
        .callout-box-large .box .content h3 {
          font-size: 30px;
          line-height: 33px; } }
    .callout-box-large .box .content p {
      font-size: 26px;
      line-height: 32px; }
      @media (max-width: 768px) {
        .callout-box-large .box .content p {
          font-size: 21px;
          line-height: 27px; } }
    .callout-box-large .box .content a {
      margin-bottom: 0px; }
  .callout-box-large .box.transparent .content {
    border: solid #fff 15px;
    color: #fff; }
  .callout-box-large .box.solid {
    background-image: url(/images/computer-bg.jpg);
    background-size: cover;
    background-repeat: no-repeat; }
    .callout-box-large .box.solid .content {
      background-color: #fff; }
    .callout-box-large .box.solid h3 {
      color: #343a40; }

.high-content h2 {
  max-width: 400px;
  padding-bottom: 20px; }

.high-content p {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 35px; }

.products {
  /*border-top: 1px solid $dkgrey;*/ }
  @media (max-width: 991.98px) {
    .products {
      margin-top: 20px; } }
  .products .dropdown .btn-outline-secondary {
    width: 50%;
    border-radius: 50px;
    text-align: left;
    font-size: 0.75rem;
    font-weight: 900; }
    .products .dropdown .btn-outline-secondary:after {
      position: absolute;
      top: 50%;
      right: 5%;
      transform: translateY(-50%); }
  .products .products.container .dropdown-menu {
    left: 3% !important; }
  .products .dropdown-item {
    font-size: 0.8125rem; }
  .products #productList .card {
    width: 100%; }
  .products .product-item {
    /*-------------------------------*/
    /*--------------------------*/
    /*___________________________*/
    /*span {
            font-weight: 600;
            font-size: 0.75rem;
            color: $black;
            vertical-align: top;
        }*/ }
    .products .product-item a {
      text-decoration: none;
      overflow: hidden; }
    .products .product-item .card-img-top {
      overflow: hidden;
      padding-top: 10px;
      height: 220px; }
      .products .product-item .card-img-top img {
        width: auto;
        margin: 0 auto;
        height: auto;
        max-height: 200px;
        display: block;
        max-width: 100%; }
    .products .product-item .colors {
      background-color: #f8f9fa;
      color: #343a40;
      font-size: 0.8em;
      vertical-align: text-top;
      text-align: center;
      margin: 0 0 10px 0;
      padding: 0;
      overflow: hidden;
      /*-------------Test------------------*/
      height: auto;
      background-color: #fff; }
    .products .product-item .products .product-item .btn {
      max-width: unset;
      min-width: unset; }
    .products .product-item .sonic-toothbrush- .colors,
    .products .product-item .dental-water-flosser- .colors,
    .products .product-item .dental-water-flosser-counter-top .colors,
    .products .product-item .dental-water-flosser-cordless .colors,
    .products .product-item .dental-water-flosser-specialty .colors,
    .products .product-item .dental-water-flosser-club-only .colors {
      border-top: 4px solid #002f87; }
    .products .product-item .dental-water-flosser-whitening .colors {
      border-top: 4px solid #a3238e; }
    .products .product-item .water-flosser-toothbrush- .colors,
    .products .product-item .water-flosser-toothbrush-counter-top .colors,
    .products .product-item .water-flosser-toothbrush-whitening .colors,
    .products .product-item .water-flosser-toothbrush-cordless .colors,
    .products .product-item .water-flosser-toothbrush-specialty .colors {
      border-top: 4px solid #70d44b; }
    .products .product-item .flossing-toothbrush- .colors,
    .products .product-item .flossing-toothbrush-counter-top .colors,
    .products .product-item .flossing-toothbrush-whitening .colors,
    .products .product-item .flossing-toothbrush-cordless .colors,
    .products .product-item .flossing-toothbrush-specialty .colors {
      border-top: 4px solid #e65526; }
    .products .product-item .ModelName {
      position: relative;
      height: 85px;
      margin-bottom: 5px; }
      .products .product-item .ModelName h5,
      .products .product-item .ModelName h2.card-title {
        height: 100%;
        overflow: hidden;
        padding: 8px 8px 3px 8px; }
      .products .product-item .ModelName:after {
        position: absolute;
        width: 100%;
        height: 28px;
        background: linear-gradient(to top, #fff, transparent);
        content: "";
        bottom: -5px;
        left: 0px; }
      .products .product-item .ModelName:hover h5,
      .products .product-item .ModelName:hover h2.card-title {
        height: auto;
        background-color: #fff;
        border-radius: 5px;
        padding-bottom: 10px; }
      .products .product-item .ModelName:hover:after {
        content: none; }
    .products .product-item h5,
    .products .product-item h2.card-title {
      font-weight: 900;
      font-size: 1.75rem;
      font-weight: normal;
      line-height: 28px;
      color: #000;
      font-size: 28px;
      font-weight: 400;
      color: #6c757d; }
    .products .product-item .price {
      font-size: 1.5rem;
      color: #000;
      text-overflow: unset;
      white-space: nowrap; }
    .products .product-item ul {
      display: inline-block; }
    .products .product-item .btn {
      margin: 0px auto 15px;
      width: 100%;
      display: block; }
    .products .product-item .shop-now {
      width: 90%; }
    .products .product-item .btn.rounded {
      border-radius: 15px !important;
      padding: 0px 10px 4px;
      height: 25px;
      font-size: 0.75rem;
      text-transform: none;
      display: inline; }
      .products .product-item .btn.rounded span {
        color: #0f2e4f;
        font-weight: 900; }
      .products .product-item .btn.rounded:hover span {
        color: #fff; }
    .products .product-item .compare span {
      margin-top: 4px;
      padding: 4px 15px 4px;
      font-size: 0.75rem;
      text-transform: none;
      border: solid 1px transparent;
      border-radius: 30px;
      font-weight: 300;
      display: inline-block;
      color: #000;
      background: #f2f2f2;
      cursor: pointer; }
      .products .product-item .compare span:hover {
        box-shadow: #6c757d 0 0 2px 2px;
        background: #ced4da;
        font-weight: 600; }
      .products .product-item .compare span:before {
        display: inline-block;
        font-family: "Font Awesome 5 Pro";
        font-weight: 200;
        font-variant: normal;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        margin-right: 9px;
        padding: 1px 6px 0;
        width: 24px;
        height: 24px;
        color: #000;
        border: solid 1px #70d44b;
        background-color: #fff;
        border-radius: 30px;
        content: "\f067";
        background-size: contain; }
    .products .product-item.compare-on .compare span:before {
      color: #70d44b;
      font-weight: 900;
      content: "\f00c";
      border-color: #70d44b;
      border-radius: 3px; }
  .products #productList.CompareFull .compare span:before {
    border-color: red; }
  .products #productList.CompareFull .compare-on .compare span:before {
    border-color: #70d44b; }

.star {
  display: inline-block;
  width: 10px;
  color: #6c757d;
  margin: 0px 0.025rem; }
  .star.active {
    color: #0f2e4f; }
  .star:last-of-type {
    margin-right: 5px; }

.expand-control {
  padding: 5px;
  position: absolute;
  right: 5px;
  top: 5px; }
  .expand-control span {
    display: block;
    background-color: #000;
    width: 12px;
    height: 2px;
    float: right;
    transition: all ease 0.25s;
    padding: 0px; }
    .expand-control span:first-of-type {
      position: absolute;
      right: 5px; }
  .expand-control.collapsed span:first-of-type {
    transform: rotate(-90deg); }

/***************  Product Comparison Grid ***************/
#ComparisonList {
  display: none;
  position: fixed;
  bottom: 0;
  box-shadow: #000 0 0 5px 5px;
  height: 155px;
  margin-bottom: 5px;
  width: 100%;
  background-color: #f2f2f2; }
  #ComparisonList button {
    margin: 4px; }
    #ComparisonList button:disabled {
      background-color: #fff;
      color: #000;
      text-decoration-line: line-through; }
  #ComparisonList .row .menu {
    height: 35px;
    padding-bottom: 5px; }
  #ComparisonList .itemCompare {
    height: 120px;
    margin: 0;
    padding: 0;
    background-color: #fff;
    border-radius: 4px;
    position: relative;
    cursor: pointer;
    border-right: 4px solid #f2f2f2;
    width: 50%; }
    #ComparisonList .itemCompare:after {
      position: absolute;
      top: 40%;
      right: 0;
      width: 24px;
      height: 24px;
      display: inline-block;
      font-family: "Font Awesome 5 Pro";
      font-weight: 900;
      font-variant: normal;
      text-rendering: auto;
      -webkit-font-smoothing: antialiased;
      margin-right: 7px;
      padding: 1px 6px 0;
      color: #70d44b;
      border: solid 1px #70d44b;
      background-color: #fff;
      border-radius: 3px;
      content: "\f00c";
      background-size: contain; }
    #ComparisonList .itemCompare:hover:after {
      color: red;
      content: "\f00d"; }
    #ComparisonList .itemCompare img {
      height: 95px;
      margin: 0; }
  #ComparisonList .itemCount {
    word-wrap: none; }

@media (min-width: 769px) {
  /*********************** desktop style fixes ***********************/
  #ComparisonList {
    height: 125px; }
    #ComparisonList .itemCompare {
      max-width: 25%; } }

#style-guide .header {
  padding-bottom: 20px;
  margin-bottom: 40px !important;
  border-bottom: solid 2px #6c757d; }

#style-guide .fonts h1, #style-guide .fonts h2, #style-guide .fonts h3, #style-guide .fonts h4, #style-guide .fonts h5, #style-guide .fonts h6, #style-guide .fonts p, #style-guide .fonts strong {
  margin: 0px;
  color: #000; }

#style-guide .fonts a {
  margin: 0px; }

#style-guide .fonts .paragraph {
  padding-bottom: 0px; }

#style-guide .label {
  margin-bottom: 10px;
  font-size: 14px; }

#style-guide .btn-section .btn {
  margin: 0px auto;
  max-width: 350px;
  width: 100%; }

#style-guide .btn-section li {
  padding-bottom: 0px; }

#style-guide .btn-section .gradient-background li {
  color: #fff; }

.product {
  overflow: hidden; }
  @media (max-width: 991.98px) {
    .product {
      margin-bottom: 0px; } }
  .product h1 {
    font-family: Urbanist, arial, san-serif;
    font-size: 3.125rem;
    line-height: 56px;
    color: #002f87;
    margin-bottom: 20px;
    font-weight: 500;
    letter-spacing: -0.1rem; }
    @media (max-width: 991.98px) {
      .product h1 {
        font-size: 1.875rem;
        line-height: 32px;
        letter-spacing: 0px; } }
  .product .price {
    margin-top: 20px; }

.research-detail .author {
  font-style: italic;
  font-size: .9rem;
  padding-bottom: 20px;
  border-bottom: solid 1px #6c757d; }

.research-detail p a {
  color: #0075c9; }

.blog-detail {
  max-width: 850px !important; }
  .blog-detail .border-b {
    border-bottom: solid 1px #6c757d;
    padding-bottom: 3rem;
    margin-bottom: 3rem; }
  .blog-detail h1 {
    color: #002f87;
    font-weight: 900; }
  .blog-detail p {
    padding-bottom: 1.25rem;
    margin: 0; }
  .blog-detail img {
    margin: 1.25rem auto;
    display: block; }
  .blog-detail p.date {
    padding: 0;
    margin: 0; }
  .blog-detail p.author {
    padding: 0;
    margin: 0; }
    .blog-detail p.author:before {
      content: 'by: ';
      font-weight: 900; }
  .blog-detail blockquote {
    border-left: solid 5px #002f87;
    padding: 15px 10px;
    margin-left: 20px;
    margin-bottom: 20px; }
  .blog-detail .footnotes {
    border-top: solid 1px #6c757d;
    padding-top: 20px;
    font-size: .75rem;
    line-height: normal;
    margin-top: 30px; }
    .blog-detail .footnotes li {
      padding-bottom: 10px; }
  .blog-detail .sub {
    font-weight: 900;
    text-transform: uppercase;
    font-size: 16px;
    display: block; }
  .blog-detail .share {
    padding-top: 20px;
    border-top: solid 1px #6c757d;
    border-bottom: solid 1px #6c757d; }
    .blog-detail .share h4 {
      text-transform: uppercase;
      font-size: 1.2rem;
      font-weight: 900; }
      @media (max-width: 585px) {
        .blog-detail .share h4 {
          text-align: center; } }
    .blog-detail .share .social-icons {
      display: inline-block; }
      @media (max-width: 585px) {
        .blog-detail .share .social-icons {
          display: block;
          margin-top: 10px;
          text-align: center; } }

@media all and (max-width: 768px) {
  .professionals .hero .seal {
    position: relative;
    left: 0;
    bottom: inherit; } }

@media all and (max-width: 768px) {
  .professionals .hero .btn {
    font-size: 14px; } }

.background.professional {
  background-image: url(/pro/images/professional-bg.jpg);
  min-height: 50px;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: cover; }
  .background.professional .display-4 {
    font-size: 3.5rem;
    line-height: 3.2rem; }

@media all and (min-width: 1800px) {
  .background.professional {
    background-position: left -100px;
    background-size: cover; } }

.homeHero {
  background-repeat: no-repeat; }
  .homeHero h1,
  .homeHero h2,
  .homeHero h3,
  .homeHero h4,
  .homeHero h5,
  .homeHero .h2,
  .homeHero .h3,
  .homeHero .h4,
  .homeHero .h5 {
    color: #0f2e4f; }
  @media (min-width: 768px) {
    .homeHero {
      background-position: top right;
      background-size: cover;
      padding-top: 0px; } }
  @media (min-width: 1200px) {
    .homeHero {
      min-height: 600px; } }
  .homeHero .display-2 {
    font-size: 3rem;
    line-height: 2.8rem;
    font-weight: 600;
    text-shadow: 2px 2px #000; }
    @media (min-width: 576px) {
      .homeHero .display-2 {
        font-size: 4rem;
        line-height: 3.8rem; } }
  .homeHero .ada {
    text-align: center; }
    @media (min-width: 992px) {
      .homeHero .ada {
        text-align: left; } }

.heroProducts a {
  color: #6c757d;
  text-decoration: none;
  font-size: 1rem; }
  .heroProducts a h6 {
    margin-top: 10px; }

@media (min-width: 1200px) {
  .heroProducts {
    position: relative;
    top: -75px; } }

.pillar {
  /*Sonic fusion override*/ }
  .pillar.water-flosser .hero .container,
  .pillar .tabs .pillar-tabs .ptab.water-flosser {
    border-top-color: #002f87; }
  .pillar.cordless .hero .container,
  .pillar .tabs .pillar-tabs .ptab.cordless {
    border-top-color: #0075c9; }
  .pillar.complete-care .hero .container,
  .pillar .tabs .pillar-tabs .ptab.complete-care {
    border-top-color: #70d44b; }
  .pillar.sonic-fusion .hero .container,
  .pillar .tabs .pillar-tabs .ptab.sonic-fusion {
    border-top-color: #e65526; }
  .pillar.whitening .hero .container,
  .pillar .tabs .pillar-tabs .ptab.whitening {
    border-top-color: #a3238e; }
  .pillar .tabs .pillar-tabs .ptab.active h3 {
    color: #f8f9fa;
    font-weight: 800; }
  .pillar .tabs .pillar-tabs .ptab.active.water-flosser {
    background-color: #002f87; }
  .pillar .tabs .pillar-tabs .ptab.active.cordless {
    background-color: #0075c9; }
  .pillar .tabs .pillar-tabs .ptab.active.complete-care {
    background-color: #70d44b; }
  .pillar .tabs .pillar-tabs .ptab.active.sonic-fusion {
    background-color: #e65526; }
  .pillar .tabs .pillar-tabs .ptab.active.whitening {
    background-color: #a3238e; }
  .pillar .breadcrumbs {
    color: #fff;
    font-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1.15rem;
    left: 50%;
    max-width: 1300px;
    position: absolute;
    top: 40px;
    transform: translateX(-50%);
    width: 90%;
    z-index: 50; }
    .pillar .breadcrumbs a {
      color: #fff;
      font-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }
    @media (min-width: 576px) {
      .pillar .breadcrumbs {
        font-size: 1.55rem; } }
  .pillar .hero {
    overflow-x: hidden;
    padding-bottom: 30px;
    padding-top: 80px;
    position: relative; }
    .pillar .hero::before {
      content: "";
      height: 300px;
      position: absolute;
      top: 0;
      width: 100%; }
    @media (min-width: 576px) {
      .pillar .hero {
        padding-top: 110px; } }
    .pillar .hero .splash {
      position: absolute;
      height: 300px;
      top: 0px;
      overflow: hidden;
      width: 100%;
      background: none; }
      .pillar .hero .splash:after {
        animation: fade-up-in ease 3s forwards 1s;
        background-image: url("/images/splash.png");
        background-repeat: no-repeat;
        background-size: 100%;
        bottom: 10%;
        content: "";
        height: 100%;
        left: 0;
        min-width: 700px;
        opacity: 0;
        position: absolute;
        top: 0;
        width: 100%; }
    .pillar .hero .container {
      background-color: #fff;
      border-radius: 5px;
      border-top: solid 25px;
      box-shadow: 0 5px 19px 0 rgba(0, 0, 0, 0.15);
      padding: 10% 5%;
      padding-bottom: 0;
      position: relative;
      width: 90%;
      z-index: 5;
      justify-content: flex-end; }
      @media (min-width: 576px) {
        .pillar .hero .container {
          padding: 8%;
          padding-bottom: 0; } }
      @media (min-width: 992px) {
        .pillar .hero .container {
          justify-content: unset;
          padding: 80px; } }
    .pillar .hero .hero-image {
      margin-left: 0;
      margin-right: 0;
      bottom: 10px;
      margin-right: -50px;
      margin-top: -200px;
      max-height: 120%;
      max-width: 300px;
      overflow: hidden;
      padding: 0;
      position: relative;
      right: -10%; }
      @media (min-width: 576px) {
        .pillar .hero .hero-image {
          right: -5%; } }
      @media (min-width: 768px) {
        .pillar .hero .hero-image {
          margin-top: -300px;
          max-width: 50%; } }
      @media (min-width: 992px) {
        .pillar .hero .hero-image {
          position: absolute;
          right: 0; } }
      .pillar .hero .hero-image img {
        margin-left: auto;
        margin-right: auto;
        display: block;
        width: 75%; }
        @media (min-width: 576px) {
          .pillar .hero .hero-image img {
            width: 100%; } }
    .pillar .hero .seal {
      background-image: url("/images/pillars/ada-logo-navy-mobile.png");
      height: 200px; }
      @media (min-width: 576px) {
        .pillar .hero .seal {
          background-image: url("/images/pillars/ada-logo-navy.png");
          width: 200px; } }
      .pillar .hero .seal.gh {
        background-image: url("/images/pillars/ada-gh-logos-navy-mobile.png"); }
        @media (min-width: 576px) {
          .pillar .hero .seal.gh {
            background-image: url("/images/pillars/ada-gh-logos-navy.png"); } }
  .pillar.sonic-fusion .hero .hero-image {
    bottom: 0;
    margin-right: -100px; }
  .pillar .tabs {
    position: relative;
    margin-bottom: 1.5rem; }
    @media (min-width: 768px) {
      .pillar .tabs {
        margin-bottom: 0;
        top: -50px;
        z-index: 6; } }
    .pillar .tabs .pillar-tabs {
      justify-content: space-around !important; }
      @media (min-width: 768px) {
        .pillar .tabs .pillar-tabs {
          margin-left: 3rem;
          margin-right: 3rem; } }
      .pillar .tabs .pillar-tabs .ptab {
        background-color: #fff;
        border-radius: 0.25rem !important;
        border-top: solid 7px;
        text-align: center;
        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
        padding-top: 1rem;
        padding-bottom: 1rem;
        margin-left: 0.5rem;
        margin-right: 0.5rem; }
        @media (max-width: 767.98px) {
          .pillar .tabs .pillar-tabs .ptab {
            margin-bottom: 1rem; } }
        .pillar .tabs .pillar-tabs .ptab a:hover {
          text-decoration: none; }
        .pillar .tabs .pillar-tabs .ptab.active, .pillar .tabs .pillar-tabs .ptab:hover {
          background-color: #f2f2f2; }
        .pillar .tabs .pillar-tabs .ptab h3 {
          color: #6c757d;
          font-size: 1rem;
          font-weight: 400; }
  .pillar .how-to-use {
    padding-top: 3rem;
    padding-bottom: 3rem;
    color: #fff;
    background-image: url("/images/splash.png"), radial-gradient(91% 100%, #005cbc 1%, #0c2e6c 100%); }
  .pillar .FAQs {
    padding-top: 3rem;
    padding-bottom: 3rem;
    background: #f2f2f2; }
    .pillar .FAQs h2 {
      font-size: 3.1rem;
      font-weight: 700; }
    .pillar .FAQs .card-header {
      background-color: #0075c9; }
    .pillar .FAQs .btn-link {
      color: white;
      font-size: 1.2rem;
      font-weight: 600;
      line-height: 1.3rem;
      box-shadow: none;
      border: none;
      text-decoration: none; }
      .pillar .FAQs .btn-link:hover, .pillar .FAQs .btn-link:active, .pillar .FAQs .btn-link:focus {
        box-shadow: none;
        border: none;
        text-decoration: none; }
    .pillar .FAQs .accordion .card button:after {
      display: none; }
  .pillar .product-selector {
    padding-bottom: 0;
    background-image: radial-gradient(91% 100%, #005cbc 1%, #0c2e6c 100%);
    color: #fff; }
    .pillar .product-selector .animation {
      margin-bottom: 1rem;
      padding-top: 1.5rem;
      /*background-color: #F9EAE1;*/
      background-image: linear-gradient(180deg, #f9eae1 50%, rgba(71, 4, 13, 0) 50%);
      text-align: center; }
      @media (min-width: 768px) {
        .pillar .product-selector .animation {
          padding-top: 0;
          background-color: #f2f2f2; } }
    .pillar .product-selector video.rounded-circle {
      padding: 1rem;
      max-width: 300px; }
    @media (max-width: 767.98px) {
      .pillar .product-selector {
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0; } }
    @media (min-width: 768px) {
      .pillar .product-selector {
        padding-top: 0;
        padding-bottom: 0; }
        .pillar .product-selector .container {
          padding-right: 0; }
        .pillar .product-selector .animation {
          padding: 3rem;
          margin-bottom: 0; }
        .pillar .product-selector video.rounded-circle {
          padding: 0;
          max-width: 100%; } }
  .pillar .explore {
    padding-top: 3rem;
    /*background-image: url('/images/water-texture.png');*/ }
    .pillar .explore h2 {
      font-size: 3.1rem;
      font-weight: 700; }
    .pillar .explore p {
      font-size: 1.5rem;
      font-weight: 200;
      line-height: 2.5rem; }
    .pillar .explore .card-title {
      font-size: 1.2rem;
      margin-top: 1rem; }
    .pillar .explore .image-swap {
      overflow: hidden;
      height: 0px;
      padding-bottom: 145%;
      margin: 0 3%; }
    .pillar .explore a {
      color: #002f87;
      text-align: center; }
      .pillar .explore a .image-swap img {
        transform: translateY(-50%); }
    .pillar .explore a:hover {
      text-decoration: none; }
      .pillar .explore a:hover .image-swap img {
        transform: translateY(0%); }

/*Prevent and Protect*/
.prevent {
  /*video Testimonials*/ }
  .prevent .hero {
    background: #fff url(/lp/prevent-protect/images/hero-mobile.jpg) no-repeat right;
    background-size: cover;
    color: #fff;
    min-height: 85vh;
    max-height: 710px;
    overflow: hidden; }
    .prevent .hero h1 {
      font-size: 2.125rem;
      font-weight: 900;
      line-height: 34px; }
    .prevent .hero p {
      font-size: 20px;
      line-height: 25px;
      font-weight: bold; }
  @media (min-width: 768px) {
    .prevent .hero {
      background-image: url(/lp/prevent-protect/images/hero.jpg);
      background-position: right;
      min-height: 85vh; } }
  .prevent .bg-gradient-blue {
    color: #fff; }
    .prevent .bg-gradient-blue h2,
    .prevent .bg-gradient-blue p {
      font-size: 1.2rem;
      font-weight: 400; }
    .prevent .bg-gradient-blue h3 {
      font-size: 1.2rem; }
  .prevent .testimonial-video-section {
    text-align: center; }
    .prevent .testimonial-video-section h2 {
      color: #fff;
      font-size: 1.875rem;
      margin-bottom: 1rem; }
    .prevent .testimonial-video-section h3 {
      color: #fff;
      font-size: 20px;
      font-weight: 400;
      line-height: 25px;
      margin-bottom: 20px;
      margin-top: 20px;
      text-align: left; }
    .prevent .testimonial-video-section button {
      width: 100%;
      background-color: transparent;
      color: #fff;
      border: solid 2px #fff;
      padding: 10px 0px;
      border-radius: 20px;
      font-family: "Urbanist", -apple-system, Arial, sans-serif, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
      margin-bottom: 10px;
      -webkit-transition: all ease 0.25s;
      transition: all ease 0.25s;
      cursor: pointer; }
      .prevent .testimonial-video-section button:hover, .prevent .testimonial-video-section button.active {
        background-color: #fff;
        color: #0075c9;
        border: none; }
      .prevent .testimonial-video-section button:focus {
        outline: none; }
    .prevent .testimonial-video-section .video-container {
      position: relative;
      overflow: hidden;
      padding-top: 56.25%; }
      .prevent .testimonial-video-section .video-container iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 0; }
  @media (min-width: 992px) {
    .prevent .testimonial-video-section h3 {
      font-size: 23px;
      line-height: 28px;
      margin-bottom: 20px; }
    .prevent .testimonial-video-section .video-wrap {
      max-width: 900px; } }
  .prevent .more-products p,
  .prevent .more-products span {
    color: #fff;
    font-size: 22px; }
  .prevent .btn-cta {
    text-align: center;
    display: block; }
  @media (min-width: 768px) {
    .prevent .btn-cta {
      display: inline-block;
      min-width: 300px; } }

.rightsolution .product-selector {
  padding-bottom: 0;
  color: #fff; }
  .rightsolution .product-selector .animation1 {
    margin-bottom: 0;
    padding-top: 1.5rem;
    background-color: #F9EAE1;
    background-image: linear-gradient(180deg, #f9eae1 50%, rgba(71, 4, 13, 0) 50%);
    text-align: center; }
    @media (min-width: 768px) {
      .rightsolution .product-selector .animation1 {
        padding-top: 0;
        /*background-color: $ltgrey;*/ } }
  .rightsolution .product-selector video.rounded-circle {
    padding: 1rem;
    max-width: 300px; }
  @media (max-width: 767.98px) {
    .rightsolution .product-selector {
      margin-left: 0;
      margin-right: 0;
      padding-left: 0;
      padding-right: 0; } }
  @media (min-width: 768px) {
    .rightsolution .product-selector {
      padding-right: 0;
      padding-top: 0;
      padding-bottom: 0; }
      .rightsolution .product-selector .container {
        padding-right: 0; }
      .rightsolution .product-selector .animation1 {
        padding: 3rem;
        margin-bottom: 0; }
      .rightsolution .product-selector video.rounded-circle {
        padding: 0;
        max-width: 100%; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JhbEhlYWx0aC5jc3MiLCJzb3VyY2VzIjpbIm9yYWxIZWFsdGguc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9fZ2xvYmFsX2Jvb3RzdHJhcF92YXJpYWJsZV9vdmVycmlkZXMuc2NzcyIsIl9vaF9ib290c3RyYXBfdmFyaWFibGVfb3ZlcnJpZGVzLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvX2dsb2JhbC5zY3NzIiwiLi4vLi4vLi4vZ2xvYmFscy9zY3NzL19ib290c3RyYXAtY29yZS1yZWR1Y2VkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2RlcHJlY2F0ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2l6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3gtc2hhZG93LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZmxvYXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b24tZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY3VzdG9tLWZvcm1zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdXRpbGl0aWVzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hbGlnbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fY2xlYXJmaXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9faW50ZXJhY3Rpb25zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NjcmVlbnJlYWRlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3RleHQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9hYnN0cmFjdHMvX2dsb2JhbF9taXhpbnMuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9hYnN0cmFjdHMvX3BsYWNlSG9sZGVycy5zY3NzIiwiLi4vLi4vLi4vZ2xvYmFscy9zY3NzL2Fic3RyYWN0cy9fa2V5ZnJhbWVzLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvYWJzdHJhY3RzL19mb3JtVmFsaWRhdGlvbi5zY3NzIiwiLi4vLi4vLi4vZ2xvYmFscy9zY3NzL2Fic3RyYWN0cy9fYm9vdHN0cmFwRGF0ZVRpbWVQaWNrZXIuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9iYXNlL19iYWNrZ3JvdW5kcy5zY3NzIiwiLi4vLi4vLi4vZ2xvYmFscy9zY3NzL2Jhc2UvX2J1dHRvbnMuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9iYXNlL19nZW5lcmFsLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0cy9faGVhZGVyLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0cy9fbW9iaWxlTmF2LnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0cy9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXRzL19mb290ZXIuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXRzL19zaWRlTmF2LnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0cy9fZmlsdGVyU29ydC5zY3NzIiwiLi4vLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dHMvX2FydGljbGVEZXRhaWxzLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0cy9fYXJ0aWNsZXMuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXRzL19wcm9kdWN0RGV0YWlscy5zY3NzIiwiLi4vLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dHMvX3Byb2R1Y3RzLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0cy9fZm9ybXMuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpYW5GYXFzLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvY29tcG9uZW50cy9faGVyb3Muc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9jb21wb25lbnRzL19wcm9kdWN0Q2Fyb3VzZWwuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9jb21wb25lbnRzL19yZXZpZXdzVGVzdGltb25pYWxzLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vLi4vLi4vZ2xvYmFscy9zY3NzL2NvbXBvbmVudHMvX3ZpZGVvLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvY29tcG9uZW50cy9fdmlkZW8tdGVzdGltb25pYWxzLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL19tYW51YWxzLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL19wcmljZVNwaWRlci5zY3NzIiwiZ2xvYmFscy9fZ2xvYmFscy5zY3NzIiwiZ2xvYmFscy9fY29sb3JzLnNjc3MiLCJnbG9iYWxzL19iYWNrZ3JvdW5kcy5zY3NzIiwiZ2xvYmFscy9fYnV0dG9uLnNjc3MiLCJnbG9iYWxzL19maWx0ZXJOYXYuc2NzcyIsImNvbXBvbmVudHMvX2hlcm8uc2NzcyIsImNvbXBvbmVudHMvX3Byb2R1Y3QtY2FsbG91dC5zY3NzIiwiY29tcG9uZW50cy9fY2FyZC1saXN0LnNjc3MiLCJjb21wb25lbnRzL19zdGF0Y2FyZHMuc2NzcyIsImNvbXBvbmVudHMvX2NhbGxvdXQtYm94LWxhcmdlLnNjc3MiLCJwYWdlcy9fcHJvZHVjdHMuc2NzcyIsInBhZ2VzL19zdHlsZWd1aWRlLnNjc3MiLCJwYWdlcy9fcHJvZHVjdC1kZXRhaWwuc2NzcyIsInBhZ2VzL19ibG9nLWRldGFpbC5zY3NzIiwicGFnZXMvX2Jsb2ctYXJ0aWNsZS5zY3NzIiwicGFnZXMvX3Byb2Zlc3Npb25hbC5zY3NzIiwicGFnZXMvX2hvbWUuc2NzcyIsInBhZ2VzL19waWxsYXIuc2NzcyIsInBhZ2VzL19wcmV2ZW50LXByb3RlY3Quc2NzcyIsInBhZ2VzL19yaWdodHNvbHV0aW9uLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy9PcmFsIEhlYWx0aCBTQVNTIGNvbXBpbGVyXG4vLyBUaGlzIGRvY3VtZW50IGN1c3RvbWl6ZXMgdGhlIHdhdGVycGlrIGdsb2JhbCBzdHlsZXMgd2l0aCBPcmFsIEhlYWx0aCBzcGVjaWZpYyBjb2xvcnMsIGZvbnRzLCBhbmQgLi4uLlxuLy8gZ2xvYmFsX2Jvb3RzdHJhcF92YXJpYWJsZS1vdmVycmlkZXMgaXMgbG9hZCBmaXJzdCB0byBzZXQgdW5pdmVyc2FsIEJTIHZhcmlhYmxlcyBmb3IgdGhlIFdhdGVycGlrIENvcnBvcmF0ZSBCcmFuZFxuLy8gb2hfYm9vdHN0cmFwX3ZhcmlhYmxlLW92ZXJyaWRlcyBpcyB0aGVuIGxvYWRlZCB0byBvdmVycmlkZSBzcGVjaWZpYyBXYXRlcnBpayBDb3Jwb3JhdGUgQnJhbmQgdmFyaWFibGVzIGFuZCB0byBzZXQgU2hvd2VyaGVhZCBHbG9iYWwgdmFyaWFibGVzXG4vLyBnbG9iYWwgaXMgdGhlbiBsb2FkZWQgdG8gZ2VuZXJhdGUgYSBiYXNlIEJvb3RzdHJhcCBpbnN0YWxsIHVzaW5nIHRoZSBuZXdseSBkZWZpbmVkIHZhcmlhYmxlcyBmcm9tIHRoZSBwcmV2aW91cyBwcm9jZXNzZXMgYXMgd2VsbCBhcyBjcmVhdGluZyBtaXhpbnMgYW5kIGFkZGl0aW9uYWwgZ2xvYmFsIHN0eWxlc1xuLy8gbGFzdGx5IE9yYWwgSGVhbHRoIHNwZWNpZmljIHN0eWxlcyBhcmUgY3JlYXRlZFxuXG4vLyBTdGVwIDEuIExvYWQgR2xvYmFsIFdhdGVycGlrIFZhcmlhYmxlIE92ZXJyaWRlc1xuQGltcG9ydCcuLi8uLi8uLi9nbG9iYWxzL3Njc3MvZ2xvYmFsX2Jvb3RzdHJhcF92YXJpYWJsZV9vdmVycmlkZXMnO1xuXG4vLyBTdGVwIDIuIExvYWQgb3JhbCBoZWFsdGggVmFyaWFibGUgT3ZlcnJpZGVzXG5AaW1wb3J0ICdvaF9ib290c3RyYXBfdmFyaWFibGVfb3ZlcnJpZGVzJztcblxuLy8gU3RlcCAzLiAgTG9hZCBCb290c3RyYXAgQ29yZSBTQVNTIGFuZCBXYXRlcnBpayBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0Jy4uLy4uLy4uL2dsb2JhbHMvc2Nzcy9nbG9iYWwnO1xuXG4vLyBTdGVwIDQuIE9yYWwgSGVhbHRoIFdlYnNpdGUgc3BlY2lmaWMgc3R5bGVzXG4vLyBHbG9iYWwgb3ZlcnJpZGVzXG5AaW1wb3J0ICdnbG9iYWxzL2dsb2JhbHMnO1xuQGltcG9ydCAnZ2xvYmFscy9jb2xvcnMnO1xuQGltcG9ydCAnZ2xvYmFscy9iYWNrZ3JvdW5kcyc7XG5AaW1wb3J0ICdnbG9iYWxzL2J1dHRvbic7XG5AaW1wb3J0ICdnbG9iYWxzL2ZpbHRlck5hdic7XG5cbi8vIENvbXBvbmVudHMgb3ZlcnJpZGVzXG5AaW1wb3J0ICdjb21wb25lbnRzL2hlcm8nOyAgLy9hZGRzIHNwbGFzaCBncmFwaGljIHRvIGhlcm8gc2VjdGlvblxuQGltcG9ydCAnY29tcG9uZW50cy9wcm9kdWN0LWNhbGxvdXQnOyAvL3BpbGxhciBpbWFnZXMgb24gb2MvaG9tZVxuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkLWxpc3QnOyAvL1NldHMgZ2xvYmFsIHN0eWxlIGZvciBDYXJkIExpc3RzXG5AaW1wb3J0ICdjb21wb25lbnRzL3N0YXRjYXJkcyc7IC8vYWRkcyBvcmFuZ2UgYm90dG9tIGJvcmRlciBvbiBzdGF0cyBzZWN0aW9uIHdoeS13YXRlcnBpa1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0LWJveC1sYXJnZSc7XG4vLyBAaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuLy8gQGltcG9ydCAnY29tcG9uZW50cy9ibG9nY2FyZCc7XG5cbi8vIFBhZ2UgbGV2ZWwgc3R5bGVzXG5AaW1wb3J0ICdwYWdlcy9wcm9kdWN0cyc7XG5AaW1wb3J0ICdwYWdlcy9zdHlsZWd1aWRlJztcbkBpbXBvcnQgJ3BhZ2VzL3Byb2R1Y3QtZGV0YWlsJztcbkBpbXBvcnQgJ3BhZ2VzL2Jsb2ctZGV0YWlsJztcbkBpbXBvcnQgJ3BhZ2VzL2Jsb2ctYXJ0aWNsZSc7XG5AaW1wb3J0ICdwYWdlcy9wcm9mZXNzaW9uYWwnO1xuQGltcG9ydCAncGFnZXMvaG9tZSc7XG5AaW1wb3J0ICdwYWdlcy9waWxsYXInO1xuQGltcG9ydCAncGFnZXMvcHJldmVudC1wcm90ZWN0JztcbkBpbXBvcnQgJ3BhZ2VzL3JpZ2h0c29sdXRpb24nO1xuIiwiLy8gZ2xvYmFscy9zY3NzL19nbG9iYWxfYm9vdHN0cmFwX3ZhcmlhYmxlX292ZXJyaWRlcy5zY3NzXG5cbiRlbmFibGUtZ3JhZGllbnRzOiBmYWxzZTtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlO1xuXG4vLyBmcmVxdWVudGx5IHVzZWQgcGF0aHNcbiRnbG9iYWxQYXRoOiAnLi4vZ2xvYmFscy9pbWFnZXMnICFkZWZhdWx0O1xuJGNvdW50cnlQYXRoOiAnL2ltYWdlcycgIWRlZmF1bHQ7XG4kZm9udEF3ZXNvbWU6ICdGb250IEF3ZXNvbWUgNSBQcm8nO1xuXG4vLyBDb3Jwb3JhdGUgY29sb3JcbiR3cDogIzAwMmY4NztcblxuLy8gR3JleXNcbiR3aGl0ZTogI2ZmZjtcbiRsaWdodDogI2Y4ZjlmYTtcbiRsdGdyZXk6ICNmMmYyZjI7XG4kZ3JleTogI2NlZDRkYTtcbiRka2dyZXk6ICM2Yzc1N2Q7XG4kZGFyazogIzM0M2E0MDtcbiRibGFjazogIzAwMDtcblxuLy8gSGVscGVyIGNvbG9yc1xuJGxpbmstY29sb3I6ICMwMDc1Yzk7XG4kYWN0aXZlOiAkbGluay1jb2xvcjtcbiRhY2NlbnQtYmx1ZTogJGxpbmstY29sb3I7XG5cbiRnbG9iYWwtY29sb3JzOiAoXG4gICd3cCc6ICR3cCxcbiAgJ3doaXRlJzogJHdoaXRlLFxuICAnYmxhY2snOiAkYmxhY2ssXG4gICdsaWdodCc6ICRsaWdodCxcbiAgJ2x0Z3JleSc6ICRsdGdyZXksXG4gICdncmV5JzogJGdyZXksXG4gICdka2dyZXknOiAkZGtncmV5LFxuICAnZGFyayc6ICRkYXJrLFxuICAnYWNjZW50LWJsdWUnOiAkYWNjZW50LWJsdWUsXG4pO1xuXG4vLyBGb250IHN0eWxpbmdcblxuJGZvbnQtc2l6ZS1iYXNlOiAxcmVtICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAyLjM7XG4kaDItZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAxLjg7XG4kaDMtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAxLjU7XG4kaDQtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAxLjM7XG4kaDUtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAxLjE7XG5cbiRicmVhZGNydW1iLWJnOiB0cmFuc3BhcmVudDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICRkYXJrO1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAkZGtncmV5O1xuIiwiLy8gb3ZlcnJpZGUgdmFyaWFibGVzIGZvciBPcmFsIEhlYWx0aCBidXNpbmVzcyB1bml0XHJcblxyXG4vLyBmcmVxdWVudGx5IHVzZWQgcGF0aHNcclxuJGltYWdlUGF0aDogJy9vcmFsLWhlYWx0aC9pbWFnZXMnO1xyXG4kdGl0bGVGb250OiAnVXJiYW5pc3QnO1xyXG5cclxuLy8gT0MgYnJhbmQgY29sb3JzXHJcbi8vICR3cDogIzAwMmY4NztcclxuJGx0Ymx1ZTogIzAwNzVjOTtcclxuJGJsdWU6ICR3cDtcclxuJGRrYmx1ZTogIzBmMmU0ZjtcclxuJHB1cnBsZTogI2EzMjM4ZTtcclxuJGdyZWVuOiAjNzBkNDRiO1xyXG4kb3JhbmdlOiAjZTY1NTI2O1xyXG4kbHRvcmFuZ2U6ICNlZmFmMDA7XHJcbiR5ZWxsb3c6ICNlZmFmMDA7XHJcblxyXG4vLyBDVEEgQnV0dG9uIGNvbG9yc1xyXG4vLyRjdGEtbHRvcmFuZ2U6ICR5ZWxsb3c7XHJcbiRjdGE6ICNjZDczMDA7XHJcblxyXG4vLyBwaWxsYXIgY29sb3JzXHJcbiR3YXRlci1mbG9zc2VyczogJGx0Ymx1ZTtcclxuJHdoaXRlbmluZzogJHB1cnBsZTtcclxuJGNvbXBsZXRlLWNhcmU6ICRncmVlbjtcclxuJHNvbmljLWZ1c2lvbjogJG9yYW5nZTtcclxuXHJcbi8vIHByb2R1Y3Qgc3dhdGNoZXNcclxuJHBibHVlOiAjMzg1MjgyO1xyXG4kcGdyYXk6ICM4MjhjOTY7XHJcbiRwb3JjaGlkOiAjNmEyNDVlO1xyXG4kcHBpbms6IHJnYmEoMjQzLCAxMzMsIDE0NiwgMSk7XHJcbiRwdGVhbDogcmdiYSgxMjEsIDE5NywgMTkxLCAxKTtcclxuJHB3aGl0ZTogI2VlZTtcclxuJHBtaW50Z3JlZW46ICNiZGNmYmY7XHJcbiRwYnVyZ3VuZHk6ICNiMDQ0NWU7XHJcbiRwY29wcGVyOiAjZGVjNmFhO1xyXG4kcGNocm9tZTogI2U1ZTVlNTtcclxuJHByb3NlOiAjOTM1ODY3O1xyXG4kcGdvbGQ6ICM5MzU4Njc7XHJcbiRwYmx1c2hwaW5rOiAjZjdkYmUwO1xyXG4kcGZyZXNoZ3JlZW46ICM3ODg2NzI7XHJcblxyXG4kdGFiczogJGRrYmx1ZTtcclxuJGZvb3Rlci1ibHVlOiAkZGtibHVlO1xyXG5cclxuLy8gQ29sb3IgTWFwc1xyXG4kY3VzdG9tLWNvbG9yczogKFxyXG4gIC8vQnJhbmRpbmdcclxuICAnbHRibHVlJzogJGx0Ymx1ZSxcclxuICAnYmx1ZSc6ICRibHVlLFxyXG4gICdka2JsdWUnOiAkZGtibHVlLFxyXG4gICdwdXJwbGUnOiAkcHVycGxlLFxyXG4gICdncmVlbic6ICRncmVlbixcclxuICAnb3JhbmdlJzogJG9yYW5nZSxcclxuICAnbHRvcmFuZ2UnOiAkbHRvcmFuZ2UsXHJcbiAgJ3llbGxvdyc6ICR5ZWxsb3csXHJcbiAgLy8gQ1RBIEJ1dHRvbiBjb2xvcnNcclxuICAvL1wiY3RhLWx0b3JhbmdlXCI6ICRjdGEtbHRvcmFuZ2UsXHJcbiAgJ2N0YSc6ICRjdGEsXHJcbiAgLy8gcGlsbGFyIGNvbG9yc1xyXG4gICd3YXRlci1mbG9zc2VyJzogJHdhdGVyLWZsb3NzZXJzLFxyXG4gICd3aGl0ZW5pbmcnOiAkd2hpdGVuaW5nLFxyXG4gICdjb21wbGV0ZS1jYXJlJzogJGNvbXBsZXRlLWNhcmUsXHJcbiAgJ3NvbmljLWZ1c2lvbic6ICRzb25pYy1mdXNpb25cclxuKTtcclxuXHJcbi8vIE1lcmdlIGN1c3RvbSBjb2xvcnMgYW5kIGdsb2JhbCBjb2xvcnMgd2l0aCB0aGVtZSBjb2xvcnNcclxuLy8gdG8gZ2VuZXJhdGUgY29tcG9uZW50cyBhbmQgc3R5bGVzIHVzaW5nIHRoZXNlIGNvbG9yc1xyXG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoJGdsb2JhbC1jb2xvcnMsICRjdXN0b20tY29sb3JzKTtcclxuXHJcbi8vIEdsb2JhbCBTdHlsaW5nIGNoYW5nZXNcclxuXHJcbi8vRm9udHNcclxuXHJcbioge1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbn1cclxuXHJcbi8vIFVyYmFuaXN0IFcwMSBCb2xkIEl0YWxpY1xyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogVXJiYW5pc3Q7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgc3JjOiB1cmwoJy9mb250cy9VcmJhbmlzdC1Cb2xkSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgdXJsKCcvZm9udHMvVXJiYW5pc3QtQm9sZEl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbn1cclxuXHJcbi8vIFVyYmFuaXN0IFcwMSBCb2xkXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiBVcmJhbmlzdDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL1VyYmFuaXN0LUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICB1cmwoJy9mb250cy9VcmJhbmlzdC1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxufVxyXG5cclxuLy8gVXJiYW5pc3QgVzAxIE1lZGl1bSBJdGFsaWNcclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6IFVyYmFuaXN0O1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICBmb250LXdlaWdodDogMzAwO1xyXG4gIHNyYzogdXJsKCcvZm9udHMvVXJiYW5pc3QtTWVkaXVtSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgdXJsKCcvZm9udHMvVXJiYW5pc3QtTWVkaXVtSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxufVxyXG5cclxuLy8gVXJiYW5pc3QgVzAxIE1lZGl1bVxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogVXJiYW5pc3Q7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgc3JjOiB1cmwoJy9mb250cy9VcmJhbmlzdC1NZWRpdW0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICB1cmwoJy9mb250cy9VcmJhbmlzdC1NZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG59XHJcblxyXG4vLyBVcmJhbmlzdCBXMDEgSXRhbGljXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiBVcmJhbmlzdDtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL1VyYmFuaXN0LUl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgIHVybCgnL2ZvbnRzL1VyYmFuaXN0LUl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbn1cclxuXHJcbi8vIFVyYmFuaXN0IFcwMSBSZWd1bGFyXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiBVcmJhbmlzdDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL1VyYmFuaXN0LVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICB1cmwoJy9mb250cy9VcmJhbmlzdC1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxufVxyXG5cclxuLy8gVXJiYW5pc3QgVzAxIExpZ2h0IEl0YWxpY1xyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogVXJiYW5pc3Q7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgc3JjOiB1cmwoJy9mb250cy9VcmJhbmlzdC1MaWdodEl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgIHVybCgnL2ZvbnRzL1VyYmFuaXN0LUxpZ2h0SXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxufVxyXG5cclxuLy8gVXJiYW5pc3QgVzAxIExpZ2h0XHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiBVcmJhbmlzdDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL1VyYmFuaXN0LUxpZ2h0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgdXJsKCcvZm9udHMvVXJiYW5pc3QtTGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG59XHJcblxyXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogLWFwcGxlLXN5c3RlbSwgQXJpYWwsIHNhbnMtc2VyaWYsIEJsaW5rTWFjU3lzdGVtRm9udCxcclxuICAnU2Vnb2UgVUknLCBSb2JvdG8sICdIZWx2ZXRpY2EgTmV1ZScsICdOb3RvIFNhbnMnLCAnTGliZXJhdGlvbiBTYW5zJyxcclxuICAnQXBwbGUgQ29sb3IgRW1vamknLCAnU2Vnb2UgVUkgRW1vamknLCAnU2Vnb2UgVUkgU3ltYm9sJywgJ05vdG8gQ29sb3IgRW1vamknO1xyXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICdVcmJhbmlzdCcsICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XHJcbiRmb250LWZhbWlseS1iYXNlOiAkaGVhZGluZ3MtZm9udC1mYW1pbHksICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG4iLCIvLyBnbG9iYWxzL3Njc3MvX2dsb2JhbC5zY3NzXHJcblxyXG4vLyBXYXRlcnBpayBJbmMuIEdsb2JhbCBTdHlsZXMgdG8gYmUgYSBiYXNlIHN0eWxlIGZvciBhbGwgc2l0ZXMgYW5kIGJ1c2luZXNzIHVuaXRzXHJcbi8vIFRoaXMgZmlsZSBpcyBub3QgdG8gYmUgdXNlZCBvbiBpdHMgb3duLCBidXQgY2FsbGVkIGJ5IG90aGVyIGJ1c2luZXNzIHVuaXQgc3R5bGVzIHRvIGxvYWQgdGhlIEJvb3RzdHJhcCBTQVNTIGZyYW1ld29yayBhbmQgc2V0IGdsb2JhbCBXYXRlcnBpayBicmFuZCB2YXJpYWJsZXMgYW5kIHN0eWxlc1xyXG4vLyBOT1RFOiBEdWUgdG8gaW5oZXJlbmN5IG9mIHZhcmlhYmxlcyBfZ2xvYmFsX2Jvb3RzdHJhcF92YXJpYWJsZV9vdmVycmlkZS5zY3NzIG11c3QgYmUgbG9hZGVkIGZpcnN0LiBUaGVuIHRoZSBidXNpbmVzcyB1bml0cyBib290c3RyYXBfdmFyaWFibGVfb3ZlcnJpZGUuIEFuZCB0aGVuIHRoaXMgZmlsZS5cclxuXHJcbi8vIEJvb3RzdHJhcCBDb3JlIFNBU1MgZmlsZXMgZm91bmQgaW4gbm9kZV9tb2R1bGVzXHJcbiBAaW1wb3J0IFwiX2Jvb3RzdHJhcC1jb3JlLXJlZHVjZWRcIjtcclxuLy8gVGhlIGFib3ZlIF8gYm9vdHN0cmFwLWNvcmUtcmVkdWNlZCBzYXNzIGZpbGUgaXMgYSByZWR1Y2VkIHNldCBvZiB0aGUgQlM0IHN0YW5kYXJkIGltcGxlbWVudGF0aW9uLiAgVW51c2VkIHBvcnRpb25zIGhhdmUgYmVlbiBjb21tZW50ZWQgb3V0IGZvciByZWZlcmVuY2UgYW5kIHRoZSBvcmlnaW5hbCBmaWxlIGNhbiBiZSBmb3VuZCAgaW4gdGhlICBub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwLnNjc3MuXHJcblxyXG4vLyBXYXRlcnBpay5jb20gR2xvYmFsIFN0eWxlc1xyXG4vLyBBYnN0cmFjdHNcclxuQGltcG9ydCBcImFic3RyYWN0cy9fZ2xvYmFsX21peGluc1wiO1xyXG5AaW1wb3J0IFwiYWJzdHJhY3RzL19wbGFjZUhvbGRlcnNcIjtcclxuQGltcG9ydCBcImFic3RyYWN0cy9fa2V5ZnJhbWVzXCI7XHJcbkBpbXBvcnQgXCJhYnN0cmFjdHMvX2Zvcm1WYWxpZGF0aW9uXCI7XHJcbkBpbXBvcnQgXCJhYnN0cmFjdHMvX2Jvb3RzdHJhcERhdGVUaW1lUGlja2VyXCI7XHJcblxyXG4vLyBCYXNlIEVsZW1lbnRzXHJcbkBpbXBvcnQgXCJiYXNlL19iYWNrZ3JvdW5kc1wiO1xyXG5AaW1wb3J0IFwiYmFzZS9fYnV0dG9uc1wiO1xyXG5AaW1wb3J0IFwiYmFzZS9fZ2VuZXJhbFwiO1xyXG5cclxuLy8gTGF5b3V0c1xyXG5AaW1wb3J0IFwibGF5b3V0cy9faGVhZGVyXCI7XHJcbkBpbXBvcnQgXCJsYXlvdXRzL19icmVhZGNydW1ic1wiO1xyXG5AaW1wb3J0IFwibGF5b3V0cy9fZm9vdGVyXCI7XHJcbkBpbXBvcnQgXCJsYXlvdXRzL19zaWRlTmF2XCI7XHJcbkBpbXBvcnQgXCJsYXlvdXRzL19maWx0ZXJTb3J0XCI7XHJcbkBpbXBvcnQgXCJsYXlvdXRzL19hcnRpY2xlRGV0YWlsc1wiO1xyXG5AaW1wb3J0IFwibGF5b3V0cy9fYXJ0aWNsZXNcIjtcclxuQGltcG9ydCBcImxheW91dHMvX3Byb2R1Y3REZXRhaWxzXCI7XHJcbkBpbXBvcnQgXCJsYXlvdXRzL19wcm9kdWN0c1wiO1xyXG5AaW1wb3J0IFwibGF5b3V0cy9fZm9ybXNcIjtcclxuXHJcbi8vIENvbXBvbmVudHMgYW5kIE1vZHVsZXNcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX2FjY29yZGlhbkZhcXNcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX2hlcm9zXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19wcm9kdWN0Q2Fyb3VzZWxcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX3Jldmlld3NUZXN0aW1vbmlhbHNcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX3RhYnNcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX3ZpZGVvXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL192aWRlby10ZXN0aW1vbmlhbHNcIjtcclxuXHJcbi8vIFZlbmRvciAzcmQgUGFydHkgU3R5bGVzXHJcbkBpbXBvcnQgXCJ2ZW5kb3IvX21hbnVhbHNcIjtcclxuQGltcG9ydCBcInZlbmRvci9fcHJpY2VTcGlkZXJcIjtcclxuIiwiXG5AaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3Jvb3RcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvcmVib290XCI7XG5AaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3R5cGVcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaW1hZ2VzXCI7XG4vLyBAaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2NvZGVcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZ3JpZFwiO1xuQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy90YWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXNcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYnV0dG9uc1wiO1xuQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy90cmFuc2l0aW9uc1wiO1xuQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9kcm9wZG93blwiO1xuQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9idXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL25hdlwiO1xuQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9uYXZiYXJcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY2FyZFwiO1xuQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9icmVhZGNydW1iXCI7XG4vLyBAaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3BhZ2luYXRpb25cIjtcbi8vIEBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYmFkZ2VcIjtcbi8vIEBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvanVtYm90cm9uXCI7XG4vLyBAaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2FsZXJ0XCI7XG4vLyBAaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3Byb2dyZXNzXCI7XG5AaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21lZGlhXCI7XG5AaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY2xvc2VcIjtcbi8vIEBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdG9hc3RzXCI7XG5AaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21vZGFsXCI7XG4vLyBAaW1wb3J0IFwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3Rvb2x0aXBcIjtcbi8vIEBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvcG9wb3ZlclwiO1xuQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9jYXJvdXNlbFwiO1xuLy8gQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9zcGlubmVyc1wiO1xuQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvcHJpbnRcIjtcbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdWF0aW5nIHNvdXJjZSBjb2RlIGFjcm9zcyBvdXIgdmFyaWFibGVzLCBtYXBzLCBhbmQgbWl4aW5zLlxuXG4vLyBBc2NlbmRpbmdcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCBvciB1bml0KCRudW0pID09IFwiJVwiIG9yIHVuaXQoJHByZXYtbnVtKSA9PSBcIiVcIiB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBTdGFydHMgYXQgemVyb1xuLy8gVXNlZCB0byBlbnN1cmUgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwLCAkbWFwLW5hbWU6IFwiJGdyaWQtYnJlYWtwb2ludHNcIikge1xuICBAaWYgbGVuZ3RoKCRtYXApID4gMCB7XG4gICAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgICAkZmlyc3QtdmFsdWU6IG50aCgkdmFsdWVzLCAxKTtcbiAgICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluICN7JG1hcC1uYW1lfSBtdXN0IHN0YXJ0IGF0IDAsIGJ1dCBzdGFydHMgYXQgI3skZmlyc3QtdmFsdWV9LlwiO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gU2VlIGh0dHBzOi8vY29kZXBlbi5pby9rZXZpbndlYmVyL3Blbi9kWFdvUndcbi8vXG4vLyBSZXF1aXJlcyB0aGUgdXNlIG9mIHF1b3RlcyBhcm91bmQgZGF0YSBVUklzLlxuXG5AZnVuY3Rpb24gZXNjYXBlLXN2Zygkc3RyaW5nKSB7XG4gIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJkYXRhOmltYWdlL3N2Zyt4bWxcIikge1xuICAgIEBlYWNoICRjaGFyLCAkZW5jb2RlZCBpbiAkZXNjYXBlZC1jaGFyYWN0ZXJzIHtcbiAgICAgIC8vIERvIG5vdCBlc2NhcGUgdGhlIHVybCBicmFja2V0c1xuICAgICAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcInVybChcIikgPT0gMSB7XG4gICAgICAgICRzdHJpbmc6IHVybChcIiN7c3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsIDYsIC0zKSwgJGNoYXIsICRlbmNvZGVkKX1cIik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHN0cmluZzogc3RyLXJlcGxhY2UoJHN0cmluZywgJGNoYXIsICRlbmNvZGVkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG5AZnVuY3Rpb24gY29sb3IteWlxKCRjb2xvciwgJGRhcms6ICR5aXEtdGV4dC1kYXJrLCAkbGlnaHQ6ICR5aXEtdGV4dC1saWdodCkge1xuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gICR5aXE6ICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpICogLjAwMTtcblxuICBAaWYgKCR5aXEgPj0gJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZCkge1xuICAgIEByZXR1cm4gJGRhcms7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJGxpZ2h0O1xuICB9XG59XG5cbi8vIFJldHJpZXZlIGNvbG9yIFNhc3MgbWFwc1xuQGZ1bmN0aW9uIGNvbG9yKCRrZXk6IFwiYmx1ZVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yKCRrZXk6IFwicHJpbWFyeVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIGdyYXkoJGtleTogXCIxMDBcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGdyYXlzLCAka2V5KTtcbn1cblxuLy8gUmVxdWVzdCBhIHRoZW1lIGNvbG9yIGxldmVsXG5AZnVuY3Rpb24gdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLW5hbWU6IFwicHJpbWFyeVwiLCAkbGV2ZWw6IDApIHtcbiAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XG4gICRjb2xvci1iYXNlOiBpZigkbGV2ZWwgPiAwLCAkYmxhY2ssICR3aGl0ZSk7XG4gICRsZXZlbDogYWJzKCRsZXZlbCk7XG5cbiAgQHJldHVybiBtaXgoJGNvbG9yLWJhc2UsICRjb2xvciwgJGxldmVsICogJHRoZW1lLWNvbG9yLWludGVydmFsKTtcbn1cblxuLy8gUmV0dXJuIHZhbGlkIGNhbGNcbkBmdW5jdGlvbiBhZGQoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XG4gIEBpZiAkdmFsdWUxID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xuICAgIEByZXR1cm4gJHZhbHVlMSArICR2YWx1ZTI7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gKyAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgKyBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIHN1YnRyYWN0KCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIGFuZCAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIEBpZiAkdmFsdWUxID09IG51bGwge1xuICAgIEByZXR1cm4gLSR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgLSAkdmFsdWUyO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMikgIT0gbnVtYmVyIHtcbiAgICAkdmFsdWUyOiB1bnF1b3RlKFwiKFwiKSArICR2YWx1ZTIgKyB1bnF1b3RlKFwiKVwiKTtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xufVxuXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICAkcmVzdWx0OiAwO1xuICAkZmFjdG9yOiAxMDtcbiAgQHdoaWxlICgkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+PSAwKSB7XG4gICAgJHF1b3RpZW50OiAwO1xuICAgIEB3aGlsZSAoJHJlbWFpbmRlciA+PSAkZGl2aXNvcikge1xuICAgICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICAgICAgJHF1b3RpZW50OiAkcXVvdGllbnQgKyAxO1xuICAgIH1cbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyAkcXVvdGllbnQ7XG4gICAgJGZhY3RvcjogJGZhY3RvciAqIC4xO1xuICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgKiAxMDtcbiAgICAkcHJlY2lzaW9uOiAkcHJlY2lzaW9uIC0gMTtcbiAgICBAaWYgKCRwcmVjaXNpb24gPCAwIGFuZCAkcmVtYWluZGVyID49ICRkaXZpc29yICogNSkge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIDE7XG4gICAgfVxuICB9XG4gICRyZXN1bHQ6ICRyZXN1bHQgKiAkZmFjdG9yICogJHNpZ247XG4gICRkaXZpZGVuZC11bml0OiB1bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IHVuaXQoJGRpdmlzb3IpO1xuICAkdW5pdC1tYXA6IChcbiAgICBcInB4XCI6IDFweCxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwiZW1cIjogMWVtLFxuICAgIFwiJVwiOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApLFxuICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4kc3BhY2VyczogbWFwLW1lcmdlKFxuICAoXG4gICAgMDogMCxcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXG4gICAgMzogJHNwYWNlcixcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogKCRzcGFjZXIgKiAzKVxuICApLFxuICAkc3BhY2Vyc1xuKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6IDI1JSxcbiAgICA1MDogNTAlLFxuICAgIDc1OiA3NSUsXG4gICAgMTAwOiAxMDAlLFxuICAgIGF1dG86IGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcbiRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2U6IDE1JSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kcm91bmRlZC1waWxsOiAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGg6ICAgd2lkdGggLjM1cyBlYXNlICFkZWZhdWx0O1xuXG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiAoKSAhZGVmYXVsdDtcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAgICAgIDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAgICAgIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAuODc1ZW0gIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplOiAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICBsaWdodGVuKCR0YWJsZS1kYXJrLWJnLCA3LjUlKSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLWxldmVsOiAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWxldmVsOiAgICAgICAgICAtNiAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRsYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAqIC41KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1zbSAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14OiAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I6ICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I6ICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnPjxwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAuNSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSc+PHBhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgZXNjYXBlLXN2ZygkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3IpIHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplIG5vLXJlcGVhdCAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgIGNlbnRlciByaWdodCAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBJRS9FZGdlXG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9JzAgMCAxMiAxMic+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuXG5cbi8vIE5hdmJhclxuXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAqIC41ICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1zY3JvbGwtbWF4LWhlaWdodDogICAgICA3NXZoICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vLyBTcGlubmVyc1xuXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItdmVydGljYWwtYWxpZ246ICAtLjEyNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gVXRpbGl0aWVzXG5cbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5ICFkZWZhdWx0O1xuJHVzZXItc2VsZWN0czogYWxsLCBhdXRvLCBub25lICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG5cbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuLy8gVmVuZG9yXG5AaW1wb3J0IFwidmVuZG9yL3Jmc1wiO1xuXG4vLyBEZXByZWNhdGVcbkBpbXBvcnQgXCJtaXhpbnMvZGVwcmVjYXRlXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9icmVha3BvaW50c1wiO1xuQGltcG9ydCBcIm1peGlucy9ob3ZlclwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9iYWRnZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2NyZWVuLXJlYWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWhpZGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC10cnVuY2F0ZVwiO1xuQGltcG9ydCBcIm1peGlucy92aXNpYmlsaXR5XCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9jYXJldFwiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3RzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZmxvYXRcIjtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIGZvbnQgc2l6ZXNcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL3Y4LngvTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtZm9udC1zaXplLXVuaXQgIT0gcmVtIGFuZCAkcmZzLWZvbnQtc2l6ZS11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mb250LXNpemUtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtZm9udC1zaXplLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xufVxuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIGZvbnQtc2l6ZSBzdGFydHMgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgZm9udCBzaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUsICRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJyZW1cIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6IGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplLCBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZGlzYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1kaXNhYmxlLWNsYXNzIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXG4gICAgJixcbiAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udCBzaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xuICAgIEBpZiAkZnMtdW5pdCA9PSBcInB4XCIge1xuICAgICAgJGZzOiBkaXZpZGUoJGZzLCAkZnMgKiAwICsgMSk7XG4gICAgfVxuICAgIEBlbHNlIGlmICRmcy11bml0ID09IFwicmVtXCIge1xuICAgICAgJGZzOiBkaXZpZGUoJGZzLCBkaXZpZGUoJGZzICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGRlZmF1bHQgZm9udCBzaXplXG4gICAgJHJmcy1zdGF0aWM6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkZnMsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JGZzfXB4KTtcblxuICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgZm9udCBzaXplIGlzIGJpZ2dlciB0aGFuIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZVxuICAgIEBpZiAkZnMgPD0gJHJmcy1iYXNlLWZvbnQtc2l6ZSBvciBub3QgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgZm9udC1zaXplOiAjeyRyZnMtc3RhdGljfSN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gZm9udCBzaXplIGZvciAkZnNcbiAgICAgICRmcy1taW46ICRyZnMtYmFzZS1mb250LXNpemUgKyBkaXZpZGUoJGZzIC0gJHJmcy1iYXNlLWZvbnQtc2l6ZSwgJHJmcy1mYWN0b3IpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICRmcyBhbmQgdGhlIG1pbmltdW0gZm9udCBzaXplXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcblxuICAgICAgLy8gQmFzZSBmb250LXNpemUgZm9ybWF0dGluZ1xuICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCRmcy1taW4sICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JGZzLW1pbn1weCk7XG5cbiAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcbiAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAkdmFyaWFibGUtd2lkdGg6ICN7ZGl2aWRlKCRmcy1kaWZmICogMTAwLCAkcmZzLWJyZWFrcG9pbnQpfSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplXG4gICAgICAkcmZzLWZsdWlkOiBjYWxjKCN7JG1pbi13aWR0aH0gKyAjeyR2YXJpYWJsZS13aWR0aH0pICN7JHJmcy1zdWZmaXh9O1xuXG4gICAgICAvLyBCcmVha3BvaW50IGZvcm1hdHRpbmdcbiAgICAgICRtcS12YWx1ZTogaWYoJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgsICN7JHJmcy1icmVha3BvaW50fXB4LCAje2RpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtcmVtLXZhbHVlKX0jeyRyZnMtYnJlYWtwb2ludC11bml0fSk7XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtZGlzYWJsZS1jbGFzcyB7XG4gICAgICAgIGZvbnQtc2l6ZTogI3skcmZzLXN0YXRpY30jeyRyZnMtc3VmZml4fTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSgkbXEtdmFsdWUpIHtcbiAgICAgICAgQGluY2x1ZGUgX3Jmcy1lbmFibGUtY2xhc3Mge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIGZvbnQtc2l6ZSAmIHJlc3BvbnNpdmUtZm9udC1zaXplIG1peGlucyB1c2UgUkZTIHRvIHJlc2NhbGUgdGhlIGZvbnQgc2l6ZVxuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cbiIsIi8vIERlcHJlY2F0ZSBtaXhpblxuLy9cbi8vIFRoaXMgbWl4aW4gY2FuIGJlIHVzZWQgdG8gZGVwcmVjYXRlIG1peGlucyBvciBmdW5jdGlvbnMuXG4vLyBgJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlc2AgaXMgYSBnbG9iYWwgdmFyaWFibGUsIGAkaWdub3JlLXdhcm5pbmdgIGlzIGEgdmFyaWFibGUgdGhhdCBjYW4gYmUgcGFzc2VkIHRvXG4vLyBzb21lIGRlcHJlY2F0ZWQgbWl4aW5zIHRvIHN1cHByZXNzIHRoZSB3YXJuaW5nIChmb3IgZXhhbXBsZSBpZiB0aGUgbWl4aW4gaXMgc3RpbGwgYmUgdXNlZCBpbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIEJvb3RzdHJhcClcbkBtaXhpbiBkZXByZWNhdGUoJG5hbWUsICRkZXByZWNhdGUtdmVyc2lvbiwgJHJlbW92ZS12ZXJzaW9uLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIEBpZiAoJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlcyAhPSBmYWxzZSBhbmQgJGlnbm9yZS13YXJuaW5nICE9IHRydWUpIHtcbiAgICBAd2FybiBcIiN7JG5hbWV9IGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgI3skZGVwcmVjYXRlLXZlcnNpb259LiBJdCB3aWxsIGJlIHJlbW92ZWQgZW50aXJlbHkgaW4gI3skcmVtb3ZlLXZlcnNpb259LlwiO1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyKCkge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMoKSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQoKSB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS9jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgc2l6ZSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlICE9IDAge1xuICAgIGEjeyRwYXJlbnR9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtZW1waGFzaXMtdmFyaWFudCgpYFwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWhpZGUoKWBcIiwgXCJ2NC4xLjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVmlzaWJpbGl0eVxuXG5AbWl4aW4gaW52aXNpYmxlKCR2aXNpYmlsaXR5KSB7XG4gIHZpc2liaWxpdHk6ICR2aXNpYmlsaXR5ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbnZpc2libGUoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yLCAkY29sb3ItaG92ZXI6IGNvbG9yLXlpcSgkY29sb3IpLCAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvciwgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24oKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQoKSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICRuYXYtZGl2aWRlci1jb2xvciwgJG1hcmdpbi15OiAkbmF2LWRpdmlkZXItbWFyZ2luLXksICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICRtYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG5hdi1kaXZpZGVyKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmb3JtLWNvbnRyb2wtZm9jdXMoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG4vLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzE1NTdcbiAgICAvLyBBbGlnbiB0b29sdGlwIHRvIGZvcm0gZWxlbWVudHNcbiAgICAuZm9ybS1yb3cgPiAuY29sID4gJixcbiAgICAuZm9ybS1yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSA+ICYge1xuICAgICAgbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lciAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtcGFkZGluZy14ICogNCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtcGFkZGluZy14ICogMiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgJGN1c3RvbS1zZWxlY3QtYmcgZXNjYXBlLXN2ZygkaWNvbikgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZSBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDEwJSk7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRib3JkZXI6IG51bGwpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgQGlmICRib3JkZXIgIT0gbnVsbCB7XG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciB7XG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy1ncmFkaWVudC12YXJpYW50YCBtaXhpblwiLCBcInY0LjUuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbiIsIkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgJHJlc3VsdDogKCk7XG5cbiAgICBAaWYgKGxlbmd0aCgkc2hhZG93KSA9PSAxKSB7XG4gICAgICAvLyBXZSBjYW4gcGFzcyBgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtgXG4gICAgICAkcmVzdWx0OiAkc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gRmlsdGVyIHRvIGF2b2lkIGludmFsaWQgcHJvcGVydGllcyBmb3IgZXhhbXBsZSBgYm94LXNoYWRvdzogbm9uZSwgMXB4IDFweCBibGFjaztgXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkc2hhZG93KSB7XG4gICAgICAgIEBpZiBudGgoJHNoYWRvdywgJGkpICE9IFwibm9uZVwiIHtcbiAgICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRzaGFkb3csICRpKSwgXCJjb21tYVwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaWYgKGxlbmd0aCgkcmVzdWx0KSA+IDApIHtcbiAgICAgIGJveC1zaGFkb3c6ICRyZXN1bHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAqIC41O1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgKiAuNTtcbn1cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzYCBtaXhpblwiLCBcInY0LjUuMlwiLCBcInY1XCIpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXJvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGRpdmlkZSgxMDAlLCAkY291bnQpO1xuICAgIG1heC13aWR0aDogZGl2aWRlKDEwMCUsICRjb3VudCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AbWl4aW4gZmxvYXQtbGVmdCgpIHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1sZWZ0YCBtaXhpblwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuQG1peGluIGZsb2F0LXJpZ2h0KCkge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1yaWdodGAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbkBtaXhpbiBmbG9hdC1ub25lKCkge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZsb2F0LW5vbmVgIG1peGluXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNVxufVxuXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXG4vLyBvbiBlbGVtZW50cyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgcmVjZWl2ZSBmb2N1cyBidXQgd291bGRuJ3Qgbm9ybWFsbHkgc2hvdyBhIHZpc2libGVcbi8vIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXG4vLyBvciB0aGUgYnJvd3NlciBoYXMgc29tZWhvdyBkZXRlcm1pbmVkIHRoYXQgdGhlIHVzZXIgaXMgcHJpbWFyaWx5IGEga2V5Ym9hcmQgdXNlciBhbmQvb3Jcbi8vIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXG4vL1xuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxuLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gRGlzYWJsZSBhdXRvLWhpZGluZyBzY3JvbGxiYXIgaW4gSUUgJiBsZWdhY3kgRWRnZSB0byBhdm9pZCBvdmVybGFwLFxuICAvLyBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBpbnRlcmFjdCB3aXRoIHRoZSBjb250ZW50XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTsgfVxuaDIsIC5oMiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTsgfVxuaDMsIC5oMyB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTsgfVxuaDQsIC5oNCB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTsgfVxuaDUsIC5oNSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTsgfVxuaDYsIC5oNiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTsgfVxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5MS1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkyLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5NC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoOTAlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgKiAuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lcixcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHRlbmQgZWFjaCBicmVha3BvaW50IHdoaWNoIGlzIHNtYWxsZXIgb3IgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgbmVnYXRpdmUgbWFyZ2luIGZyb20gZGVmYXVsdCAucm93LCB0aGVuIHRoZSBob3Jpem9udGFsIHBhZGRpbmdcbiAgLy8gZnJvbSBhbGwgaW1tZWRpYXRlIGNoaWxkcmVuIGNvbHVtbnMgKHRvIHByZXZlbnQgcnVuYXdheSBzdHlsZSBpbmhlcml0YW5jZSkuXG4gIC5uby1ndXR0ZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICA+IC5jb2wsXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG4gIH1cbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xufVxuXG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLmZvcm0tY2hlY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIGZvciB3b3JrYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuZm9ybS1jaGVjay1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBlYWNoICRzdGF0ZSwgJGRhdGEgaW4gJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMge1xuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCBtYXAtZ2V0KCRkYXRhLCBjb2xvciksIG1hcC1nZXQoJGRhdGEsIGljb24pKTtcbn1cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gUHJldmVudCBzaG9ydGVyIGVsZW1lbnRzIGZyb20gZ3Jvd2luZyB0byBzYW1lIGhlaWdodCBhcyBvdGhlcnMgKGUuZy4sIHNtYWxsIGJ1dHRvbnMgZ3Jvd2luZyB0byBub3JtYWwgc2l6ZWQgYnV0dG9uIGhlaWdodClcblxuICAvLyBCZWNhdXNlIHdlIHVzZSBmbGV4LCB0aGUgaW5pdGlhbCBzaXppbmcgb2YgY2hlY2tib3hlcyBpcyBjb2xsYXBzZWQgYW5kXG4gIC8vIGRvZXNuJ3Qgb2NjdXB5IHRoZSBmdWxsLXdpZHRoICh3aGljaCBpcyB3aGF0IHdlIHdhbnQgZm9yIHhzIGdyaWQgdGllciksXG4gIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cbiAgLmZvcm0tY2hlY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAsXG4gICAgLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBjdXJzb3I6IGlmKCRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMsIHBvaW50ZXIsIG51bGwpO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tbGluZS1oZWlnaHQtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XG4gIH1cbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi53aWR0aCB7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGgpO1xuICB9XG59XG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24tcGFkZGluZy14O1xuICBtYXJnaW46ICRkcm9wZG93bi1zcGFjZXIgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZHJvcGRvd24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRkcm9wZG93bi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LWxlZnQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wcmlnaHQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHJpZ2h0KTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BsZWZ0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQobGVmdCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBXaGVuIFBvcHBlciBpcyBlbmFibGVkLCByZXNldCB0aGUgYmFzaWMgZHJvcGRvd24gcG9zaXRpb25cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uZHJvcGRvd24tbWVudSB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gIH1cbn1cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcsICRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15LCB0cnVlKTtcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gIC8vIFByZXZlbnQgZHJvcGRvd24gb3ZlcmZsb3cgaWYgdGhlcmUncyBubyBwYWRkaW5nXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BsZWZ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5jdXN0b20tc2VsZWN0OmZvY3VzLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gLmZvcm0tY29udHJvbDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICA+IC5jdXN0b20tZmlsZTpudGgtbGFzdC1jaGlsZChuICsgMykgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZFxuLy9cbi8vIFdoaWxlIGl0IHJlcXVpcmVzIG9uZSBleHRyYSBsYXllciBvZiBIVE1MIGZvciBlYWNoLCBkZWRpY2F0ZWQgcHJlcGVuZCBhbmRcbi8vIGFwcGVuZCBlbGVtZW50cyBhbGxvdyB1cyB0byAxKSBiZSBsZXNzIGNsZXZlciwgMikgc2ltcGxpZnkgb3VyIHNlbGVjdG9ycywgYW5kXG4vLyAzKSBzdXBwb3J0IEhUTUw1IGZvcm0gdmFsaWRhdGlvbi5cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHsgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7IG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuYnRuLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgb3BhY2l0eTogMDtcblxuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc2V1ZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtY3Vyc29yO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41O1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgYm9yZGVyOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41O1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6IDUwJSAvICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplfSBuby1yZXBlYXQ7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIGNoZWNrYm94ZXMuXG5cbi5jdXN0b20tY2hlY2tib3gge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdyk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhZGlvc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciByYWRpb3MuXG5cbi5jdXN0b20tcmFkaW8ge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzd2l0Y2hlc1xuLy9cbi8vIFR3ZWFrIGEgZmV3IHRoaW5ncyBmb3Igc3dpdGNoZXNcblxuLmN1c3RvbS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtd2lkdGg7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiBhZGQoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41LCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdywgJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyO1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAqIC41OyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gRWRnZSBzcGVjaWZpY1xuICAgIG1hcmdpbi1yaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBtYXJnaW4tbGVmdDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgKiAuNTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC1sb3dlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyAvLyBhcmJpdHJhcnk/XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvLyBDb250ZW50c1xuLy9cbi8vIE5hdmJhclxuLy8gTmF2YmFyIGJyYW5kXG4vLyBOYXZiYXIgbmF2XG4vLyBOYXZiYXIgdGV4dFxuLy8gTmF2YmFyIGRpdmlkZXJcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vLyBOYXZiYXIgcG9zaXRpb25cbi8vIE5hdmJhciB0aGVtZXNcblxuXG4vLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXkgJG5hdmJhci1wYWRkaW5nLXg7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAuY29udGFpbmVyLFxuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItYnJhbmQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgaW1hZ2Ugc2l6ZSBidWcgaW4gSUVcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yODg1NVxuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15ICogLjU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBmbGV4LXNocmluazogMDsgLy8gRm9yIElFOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5Mzk2XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIENhcmQgZGVja1xuXG4uY2FyZC1kZWNrIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWRlY2stbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogLSRjYXJkLWRlY2stbWFyZ2luO1xuXG4gICAgLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHRcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuXG4gID4gLmNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgIH1cblxuICAgID4gLmNhcmQtaGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRicmVhZGNydW1iLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYnJlYWRjcnVtYi1mb250LXNpemUpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gU3VwcHJlc3MgaW5saW5lIHNwYWNpbmdzIGFuZCB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5hLmNsb3NlLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7IC8vIElFMTAvMTFcbiAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7IC8vIElFMTAvMTFcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7IC8vIFJlc2V0IGhlaWdodCB0byAwIGV4Y2VwdCBvbiBJRVxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXG4gICYubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiAkbW9kYWwtY29udGVudC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIHNvIHRoZSBjbG9zZSBidG4gYWx3YXlzIHN0YXlzIG9uIHRoZSB1cHBlciByaWdodCBjb3JuZXJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuICogLjU7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tcmlnaHQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gb3ZlcnJpZGUgPG9sPiBkZWZhdWx0XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCJAaW1wb3J0IFwidXRpbGl0aWVzL2FsaWduXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2JhY2tncm91bmRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYm9yZGVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9kaXNwbGF5XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2VtYmVkXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2ZsZXhcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZmxvYXRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvaW50ZXJhY3Rpb25zXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL292ZXJmbG93XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NjcmVlbnJlYWRlcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2hhZG93c1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zaXppbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc3BhY2luZ1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zdHJldGNoZWQtbGlua1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy90ZXh0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Zpc2liaWxpdHlcIjtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKGRpdmlkZSgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teSwgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZmlsbCAgICAgICAgIHsgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMCAgICAgICB7IGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMCAgICAgeyBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTEgICAgIHsgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJHVzZXItc2VsZWN0cyB7XG4gIC51c2VyLXNlbGVjdC0jeyR2YWx1ZX0geyB1c2VyLXNlbGVjdDogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJG92ZXJmbG93cyB7XG4gIC5vdmVyZmxvdy0jeyR2YWx1ZX0geyBvdmVyZmxvdzogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb21tb24gdmFsdWVzXG5AZWFjaCAkcG9zaXRpb24gaW4gJHBvc2l0aW9ucyB7XG4gIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0geyBwb3NpdGlvbjogJHBvc2l0aW9uICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gIH1cbn1cbiIsIi8vXG4vLyBTY3JlZW5yZWFkZXJzXG4vL1xuXG4uc3Itb25seSB7XG4gIEBpbmNsdWRlIHNyLW9ubHkoKTtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGUoKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmIFwiI3skc2l6ZX1cIiAhPSBcIjBcIiB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gRGVwcmVjYXRlZCwgYnV0IGF2b2lkcyBpc3N1ZXMgd2l0aCBmbGV4IGNvbnRhaW5lcnNcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9tYWluLmNzcy9ibG9iL21hc3Rlci9zcmMvX3ByaW50LmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIFNwZWNpZnkgYSBzaXplIGFuZCBtaW4td2lkdGggdG8gbWFrZSBwcmludGluZyBjbG9zZXIgYWNyb3NzIGJyb3dzZXJzLlxuICAgIC8vIFdlIGRvbid0IHNldCBtYXJnaW4gaGVyZSBiZWNhdXNlIGl0IGJyZWFrcyBgc2l6ZWAgaW4gQ2hyb21lLiBXZSBhbHNvXG4gICAgLy8gZG9uJ3QgdXNlIGAhaW1wb3J0YW50YCBvbiBgc2l6ZWAgYXMgaXQgYnJlYWtzIGluIENocm9tZS5cbiAgICBAcGFnZSB7XG4gICAgICBzaXplOiAkcHJpbnQtcGFnZS1zaXplO1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAgIC5uYXZiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYmxhY2s7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktMzAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWRhcmsge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxuICB9XG59XG4iLCIvLyBnbG9iYWxzL3Njc3MvYWJzdHJhY3RzL19nbG9iYWxfbWl4aW5zLnNjc3NcblxuLy8gVGhpcyBtaXhpbiBhbGxvd3MgZm9yIHRoZSB1c2Ugb2Ygc3BhY2VyIGRlZmluaXRpb25zIHdpdGhvdXQgY2xhc3Nlcy5cbi8vIGV4YW1wbGUgdXNhZ2UgQGluY2x1ZGUgcHkoMyk7IHBhZFxuXG5AZnVuY3Rpb24gbWFwLWdldC1vci1rZXkoJG1hcCwgJGtleSkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSBvciBtYXAtaGFzLWtleSgkbWFwLCAtJGtleSkge1xuICAgICAgICBAaWYgJGtleSAhPSdhdXRvJ2FuZCB0eXBlLW9mKCRrZXkpPT0nbnVtYmVyJ2FuZCAka2V5IDwgMCB7XG4gICAgICAgICAgICBAcmV0dXJuIDAgLSBtYXAtZ2V0KCRtYXAsIC0ka2V5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAka2V5KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIGlmIHR5cGUtb2YoJGtleSk9PSdzdHJpbmcnIHtcbiAgICAgICAgQHJldHVybiB1bnF1b3RlKCRrZXkpO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiAka2V5O1xuICAgIH1cbn1cblxuQGZ1bmN0aW9uIGJzaXplKCRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQtb3Ita2V5KCRzcGFjZXJzLCAka2V5KTtcbn1cblxuQG1peGluIG0oJHNwYWNlKSB7XG4gICAgbWFyZ2luOiBic2l6ZSgkc3BhY2UpO1xufVxuXG5AbWl4aW4gbXQoJHNwYWNlKSB7XG4gICAgbWFyZ2luLXRvcDogYnNpemUoJHNwYWNlKTtcbn1cblxuQG1peGluIG1iKCRzcGFjZSkge1xuICAgIG1hcmdpbi1ib3R0b206IGJzaXplKCRzcGFjZSk7XG59XG5cbkBtaXhpbiBtbCgkc3BhY2UpIHtcbiAgICBtYXJnaW4tbGVmdDogYnNpemUoJHNwYWNlKTtcbn1cblxuQG1peGluIG1yKCRzcGFjZSkge1xuICAgIG1hcmdpbi1yaWdodDogYnNpemUoJHNwYWNlKTtcbn1cblxuQG1peGluIHAoJHNwYWNlKSB7XG4gICAgcGFkZGluZzogYnNpemUoJHNwYWNlKTtcbn1cblxuQG1peGluIHB0KCRzcGFjZSkge1xuICAgIHBhZGRpbmctdG9wOiBic2l6ZSgkc3BhY2UpO1xufVxuXG5AbWl4aW4gcGIoJHNwYWNlKSB7XG4gICAgcGFkZGluZy1ib3R0b206IGJzaXplKCRzcGFjZSk7XG59XG5cbkBtaXhpbiBwbCgkc3BhY2UpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGJzaXplKCRzcGFjZSk7XG59XG5cbkBtaXhpbiBwcigkc3BhY2UpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBic2l6ZSgkc3BhY2UpO1xufVxuXG5AbWl4aW4gbXgoJHNwYWNlKSB7XG4gICAgQGluY2x1ZGUgbWwoJHNwYWNlKTtcbiAgICBAaW5jbHVkZSBtcigkc3BhY2UpO1xufVxuXG5AbWl4aW4gbXkoJHNwYWNlKSB7XG4gICAgQGluY2x1ZGUgbXQoJHNwYWNlKTtcbiAgICBAaW5jbHVkZSBtYigkc3BhY2UpO1xufVxuXG5AbWl4aW4gcHgoJHNwYWNlKSB7XG4gICAgQGluY2x1ZGUgcGwoJHNwYWNlKTtcbiAgICBAaW5jbHVkZSBwcigkc3BhY2UpO1xufVxuXG5AbWl4aW4gcHkoJHNwYWNlKSB7XG4gICAgQGluY2x1ZGUgcHQoJHNwYWNlKTtcbiAgICBAaW5jbHVkZSBwYigkc3BhY2UpO1xufVxuIiwiLy8gZ2xvYmFscy9zY3NzL2Fic3RyYWN0cy9fcGxhY2Vob2xkZXJzLnNjc3NcblxuXG4vLyBDbGFzc2VzIHdpdGggJSBhcmUgcGxhY2Vob2xkZXIgY2xhc3NlcyB0byBiZSBpbmNsdWRlZCBpbiBvdGhlciBjbGFzc2VzIHVzaW5nIEBleHRlbmRcblxuJWJsYWNrLWxpbmsge1xuICBjb2xvcjogJGJsYWNrO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4lZm9udGF3ZXNvbWUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIiN7JGZvbnRBd2Vzb21lfVwiO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xufVxuXG4vLyBCYWNrZ3JvdW5kIEdyYWRpZW50IHJlY2lwZXNcbiViZy1ncmFkaWVudC1jdGEge1xuICBAaW5jbHVkZSBncmFkaWVudC15KCRsdG9yYW5nZSwgJG9yYW5nZSk7XG59XG5cbiViZy1ncmFkaWVudC1vcmFuZ2Uge1xuICBAaW5jbHVkZSBncmFkaWVudC15KCRvcmFuZ2UsICRsdG9yYW5nZSk7XG59XG5cbiViZy1ncmFkaWVudC1vcmFuZ2UtcmFkaWFsIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoYXQgOTElIDEwMCUsICRsdG9yYW5nZSAxJSwgJG9yYW5nZSAxMDAlKTtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG4lYmctZ3JhZGllbnQtZGtibHVlIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQteSgkZGtibHVlLCAkYmx1ZSk7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG5cbiViZy1ncmFkaWVudC1ka2JsdWUtcmFkaWFsIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoYXQgOTElIDEwMCUsICRibHVlIDElLCAkZGtibHVlIDEwMCUpO1xuICAgIGNvbG9yOiAkd2hpdGU7XG59XG5cbiViZy1ncmFkaWVudC1ibHVlIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQteSgkYmx1ZSwgJGx0Ymx1ZSk7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG5cbiViZy1ncmFkaWVudC1ibHVlLXJhZGlhbCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGF0IDkxJSAxMDAlLCAkbHRibHVlIDElLCAkYmx1ZSAxMDAlKTtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG4lYmctZ3JhZGllbnQtZ3JleSB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXkoJGRrZ3JleSwgJGdyZXkpO1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG4lYmctZ3JhZGllbnQtZ3JleS1yYWRpYWwge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChhdCA5MSUgMTAwJSwgJGx0Z3JleSAxJSwgJGRrZ3JleSAxMDAlKTtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuIiwiLy8gZ2xvYmFscy9zY3NzL2Fic3RyYWN0cy9fa2V5ZnJhbWVzLnNjc3NcbkBrZXlmcmFtZXMgZmFkZS11cC1pbntcbiAgMCV7IG9wYWNpdHk6IDA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMzBweCk7fVxuICAxMDAleyBvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMHB4KTt9XG59XG4iLCIvLyBnbG9iYWxzL3Njc3MvYWJzdHJhY3RzL19mb3JtVmFsaWRhdGlvbi5zY3NzXG5cbmZvcm0udXNlciAuZmllbGQtdmFsaWRhdGlvbi1lcnJvciB7XG4gICAgY29sb3I6ICNkYzM1NDU7XG59XG5cbmZvcm0udXNlciBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgc3BhbiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogLjJyZW07XG4gICAgfVxufVxuXG5mb3JtLnVzZXIgLnJlcXVpcmVkIHtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogLjNlbTtcbiAgICAgICAgZm9udC1zaXplOiAuNHJlbTtcbiAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICBmb250LWZhbWlseTogXCIjeyRmb250QXdlc29tZX1cIjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgY29udGVudDogXCJcXGYwNjlcIjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTAuOGVtO1xuICAgIH1cbn1cblxuZm9ybSAuaW5wdXQtZ3JvdXAgc3VwIHtcbiAgICB0b3A6IC41ZW07XG59XG4iLCIvLyBnbG9iYWxzL3Njc3MvYWJzdHJhY3RzL19ib290c3RyYXBEYXRlVGltZVBpY2tlci5zY3NzXG4iLCIvLyBnbG9iYWxzL3Njc3MvYmFzZS9fYmFja2dyb3VuZHMuc2Nzc1xuXG5cbi8vIEdyYWRpZW50c1xuXG4uYmctZ3JhZGllbnQtY3RhIHtcbiAgQGV4dGVuZCAlYmctZ3JhZGllbnQtY3RhXG59XG5cbi5iZy1ncmFkaWVudC1ka2JsdWUtcmFkaWFsIHtcbiAgQGV4dGVuZCAlYmctZ3JhZGllbnQtZGtibHVlLXJhZGlhbDtcbn1cblxuLmJnLWdyYWRpZW50LWRrYmx1ZSB7XG4gIEBleHRlbmQgJWJnLWdyYWRpZW50LWRrYmx1ZTtcbn1cblxuLmJnLWdyYWRpZW50LWJsdWUtcmFkaWFsIHtcbiAgQGV4dGVuZCAlYmctZ3JhZGllbnQtYmx1ZS1yYWRpYWw7XG59XG5cbi5iZy1ncmFkaWVudC1ibHVlIHtcbiAgQGV4dGVuZCAlYmctZ3JhZGllbnQtYmx1ZTtcbn1cblxuLmJnLWdyYWRpZW50LW9yYW5nZS1yYWRpYWwge1xuICBAZXh0ZW5kICViZy1ncmFkaWVudC1vcmFuZ2UtcmFkaWFsO1xufVxuXG4uYmctZ3JhZGllbnQtb3JhbmdlIHtcbiAgQGV4dGVuZCAlYmctZ3JhZGllbnQtb3JhbmdlO1xufVxuXG4uYmctZ3JhZGllbnQtZ3JleS1yYWRpYWwge1xuICBAZXh0ZW5kICViZy1ncmFkaWVudC1ncmV5LXJhZGlhbDtcbn1cblxuLmJnLWdyYWRpZW50LWdyZXkge1xuICBAZXh0ZW5kICViZy1ncmFkaWVudC1ncmV5O1xufVxuXG4uYmctaW1hZ2Uge1xuICAvL1RoaXMgc3R5bGUgcmVxdWlyZXMgYW4gaW5saW5lIG92ZXJyaWRlIGZvciB0aGUgaW1hZ2VcbiAgQGluY2x1ZGUgcHkoNSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vMTYwMHg4MDA/dGV4dD1JbWFnZS5qcGdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAucm93IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC5jYXJkIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIHAge1xuICAgIEBpbmNsdWRlIHB5KDQpO1xuXG4gICAgJiArIHAge1xuICAgICAgQGluY2x1ZGUgcHkoMCk7XG4gICAgfVxuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUge1xuICAgIEBpbmNsdWRlIG1iKDUpO1xuICB9XG59XG4iLCIvLyBPSC9zY3NzL2dsb2JhbHMvX2J1dHRvbnMuc2Nzc1xyXG5cclxuLmJ0bi1jdGEge1xyXG4gIEBleHRlbmQgJWJnLWdyYWRpZW50LWN0YTtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDFweCA3NXB4O1xyXG4gIGJvcmRlci1jb2xvcjogJGx0b3JhbmdlO1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbiAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICBsZXR0ZXItc3BhY2luZzogMXB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xyXG4gIHBhZGRpbmc6IDE1cHg7XHJcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IC8vdXBwZXJjYXNlXHJcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2Utb3V0O1xyXG5cclxuICAmLmFycm93OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxmMTA1XCI7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmb250LWZhbWlseTogXCIjeyRmb250QXdlc29tZX1cIjtcclxuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XHJcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcmlnaHQ6IDBweDtcclxuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDc1cHg7XHJcbiAgICBib3JkZXItY29sb3I6ICR5ZWxsb3c7XHJcblxyXG4gICAgJi5hcnJvdzphZnRlciB7XHJcbiAgICAgIHJpZ2h0OiAtNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uYnRuLWJsb2NrLmJ0bi1jdGEge1xyXG4gIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgJi5hcnJvdzphZnRlciB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBCdXR0b24gcmlnaHQgYW5kIGxlZnQgaWNvbnNcclxuLy9hZGRzIGFuaW1hdGVkIGljb24gdG8gdGhlIHJpZ2h0IG9mIGVsZW1lbnRcclxuXHJcbi5pY29uLXJpZ2h0IHtcclxuICAmOmFmdGVyIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtZmFtaWx5OiBcIiN7JGZvbnRBd2Vzb21lfVwiO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAvKnRvcDogNTAlOyovXHJcbiAgICBsaW5lLWhlaWdodDogMHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICByaWdodDogMHB4O1xyXG4gICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTtcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcmlnaHQ6IC01cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaWNvbi1sZWZ0IHtcclxuICAmOmJlZm9yZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmb250LWZhbWlseTogXCIjeyRmb250QXdlc29tZX1cIjtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgbGVmdDogMHB4O1xyXG4gICAgLyp0b3A6IDUwJTsqL1xyXG4gICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vYWRkcyBhbmltYXRlZCBpY29uIHRvIHRoZSByaWdodCBvZiBsaXN0IGdyb3VwIGVsZW1lbnRzXHJcblxyXG4vL2F2YWlsYWJsZSBpY29uc1xyXG4uaWNvbi1sZWZ0IHtcclxuICAmLmFycm93OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZjEwNFwiO1xyXG4gIH1cclxuXHJcbiAgJi5kb3dubG9hZDpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGYzNGFcIjtcclxuICB9XHJcblxyXG4gICYuZG9jdW1lbnQ6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxmMTVjXCI7XHJcbiAgfVxyXG5cclxuICAmLmNoZXZyb246YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxmMzI0XCI7XHJcbiAgfVxyXG5cclxuICAmLnVwOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZjBkZVwiO1xyXG4gIH1cclxuXHJcbiAgJi5kb3duOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZjBkZFwiO1xyXG4gIH1cclxufVxyXG5cclxuLmljb24tcmlnaHQge1xyXG4gICYuYXJyb3c6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcXGYxMDVcIjtcclxuICB9XHJcblxyXG4gICYuZG93bmxvYWQ6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcXGYzNGFcIjtcclxuICB9XHJcblxyXG4gICYuZG9jdW1lbnQ6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcXGYxNWNcIjtcclxuICB9XHJcblxyXG4gICYuY2hldnJvbjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlxcZjMyNFwiO1xyXG4gIH1cclxuXHJcbiAgJi51cDphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlxcZjBkZVwiO1xyXG4gIH1cclxuXHJcbiAgJi5kb3duOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxmMGRkXCI7XHJcbiAgfVxyXG59XHJcbiIsIi8vIGdsb2JhbHMvc2Nzcy9iYXNlL19nZW5lcmFsLnNjc3NcblxuLy8gVGV4dCBTdHlsZXNcbnAsXG5zbWFsbCB7XG4gICAgKyBoMixcbiAgICArIGgzLFxuICAgICsgaDQge1xuICAgICAgICBAaW5jbHVkZSBtdCg0KTtcbiAgICB9XG59XG5cbi50ZXh0LXdoaXRlICogaHIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkd2hpdGU7XG59XG5cbnN0cm9uZyxcbi5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyO1xufVxuXG5zdXAge1xuICAgIHRvcDogLTAuMjVyZW07XG59XG5cbi50ZXh0LXNraW5ueSB7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbn1cblxuLnF1b3RlIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kICVmb250YXdlc29tZTtcbiAgICAgICAgY29udGVudDogXCJcXGYxMGQgXCI7IC8vbGVmdCBxdW90ZVxuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBAZXh0ZW5kICVmb250YXdlc29tZTtcbiAgICAgICAgY29udGVudDogXCIgXFxmMTBlXCI7IC8vcmlnaHQgcXVvdGVcbiAgICB9XG59XG5cbi8vIFJlZHVjZSBjb250ZW50IHdpZHRoLiBGb3IgdXNlIG9uIG9uZSBjb2x1bW4gbGF5b3V0cyB0byBpbXByb3ZlIHJlYWRhYmlsaXR5XG4uc2tpbm55LXBhZ2UgbWFpbiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBAaW5jbHVkZSBteChhdXRvKTtcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICB9XG59XG5cbi8vIGFkZCBwYWRkaW5nIHRvIGZsb2F0c1xuaW1nLmZsb2F0LWxlZnQge1xuICAgIEBpbmNsdWRlIG1yKDMpO1xuICAgIEBpbmNsdWRlIG10KDEpO1xufVxuXG5pbWcuZmxvYXQtcmlnaHQge1xuICAgIEBpbmNsdWRlIG1sKDMpO1xuICAgIEBpbmNsdWRlIG10KDEpO1xufVxuXG4vLyBXcmFwIHVub3JkZXJlZCBsaXN0IGFyb3VuZCBpbWFnZVxuLmZsb2F0LWxlZnQgKyB1bCB7XG4gICAgQGluY2x1ZGUgbXQoMyk7XG4gICAgQGluY2x1ZGUgcGwoMyk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICBAaW5jbHVkZSBtdCgwKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuIiwiLy8gZ2xvYmFscy9zY3NzL2xheW91dHMvX2hlYWRlci5zY3NzXG5cbi8vIFRvcCBVdGlsbGl0eSBOYXYgU3R5bGVcbiN0b3BOYXYge1xuICBsZXR0ZXItc3BhY2luZzogMC4wN3JlbTtcblxuICBhLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJGxpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgcGFkZGluZzogMC4ycmVtIDAuNXJlbTtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgJi53cC1saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICB9XG59XG5cbi8vIGltcG9ydCBjdXN0b20gbW9iaWxlIHN0eWxlc1xuQGltcG9ydCBcIm1vYmlsZU5hdlwiO1xuXG4vLyBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19cblxuLy8gTWFpbiBOYXZpZ2F0aW9uXG4vLyBTZWFyY2ggQm94IFN0eWxlXG4jbWFpbk5hdiAubW9iaWxlLXNlYXJjaCAuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbiNtYWluTmF2IC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi8vIE1haW4gTGlua3NcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgLnByaW1hcnktbmF2IHtcbiAgICBAaW5jbHVkZSBtYig0KTtcbiAgICBoZWlnaHQ6IDExOHB4O1xuXG4gICAgJi5jb21wYWN0IHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAuY29udGFpbmVyLWxnIHtcbiAgICAgIEBpbmNsdWRlIHB4KDApO1xuICAgIH1cblxuICAgIG5hdiB7XG4gICAgICBAaW5jbHVkZSBwKDApO1xuICAgIH1cbiAgfVxuXG4gICNtYWluTmF2IHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcblxuICAgIC5uYXYtbGluayB7XG4gICAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgIH1cblxuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG4gICAgLm5hdi1saW5rLFxuICAgIC5uYXYtaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC5uYXYtbGluazpmb2N1cyxcbiAgICAubmF2LWxpbms6YWN0aXZlLFxuICAgIC5uYXYtaXRlbTpmb2N1cyxcbiAgICAubmF2LWl0ZW06YWN0aXZlIC5uYXYtbGluayxcbiAgICAubmF2LWl0ZW0ge1xuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmUtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBvdXRsaW5lLXdpZHRoOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtbGluazpob3ZlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIC5hY3RpdmUgLm5hdi1saW5rIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYWN0aXZlO1xuICAgIH1cblxuICAgIC5jb2xsYXBzZSxcbiAgICAubmF2LWxpbmsge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgICBvdmVyZmxvdzogY29udGFpbjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAubmF2LWxpbmsge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAvKiYuc2hvdyxcbiAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIH0qL1xuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5kcm9wZG93biB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JleTtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tbWVudS5pbixcbiAgICAgIC5hY3RpdmUgLmRyb3Bkb3duLW1lbnUsXG4gICAgICAuc2hvdyAuZHJvcGRvd24tbWVudSxcbiAgICAgIC5kcm9wZG93bjpob3ZlciAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgIGNvbG9yOiAkYWN0aXZlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYWN0aXZlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAucHJpbWFyeS1uYXYge1xuICAgICAgaGVpZ2h0OiAxNDVweDtcblxuICAgICAgJi5jb21wYWN0IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICNtYWluTmF2IHtcbiAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIEJyZWFkY3J1bWJcbi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG5cbiAgYSB7XG4gICAgY29sb3I6ICRka2dyZXk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAuYnJlYWRjcnVtYiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuIiwiLy8gZ2xvYmFscy9zY3NzL2xheW91dHMvX21vYmlsZU5hdi5zY3NzXG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAjdG9wTmF2IHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wN3JlbTtcblxuICAgIC53cC1saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICB9XG5cbiAgLmNvbnRhaW5lci1sZyB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAucHJpbWFyeS1uYXYge1xuICAgIEBpbmNsdWRlIHB4KDApO1xuICAgIEBpbmNsdWRlIG1iKDMpO1xuXG4gICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICBAaW5jbHVkZSBweCgzKTtcbiAgICB9XG4gIH1cblxuICAvLyBVc2VkIGZvciBIYW1idXJnZXIgbWVudVxuXG4gICNtYWluTmF2IHtcbiAgICAmLm5hdmJhciB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgbWIoMyk7XG4gICAgfVxuXG4gICAgLy8gU2VhcmNoIEJveFxuICAgIC5tb2JpbGUtc2VhcmNoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgZm9ybSB7XG4gICAgICAgIEBpbmNsdWRlIG15KDIpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSGFtYmVyZ2VyIE1lbnUgVG9nZ2xlclxuICAgICYubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgbWFyZ2luOiAwIDEwcHggMCAyMHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAubmF2YmFyLXRvZ2dsZXIgPiAuY2xvc2Uge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgcGFkZGluZzogMCA4cHg7XG4gICAgfVxuXG4gICAgLm5hdmJhci10b2dnbGVyLmNvbGxhcHNlZCA+IC5jbG9zZSxcbiAgICAubmF2YmFyLXRvZ2dsZXI6bm90KC5jb2xsYXBzZWQpID4gLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBTdGFydCBtYWluIG1vYmlsZSBkcm9wZG93biBtZW51XG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgQGluY2x1ZGUgbXQoMyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbHRncmV5O1xuICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGdyZXk7XG4gICAgfVxuXG4gICAgLy8gRmlyc3QgTGV2ZWwgTmF2aWdhdGlvblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGdyZXk7XG5cbiAgICAgIC5uYXYtbGluayB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjFyZW0gMS41cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgICAgJi5hY3RpdmUgLm5hdi1saW5rIHtcbiAgICAgICAgICBjb2xvcjokbHRibHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNlY29uZCBMZXZlbCBOYXYgSXRlbXNcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgICYuc2hvdyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjJyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAyMHB4O1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTdXBwb3J0aW5nIE5hdiBJdGVtc1xuICAgIC5kcm9wLWRvd24tZm9vdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRka2JsdWU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICAgICAgLm5hdi1pdGVtIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgIG1hcmdpbjogMCAxLjVyZW07XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiK1wiO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi5zaG93IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiLVwiO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gZ2xvYmFscy9zY3NzL2xheW91dHMvX2JyZWFkY3J1bWJzLnNjc3NcbiIsIi8vIGdsb2JhbHMvc2Nzcy9sYXlvdXRzL19mb290ZXIuc2Nzc1xuLy8gRm9vdGVyIFN0eWxlc1xuXG5mb290ZXIge1xuICBAaW5jbHVkZSBweSg0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuXG4gIC5zb2NpYWwtaWNvbnMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgcHgoMCk7XG4gICAgICBAaW5jbHVkZSBwbCgxKTtcbiAgICB9XG4gIH1cblxuICAubmF2IHtcbiAgICBAaW5jbHVkZSBweSgzKTtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRka2dyZXk7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdi1saW5rIHtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgIH1cbiAgfVxuXG4gIG5hdiB7XG4gICAgLy8gRm9vdGVyIE5hdiBMaW5rc1xuICAgICYuZm9vdGVyLW1lbnUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAubmF2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAubmF2LWhlYWRlciB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW50ZXJuYXRpb25hbCBMaW5rc1xuICAgICYuaW50ZXJuYXRpb25hbCAubmF2IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkZGtncmV5O1xuICAgICAgfVxuXG4gICAgICAuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuXG4gICAgICAuZGlzdHJpYnV0b3Ige1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29weXJpZ2h0IEAgbGVnYWxcbiAgICAmLmxlZ2FsIC5uYXYge1xuICAgICAgQGV4dGVuZCAuc21hbGw7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAuY29weXJpZ2h0IHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgLy8gcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUGVyc29uYWwgSW5mb3JtYXRpb24gU3R5bGluZ1xuXG4jb3Qtc2RrLWJ0bi5vdC1zZGstc2hvdy1zZXR0aW5ncyxcbiNvdC1zZGstYnRuLm9wdGFub24tc2hvdy1zZXR0aW5ncyB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogJGRrZ3JleSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEyLjhweCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgOHB4ICFpbXBvcnRhbnQ7XG59XG5cbiNvdC1zZGstYnRuLm90LXNkay1zaG93LXNldHRpbmdzOmhvdmVyLFxuI290LXNkay1idG4ub3B0YW5vbi1zaG93LXNldHRpbmdzOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbn1cblxuLy8gU3R5bGUgZm9yIHJldHVybiB0byB0b3AgYnV0dG9uXG4uYmFjay10by10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMjVweDtcbiAgcmlnaHQ6IDI1cHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCLvu78vLyBnbG9iYWxzL3Njc3MvbGF5b3V0cy9fc2lkZU5hdi5zY3NzXG4iLCIvLyAgZ2xvYmFscy9zY3NzL2xheW91dHMvX2ZpbHRlclNvcnQuc2Nzc1xuIiwiLy8gIGdsb2JhbHMvc2Nzcy9sYXlvdXRzL19hcnRpY2xlRGV0YWlscy5zY3NzXG4iLCLvu78vLyBnbG9iYWxzL3Njc3MvbGF5b3V0cy9fYXJ0aWNsZXMuc2Nzc1xuLy9CbG9nLCBIZWxwIGFydGljbGUgY29tbWFuZCBDbGluaWNhbCBSZXNlYXJjaCBTdHlsZXNcbi5ibG9nLWxpc3QsXG4ucmVzZWFyY2gge1xuICAgIGEge1xuICAgICAgICBAZXh0ZW5kICVibGFjay1saW5rO1xuXG4gICAgICAgIGgyLmNhcmQtdGl0bGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcmZzKDEuNXJlbSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMjAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ib3JkZXItYm90dG9tOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmb290ZXIgLnNvY2lhbC1pY29ucyBhIHtcclxuICAgICAgICBjb2xvcjogJGx0Ymx1ZTtcclxuICAgIH1cblxuICAgIC5pbnB1dC13cmFwIHtcbiAgICAgICAgQGluY2x1ZGUgcGwoMik7XG4gICAgfVxuXG4gICAgLmZpbHRlckJ0biB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwcigyKTtcbiAgICAgICAgICAgIEBleHRlbmQgJWZvbnRhd2Vzb21lO1xuICAgICAgICAgICAgY29udGVudDogXCLvhYZcIjsgLy8gY2xvc2Ugc3ltYm9sXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbGxhcHNlZDo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCLvg75cIjsgLy8gb3BlbiBzeW1ib2xcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgI2ZpbHRlci1vcHRpb25zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8gQmxvZyBEZXRhaWxzIHBhZ2Vcbi5ibG9nLWRldGFpbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBtYWluIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG14KGF1dG8pO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hdXRob3IsXG4gICAgLmRhdGUge1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICsgLmhlcm8ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXkoNCk7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gIGdsb2JhbHMvc2Nzcy9sYXlvdXRzL19wcm9kdWN0RGV0YWlscy5zY3NzXG4iLCIvLyBnbG9iYWxzL3Njc3MvbGF5b3V0cy9fcHJvZHVjdHMuc2Nzc1xuIiwiLy8gZ2xvYmFscy9zY3NzL2xheW91dHMvX2Zvcm1zLnNjc3Ncbi8vIGZvcm0gU3R5bGVzXG5mb3JtIC5yZXF1aXJlZCB7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiKlwiO1xuICAgICAgICBjb2xvcjogcmVkO1xuICAgIH1cbn0iLCLvu78vLyBnbG9iYWxzL3Njc3MvY29tcG9uZW50cy9fQWNjb3JkaWFuRmFxcy5zY3NzXG5cbi8vQWNjb3JpYW4gc3R5bGVzXG4uYWNjb3JkaW9uIHtcbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHAoMCk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcGwoMik7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICcjeyRmb250QXdlc29tZX0nO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIu+FhlwiOyAvLyBjbG9zZSBzeW1ib2xcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY29sbGFwc2VkOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwi74O+XCI7IC8vIG9wZW4gc3ltYm9sXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gZ2xvYmFscy9zY3NzL2NvbXBvbmVudHMvX2hlcm9zLnNjc3NcbiIsIi8vIGdsb2JhbHMvc2Nzcy9jb21wb25lbnRzL19wcm9kdWN0Q2Fyb3VzZWwuc2Nzc1xuI3Byb2R1Y3RDYXJvdXNlbCB7XG4gIC5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgIGZpbHRlcjogaW52ZXJ0KDEwMCUpO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuXG4gIC52aWV3MzYwIHtcbiAgICBib3JkZXItY29sb3I6ICRkYXJrO1xuICAgIGNvbG9yOiAkYmx1ZTtcbiAgICBAaW5jbHVkZSBteSgzKTtcbiAgfVxuXG4gIC8vIFRodW1ibmFpbCBzdHlsZXNcbiAgLmNhcm91c2VsLWluZGljYXRvcnMge1xuICAgIEBpbmNsdWRlIHB0KDQpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBsaSB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkZ3JleTtcbiAgICAgIGhlaWdodDogNjZweDtcbiAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDY2cHg7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSxcbiAgICAgICYuYWN0aXZlOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJG9yYW5nZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gSGFyZCBjb2RpbmcgY2Fyb3VzZWwgaW1hZ2UgaGVpZ2h0XG4gIC8vIHRvIGZvcmNlIHZpZGVvIGNvbnRlbnQgdG8gY2VudGVyIHZlcnRpY2FsbHlcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIC5jZW50ZXItdmlkZW8ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1pbi1oZWlnaHQ6IDMzMHB4O1xuXG4gICAgICAuZW1iZWQtcmVzcG9uc2l2ZSB7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gaGlkZSBsZWZ0IGFuZCByaWdodCBhcnJvd3Mgb24gYnJha2Vwb2ludHMgPj0gbWRcbiAgICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuICAgIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgLmNlbnRlci12aWRlbyB7XG4gICAgICBtaW4taGVpZ2h0OiA1MzBweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkoeGwpIHtcbiAgICAuY2VudGVyLXZpZGVvIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDYwMHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gIGdsb2JhbHMvc2Nzcy9jb21wb25lbnRzL19yZXZpZXdzVGVzdGltb25pYWxzLnNjc3NcblxuLy8gTmVlZCB0byByZXZpZXcgdGhpcyBzZWN0aW9uIHRvIHNlZSBpZiB0aGUgc3R5bGVzIGNhbiBiZSBjb21iaW5lZCBiZXR3ZWVuIHNob3dlcnMgYW5kIE9yYWwgSGVhbHRoXG5cbi8vIFByb2R1Y3QgUmF0aW5nIHN0YXJzXG5cbi5yYXRpbmcge1xuICAvKkBleHRlbmQgJWZvbnRhd2Vzb21lOyovXG4gIGNvbG9yOiAkbHRncmV5O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG5cbiAgaSB7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgfVxuXG4gIC5yYXRpbmctdXBwZXIge1xuICAgIGNvbG9yOiAkb3JhbmdlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbGVmdDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLnJhdGluZy1sb3dlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cbn1cblxuLy8gU3RhciByYXRpbmdzIHN0eWxpbmdcbi5SZXZpZXdzIHtcbiAgaGVpZ2h0OiAyNHB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc3RhcnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGRpdiB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB9XG5cbiAgLnN0YXJzQm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDc5cHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC5zdGFyc0JhY2sge1xuICAgIGNvbG9yOiAkbHRncmV5O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogNzVweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gIH1cblxuICAuc3RhcnNGcm9udCB7XG4gICAgY29sb3I6ICRvcmFuZ2U7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGNsaXA6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gIH1cblxuICAuc3RhcnNSYXRpbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDIwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgfVxuXG4gIC5zdGFyIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3aWR0aDogMTVweCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMjAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4iLCIvLyAgZ2xvYmFscy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2Nzc1xuLy8gUHJvZHVjdCBUYWJzIHRvIG1lbnUvYWNjb3JkaWFuIFN0eWxlc1xuLy8gTW9iaWxlIEFjY29yZGlhbiBTdHlsZXMgLSBNb2JpbGUgdG8gTWVkaXVtIHNjcmVlbnNcblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gIC8vIEhpZGUgbmF2LXRhYnMgYW5kIHVzZSB0aGUgYWNjb3JkaWFuIGNhcmQgaGVhZGluZ3NcbiAgLm5hdi10YWJzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnRhYi1jb250ZW50IHtcbiAgICAuY2FyZCB7XG4gICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd3A7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogMjAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwi74WGXCI7IC8vIGNsb3NlIHN5bWJvbFxuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIiN7JGZvbnRBd2Vzb21lfVwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jb2xsYXBzZWQgaDI6OmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCLvg75cIjsgLy8gb3BlbiBzeW1ib2xcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gU3RhY2tzIGNhcmQgaGVhZGVycyB2ZXJ0aWNhbGx5XG4gICAgLnRhYi1wYW5lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cbi8vIERlc2t0b3AgTmF2IHN0eWxlcyBMYXJnZSBhbmQgVXBcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLnRhYi1jb250ZW50IC5jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLy8gUHJvZHVjdCBEZXRhaWxzIFBhZ2UgVGFiYmVkIE1lbnVcbiAgLm5hdi10YWJzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgLm5hdi1saW5rIHtcbiAgICAgIEBpbmNsdWRlIHB4KDQpO1xuICAgICAgQGluY2x1ZGUgcHkoMyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd3A7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlLFxuICAgICAgJi5zaG93IC5uYXYtbGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JleSAkZ3JleSAkd2hpdGU7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIGNvbG9yOiAkd3A7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFiLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHB5KDQpO1xuICAgIEBpbmNsdWRlIHB4KDUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleTtcbiAgICBib3JkZXItdG9wOiAwO1xuXG4gICAgLmNhcmQge1xuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gVGFiIGNvbnRlbnQgZ2VuZXJhbCBmb3JtYXR0aW5nXG4udGFiLWNvbnRlbnQge1xuICAuY2FyZC1ib2R5IHtcbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgQGluY2x1ZGUgbXQoNCk7XG4gICAgICBAaW5jbHVkZSBwbCgzKTtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgbGkge1xuICAgICAgICBAaW5jbHVkZSBteSgzKTtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBtYig0KTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgQGluY2x1ZGUgbXkoMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vICBnbG9iYWxzL3Njc3MvY29tcG9uZW50cy9fdmlkZW8uc2Nzc1xuIiwi77u/Ly8gZ2xvYmFscy9zY3NzL2NvbXBvbmVudHMvX3ZpZGVvLXRlc3RpbW9uaWFscy5zY3NzXHJcblxyXG4vLyB2aWRlbyBUZXN0aW1vbmlhbHMgV2lkZ2V0XHJcbi50ZXN0aW1vbmlhbC12aWRlby1zZWN0aW9uIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gIGgyIHtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xyXG4gICAgQGluY2x1ZGUgcHkoMyk7XHJcbiAgfVxyXG5cclxuICBoMyB7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgYnV0dG9uIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgYm9yZGVyOiBzb2xpZCAycHggJHdoaXRlO1xyXG4gICAgcGFkZGluZzogMTBweCAwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgZm9udC1mYW1pbHk6ICRpbnB1dC1idG4tZm9udC1mYW1pbHk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjI1cztcclxuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIDAuMjVzO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgY29sb3I6ICRsdGJsdWU7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnZpZGVvLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZy10b3A6IDU2LjI1JTtcclxuXHJcbiAgICBpZnJhbWUge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gIC50ZXN0aW1vbmlhbC12aWRlby1zZWN0aW9uIHtcclxuICAgIGgzIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnZpZGVvLXdyYXAge1xyXG4gICAgICBtYXgtd2lkdGg6IDkwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBnbG9iYWxzL3Njc3MvdmVuZG9yL19tYW51YWxzLnNjc3Ncbi5tYW51YWxzIHtcbiAgICAuY29sIHtcbiAgICAgICAgQGluY2x1ZGUgcHkoMik7XG4gICAgICAgIEBpbmNsdWRlIG15KDIpO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICB9XG59XG4iLCLvu78vLyBnbG9iYWxzL3Njc3MvdmVuZG9yL19wcmljZVNwaWRlci5zY3NzXHJcblxyXG4vLyBHbG9iYWwgc3R5bGluZyByZXNldCBmb3IgUHJpY2UgU3BpZGVyIGJ1dHRvbnMgYmFzZS5cclxuLy9UbyB1c2U6IHN1cnJvdW5kIHByaWNlIHNwaWRlciBpbmNsdWRlIHNjcmlwdCB3aXRoIDxidXR0b24gY2xhc3M9XCJwcy1idG5cIj4gcGx1cyBhbmQgYm9vdHN0cmFwIGJ0biBoZWxwZXIgY2xhc3MuXHJcbi5wcy13aWRnZXQge1xyXG4gICAgYmFja2dyb3VuZDogJGRhbmdlciAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjRyZW0gIWltcG9ydGFudDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDAuMjVyZW0gMXJlbSAhaW1wb3J0YW50O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnBzLWJ1dHRvbi1sYWJlbCxcclxuICAgIC5wcy1kaXNhYmxlZCBzbWFsbCB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiI3skaGVhZGluZ3MtZm9udC1mYW1pbHl9XCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbmJ1dHRvbi5wcy1idG4ge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC40cmVtICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgLnBzLXdpZGdldCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gU2hvcCBOb3cgUHJpY2UgU3BpZGVyIEJ1dHRvbnNcclxuLy8gVGhlIGJhY2tncm91bmQgb2YgdGhlIFByaWNlIHNwaWRlciBidXR0b25zIGhhdmUgYmVlbiBtYWRlIHRyYW5zcGFyZW50IHNvIHRoYXQgd2UgY2FuIHVzZSB0aGUgZW5jbG9zaW5nIGRpdiB0byBzZXQgdGhlIGJhY2tncm91bmQgY29sb3IuIGJ5IGRlZmF1bHQgaXQgaXMgdGhlIENUQSBiYWNrZ3JvdW5kIGNvbG9yLlxyXG5cclxuLnNob3Atbm93IHtcclxuICAgIEBleHRlbmQgJWJnLWdyYWRpZW50LWN0YTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMXB4IDc1cHg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbWluLWhlaWdodDogNDBweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNzVzIGVhc2Utb3V0O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDc1cHggIWltcG9ydGFudDtcclxuICAgICAgICAvL2JhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRka2JsdWUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC8vIFN0YXJ0IFByaWNlIFNwaWRlciBvdmVycmlkZXNcclxuICAgIC8vIFRoZSBmb2xsb3dpbmcgc3R5bGVzIGFyZSBmcm9tIFByaWNlIFNwaWRlci4gSWYgdGhlIGNsYXNzIHdhcyBub3QgYWx0ZXJlZCBpdCBoYXMgYmVlbiBjb21tZW50ZWQgb3V0LlxyXG4gICAgLnBzLXdpZGdldCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAvL2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLy9jdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAvL3RleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAvL3RyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICBzcGFuLFxyXG4gICAgICAgICYucHMtZGlzYWJsZWQgc21hbGwge1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIiN7JGhlYWRpbmdzLWZvbnQtZmFtaWx5fVwiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIC8vbGluZS1oZWlnaHQ6IDMxcHg7XHJcbiAgICAgICAgICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgIC8vIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcclxuXHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICAvLyAmLnBzLWRpc2FibGVkIHNwYW4ge1xyXG4gICAgICAgIC8vICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgLy8gJjpob3ZlciB7XHJcbiAgICAgICAgLy8gICBiYWNrZ3JvdW5kOiAjMjg2MDkwO1xyXG4gICAgICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogIzI4NjA5MDtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAvLyBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgLy8gY29udGVudDogXCJcXGUwNzJcIjtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAvLyBmb250LWZhbWlseTogXCJHbHlwaGljb25zIEhhbGZsaW5nc1wiO1xyXG4gICAgICAgICAgICAvLyBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIC8vIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgICAvLyBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAvLyB0b3A6IDFweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gJi5wcy1kaXNhYmxlZCB7XHJcbiAgICAgICAgLy8gICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIC8vICYucHMtZGlzYWJsZWQ6aG92ZXIge1xyXG4gICAgICAgIC8vICAgYmFja2dyb3VuZDogIzMzN2FiNztcclxuICAgICAgICAvLyAgIGJhY2tncm91bmQtY29sb3I6ICMzMzdhYjc7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIC8vICYucHMtZGlzYWJsZWQ6YmVmb3JlIHtcclxuICAgICAgICAvLyAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIC8vICYucHMtZGlzYWJsZWQgc3BhbiB7XHJcbiAgICAgICAgLy8gICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4gICAgICAgIC8vICBBZGQgYXJyb3cgYWZ0ZXIgdGV4dFxyXG4gICAgICAgIC8vXHJcbiAgICAgICAgLy8gJjphZnRlciB7XHJcbiAgICAgICAgLy8gICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIC8vICAgY29udGVudDogXCJcXGYzNTZcIjtcclxuICAgICAgICAvLyAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAvLyAgIGZvbnQtZmFtaWx5OiBcIiN7JGZvbnRBd2Vzb21lfVwiO1xyXG4gICAgICAgIC8vICAgLy9mb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgLy8gICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgIC8vICAgbGluZS1oZWlnaHQ6IDFyZW07XHJcbiAgICAgICAgLy8gICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgICAgIC8vICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC8vICAgdG9wOiAxcHg7XHJcbiAgICAgICAgLy8gICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjVzO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAvLyAmOmhvdmVyOmFmdGVyIHtcclxuICAgICAgICAvLyAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgLy8gICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gb3JhbC1oZWFsdGgvc2Nzcy9nbG9iYWxzL19nbG9iYWxzLnNjc3NcclxuXHJcbi5jb250YWluZXIge1xyXG4gIG1heC13aWR0aDogMTMwMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbnRhYmxlIHtcclxuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJsdWU7XHJcblxyXG4gIC50YWJsZS1wcmltYXJ5IHRoIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2FwdGlvbiB7XHJcbiAgICBmb250LXNpemU6IDAuOXJlbTtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH1cclxufVxyXG5cclxuYmxvY2txdW90ZSB7XHJcbiAgYm9yZGVyLWxlZnQ6IDEycHggc29saWQgJGJsdWU7XHJcbiAgbWFyZ2luOiAyMHB4O1xyXG4gIHBhZGRpbmc6IDVweCAxNXB4O1xyXG4gIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGx0Z3JleTtcclxufVxyXG5cclxuc3VwIHtcclxuICAgIGZvbnQtc2l6ZTogNDAlO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xyXG59XHJcblxyXG4vLyBzZXQgbWF4IHdpZHRoIG9mIHNraW5ueSBwYWdlc1xyXG4uc2tpbm55UGFnZSAjYm9keWNvbnRlbnQgLmNvbnRhaW5lciB7XHJcbiAgbWF4LXdpZHRoOiA5MDBweCAhaW1wb3J0YW50O1xyXG59XHJcbi8vIHNldCBtYXggd2lkdGggb2YgUE9IIENsaW5pY2FsIFJlc2VhcmNoIHBhZ2VzXHJcbi5yZXNlYXJjaC1kZXRhaWwge1xyXG4gIG1heC13aWR0aDogOTAwcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gYWRkIHNwYWNlIHRvIGJvdG9tIG9mIGNvbnRlbnQgcGFnZXNcclxuLmJ1eWluZy1ndWlkZSxcclxuLkVEVSxcclxuLnByb2Zlc3Npb25hbHNcclxuLnNraW5ueVBhZ2Uge1xyXG4gICAgI2JvZHljb250ZW50IHtcclxuICAgICAgICBAaW5jbHVkZSBwYig1KTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBPSC9zY3NzL2dsb2JhbHMvX2NvbG9ycy5zY3NzXHJcblxyXG4vLyBTd2F0Y2ggU3R5bGluZ1xyXG5cclxuLmNvbG9ycyxcclxuLmNvbG9yIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbHRncmV5O1xyXG4gIGNvbG9yOiAkYmxhY2s7XHJcbiAgZm9udC1zaXplOiAwLjhlbTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgLmNvbG9yLXdyYXBwZXIge1xyXG4gICAgLy91c2VkIHRvIHB1dCBzcGFjZSBhYm92ZSBjb2xvcnMgd2F0Y2hlcyBvbiBwcm9kdWN0cyBhbmQgcHJvZHVjdCBkZXRhaWxzIHBhZ2VzXHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICAgIHdvcmQtd3JhcDogbm9uZTtcclxuICAgIHBhZGRpbmc6IDAgMCAxMHB4IDA7XHJcbiAgfVxyXG5cclxuICBzcGFuOmhvdmVyIHtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICB9XHJcblxyXG4gIGRpdiB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMnB4O1xyXG4gIH1cclxuXHJcbiAgLy8gcHJvZHVjdCBDb2xvciBTd2F0Y2hlc1xyXG4gICYucGJsYWNrIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcclxuICB9XHJcblxyXG4gICYucGJsdWUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBibHVlO1xyXG4gIH1cclxuXHJcbiAgJi5wZ3JheSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGdyYXk7XHJcbiAgfVxyXG5cclxuICAmLnBvcmNoaWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBvcmNoaWQ7XHJcbiAgfVxyXG5cclxuICAmLnBwaW5rIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcGluaztcclxuICB9XHJcblxyXG4gICYucHRlYWwge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB0ZWFsO1xyXG4gIH1cclxuXHJcbiAgJi5wd2hpdGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB3aGl0ZTtcclxuICB9XHJcblxyXG4gICYucG1pbnRncmVlbiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG1pbnRncmVlbjtcclxuICB9XHJcblxyXG4gICYucGJ1cmd1bmR5IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYnVyZ3VuZHk7XHJcbiAgfVxyXG5cclxuICAmLnBibHVzaHBpbmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBibHVzaHBpbms7XHJcbiAgfVxyXG5cclxuICAmLnBmcmVzaGdyZWVuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwZnJlc2hncmVlbjtcclxuICB9XHJcblxyXG4gIC8vIFR3byBUb25lIFN3YXRjaGVzXHJcbiAgJi5wYmxhY2tjb3BwZXIge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSByaWdodCwgJGJsYWNrIDUwJSwgJHBjb3BwZXIgNTUlKTtcclxuICB9XHJcblxyXG4gICYucGJsYWNrY2hyb21lIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20gcmlnaHQsICRibGFjayA1MCUsICRwY2hyb21lIDU1JSk7XHJcbiAgfVxyXG5cclxuICAmLnByb3NlZ29sZCxcclxuICAmLnB3aGl0ZXJvc2Vnb2xkIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20gcmlnaHQsICRwd2hpdGUgNTAlLCAkcHJvc2UgNTUlKTtcclxuICB9XHJcblxyXG4gIHNwYW4sXHJcbiAgYSB7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAkZGFyaztcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGhlaWdodDogMjVweDtcclxuICAgIG1hcmdpbjogMCAxcHg7XHJcbiAgICB3aWR0aDogMjVweDtcclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIGJveC1zaGFkb3c6IGxpZ2h0ZW4oJGJsdWUsIDQwJSkgMCAwIDNweCAzcHg7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBPSC9zY3NzL2dsb2JhbHMvX2JhY2tncm91bmRzLnNjc3NcblxuLy8gT3JhbCBIZWFsdGggQmFja2dyb3VuZHMgMVxuLy8gLmJhY2tncm91bmQtdGV4dHVyZSB7XG4vLyAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvb3JhbC1oZWFsdGgvaW1hZ2VzL2JhY2tncm91bmQtdGV4dHVyZS5qcGcpO1xuLy8gICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuLy8gICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuLy8gICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4vLyB9XG5cbi5iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtaGVpZ2h0OiA3MTBweDtcbiAgbWluLWhlaWdodDogMzAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgLnRleHQtbGVmdCB7XG4gICAgYW5pbWF0aW9uOiBmYWRlLXVwLWluIGVhc2UgMXMgZm9yd2FyZHMgMC4yNXM7XG4gICAgei1pbmRleDogMTtcblxuICAgIC5kaXNwbGF5LTQge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OXB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjQzOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi53YXRlckZsb3NzZXJzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL29yYWwtaGVhbHRoL2ltYWdlcy93YXRlcmZsb3NzZXIuanBnKTtcbiAgfVxuXG4gICYuZmxvc3NpbmctdG9vdGhicnVzaCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9vcmFsLWhlYWx0aC9pbWFnZXMvc29uaWNfZnVzaW9uLmpwZyk7XG4gIH1cblxuICAmLmZsb3NzZXItdG9vdGhicnVzaCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9vcmFsLWhlYWx0aC9pbWFnZXMvY29tYmluYXRpb24uanBnKTtcbiAgfVxuXG4gICYud2hpdGVuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL29yYWwtaGVhbHRoL2ltYWdlcy93aGl0ZW5pbmcuanBnKTtcbiAgfVxufVxuIiwiLy8gZ2xvYmFscy9zY3NzL2Jhc2UvX2dlbmVyYWwuc2Nzc1xyXG5cclxuLnNob3Atbm93IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW46IDI1cHggYXV0bztcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgbWluLWhlaWdodDogNTFweDtcclxuXHJcbiAgLnBzLXdpZGdldCB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICBzcGFuLFxyXG4gICAgJi5wcy1kaXNhYmxlZCBzbWFsbCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuICAgICAgICAgICAgICAgIC5zaG9wLVdQUyB7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMwZjJlNGYgMCwgIzAwMmY4Nyk7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxcHggNzVweDtcclxuICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNzVzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XHJcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLnNob3AtV1BTOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzBmMmU0ZiAwLCAjMDA3NWM5KTtcclxuICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uaWNvbi1sZWZ0IHtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gID4gKiB7XHJcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcclxuICB9XHJcblxyXG4gICY6YmVmb3JlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICB9XHJcbn1cclxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uaWNvbi1yaWdodCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICA+ICoge1xyXG4gICAgbWF4LXdpZHRoOiA5NSU7XHJcbiAgfVxyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICByaWdodDogMTVweDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICByaWdodDogNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vL0NhcmQgZGF0YWxpc3QgZ3JvdXAgZm9udC1mYWNlIHNpemUgb3ZlcnJpZGVzXHJcbi5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICYgaDIge1xyXG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xyXG4gIH1cclxuXHJcbiAgJiBoMyB7XHJcbiAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMS40cmVtO1xyXG4gIH1cclxuXHJcbiAgJiBwIHtcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDVweCAwIDA7XHJcbiAgICBsaW5lLWhlaWdodDogMS4ycmVtO1xyXG4gICAgKyAqIHtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gT0gvc2Nzcy9nbG9iYWxzL19maWx0ZXJOYXYuc2Nzc1xyXG4vL3NpZGUgYmFyIGZpbHRlcnNcclxuLmZpbHRlci1uYXYge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIGEuZmlsdGVyQnRuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGtibHVlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcclxuICAgICAgICAgICAgY29udGVudDogXCJcXGYwNjhcIjtcclxuICAgICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xyXG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDoyLjVyZW07XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgMC41cztcclxuICAgICAgICAgIC8vICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5jb2xsYXBzZWQ6YWZ0ZXIge1xyXG4gICAgICAgICAgICAvL3RyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuICAgICAgICAgICAgY29udGVudDogXCJcXGYwNjdcIjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYnRuIHtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZWxlY3Rvci1tZW51IHtcclxuICAuaW5wdXQtd3JhcCB7XHJcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5maWx0ZXItbGlzdCB7XHJcbiAgICBtYXJnaW4tdG9wOiAzcHg7XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgIHBhZGRpbmc6IDRweCAxNXB4IDVweDtcclxuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGdyZXk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLXRvcDogN3B4O1xyXG4gICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkbHRncmV5O1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA2cHg7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGRrZ3JleTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBjb250ZW50OiBcIlhcIjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyOmJlZm9yZSB7XHJcbiAgICAgICAgY29sb3I6IHJlZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNyZXN1bHRzLWNvdW50IHtcclxuICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNoZWNrLWdyb3VwIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGtncmV5O1xyXG5cclxuICAgIC5pbnB1dC13cmFwIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgICAgICAvKiBzdHlsaXplZCBjaXJjdWxhciBpbmRpY2F0b3IgZm9yIGNoZWNrYm94ZXMgKi9cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgICAgIGJvcmRlcjogNHB4ICRka2JsdWUgc29saWQ7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDRweDtcclxuICAgICAgICAgIGxlZnQ6IC0xNnB4O1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLyogc3R5bGl6ZWQgYm94IGZvciBjaGVja2JveGVzICovXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRka2dyZXk7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTFweDtcclxuICAgICAgICBsZWZ0OiAtM3B4O1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbnB1dCB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgJiArIGxhYmVsIHtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5jb2xvci1maWx0ZXIge1xyXG4gICAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgICAmICsgbGFiZWwge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbG9yLWZpbHRlciB7XHJcbiAgLmlucHV0LXdyYXAge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZzogMnB4O1xyXG4gIH1cclxuXHJcbiAgaW5wdXQge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IC0xMDtcclxuICB9XHJcblxyXG4gIGxhYmVsIHtcclxuICAgIHdpZHRoOiAzNXB4O1xyXG4gICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xyXG4gIH1cclxuXHJcbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsIHtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICRibHVlICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAkYmx1ZSAwIDAgMnB4IDJweDtcclxuICB9XHJcblxyXG4gIGxhYmVsLmNvbG9yIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmlucHV0LXdyYXAge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyoubmF2LWl0ZW0uYWN0aXZlIC5uYXZsaW5rIHtcclxuICAgIGNvbG9yOiAjZmYwMDAwO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn0qL1xyXG4iLCIvL2hlcm8gc3R5bGVzXG5cbi5oZXJvIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLnRleHQtd2hpdGUge1xuICAgICAgICBhbmltYXRpb246IGZhZGUtdXAtaW4gZWFzZSAxcyBmb3J3YXJkcyAuMjVzO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDEuNDM4cmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG59XG5cbi5oZXJvLXByb2R1Y3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtNTAlO1xuICAgIHRvcDogLTUwJTtcbiAgICBhbmltYXRpb246IGZhZGUtdXAtaW4gZWFzZSAxcyBmb3J3YXJkcyAuNzVzO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogMDtcbn1cblxuLnNwbGFzaCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9vcmFsLWhlYWx0aC9pbWFnZXMvc3BsYXNoLnBuZyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAtMjAlO1xufVxuXG4uc2VhbCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9vcmFsLWhlYWx0aC9pbWFnZXMvQURBLVNlYWwucG5nKTtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cbiIsIi8vIHByb2R1Y3QgcGlsbGFycyBvbiAvb3JhbC1oZWFsdGgvc2Nzcy9jb21wb25lbnRzL19wcm9kdWN0LWNhbGxvdXRcbi5wcm9kdWN0LWNvbHMge1xuICAgIGEge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgMC4yNXM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tb3V0bGluZS1zZWNvbmRhcnkge1xuICAgICAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAycHggJGJsdWU7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJsdWU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wtbWQtMyB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmltYWdlLXN3YXAge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGhlaWdodDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE0NSU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMyU7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIGltZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vY2FyZC1saXN0XG4uY2FyZC1saXN0IHtcbiAgICAvKnBhZGRpbmc6IDR2aCAwcHg7Ki9cblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAyNXB4IHJnYmEoMCwgMCwgMCwgLjI1KTtcblxuICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNTYzcmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAxLjI1cmVtO1xuXG4gICAgICAgICAgICAueWVsbG93LFxuICAgICAgICAgICAgLm9yYW5nZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMTBweCAzcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuNzVyZW0gMi4yNXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDg3cHg7IC8vZml4IGZvciBJRSB3YXkgdG9vIHRhbGwgZm9yIHNvbWUgcmVhc29uXG4gICAgICAgICAgICBoNCxcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiA0MCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9jYXJvdXNlbC1hcnJvdy5wbmcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjI1cztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICBoNCxcbiAgICAgICAgICAgICAgICBwLFxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mbG9hdGVkLWltZyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICByaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgIC8qcG9zaXRpb246IHJlbGF0aXZlOyovXG4gICAgICAgICAgICBib3R0b206IGluaGVyaXQ7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggYXV0byAwIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNvbnRlbnQge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcblxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy9zdGF0IGNhcmRzXG4uc3RhdC1jYXJkcyB7XG4gICAgLmNhcmQge1xuICAgICAgICBmb250LXNpemU6IDEuNDM4cmVtO1xuICAgICAgICBjb2xvcjogJGRrYmx1ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAyMHB4ICRvcmFuZ2U7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgcGFkZGluZzogNjBweCAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIH1cblxuICAgIC5zdGF0IHtcbiAgICAgICAgZm9udC1zaXplOiA0LjI1cmVtO1xuICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgICBzdXAge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAtMS42MHJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gY2FsbG91dCBib3hlc1xuLmNhbGxvdXQtYm94LWxhcmdle1xuICBwYWRkaW5nOiA1dmggMHB4O1xuICBAbWVkaWEgKG1heC13aWR0aDogOTkwcHgpIHtcbiAgICBwYWRkaW5nOiA1dmggMHB4O1xuICB9XG4gIC5jb250YWluZXJ7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICBtYXJnaW46IDBweDtcbiAgICB9XG4gIH1cbiAgLmJveHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIHBhZGRpbmc6IDBweDtcbiAgICB9XG4gICAgLmNvbnRlbnR7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbjogNTBweDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgIGJvcmRlcjogc29saWQgJHdoaXRlIDE1cHg7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgcGFkZGluZzogMTAlIDAlO1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIHdpZHRoOjEwMCU7XG5cbiAgICAgIH1cbiAgICAgIGgze1xuICAgICAgICBmb250LXNpemU6IDQzcHg7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcHtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhe1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICB9XG4gICAgfVxuICAgICYudHJhbnNwYXJlbnR7XG4gICAgICAuY29udGVudHtcbiAgICAgICAgYm9yZGVyOnNvbGlkICR3aGl0ZSAxNXB4O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNvbGlke1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoL29yYWwtaGVhbHRoL2ltYWdlcy9jb21wdXRlci1iZy5qcGcpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAuY29udGVudHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgICAgaDN7XG4gICAgICAgIGNvbG9yOiRkYXJrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaGlnaC1jb250ZW50IHtcblxuICAgIGgyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MjBweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4XG59XG4gICAgfVxuIiwiLy9wcm9kdWN0cyBwYWdlIHN0eWxlc1xyXG4ucHJvZHVjdHMge1xyXG4gIC8qYm9yZGVyLXRvcDogMXB4IHNvbGlkICRka2dyZXk7Ki9cclxuXHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG5cclxuICB9XHJcblxyXG4gIC5kcm9wZG93biB7XHJcbiAgICAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcclxuICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgICBmb250LXdlaWdodDogOTAwO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHJpZ2h0OiA1JTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wcm9kdWN0cy5jb250YWluZXIgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgbGVmdDogMyUgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5kcm9wZG93bi1pdGVtIHtcclxuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xyXG4gIH1cclxuXHJcbiAgI3Byb2R1Y3RMaXN0IC5jYXJkIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLnByb2R1Y3QtaXRlbSB7XHJcbiAgICBhIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLWltZy10b3Age1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgaGVpZ2h0OiAyMjBweDtcclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAgIC5jb2xvcnMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQ7XHJcbiAgICAgIGNvbG9yOiAkZGFyaztcclxuICAgICAgZm9udC1zaXplOiAwLjhlbTtcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgLyotLS0tLS0tLS0tLS0tVGVzdC0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0cyAucHJvZHVjdC1pdGVtIC5idG4ge1xyXG4gICAgICBtYXgtd2lkdGg6IHVuc2V0O1xyXG4gICAgICBtaW4td2lkdGg6IHVuc2V0O1xyXG4gICAgfVxyXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgICAuc29uaWMtdG9vdGhicnVzaC0sXHJcbiAgICAuZGVudGFsLXdhdGVyLWZsb3NzZXItLFxyXG4gICAgLmRlbnRhbC13YXRlci1mbG9zc2VyLWNvdW50ZXItdG9wLFxyXG4gICAgLmRlbnRhbC13YXRlci1mbG9zc2VyLWNvcmRsZXNzLFxyXG4gICAgLmRlbnRhbC13YXRlci1mbG9zc2VyLXNwZWNpYWx0eSxcclxuICAgIC5kZW50YWwtd2F0ZXItZmxvc3Nlci1jbHViLW9ubHkge1xyXG4gICAgICAuY29sb3JzIHtcclxuICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgJGJsdWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZGVudGFsLXdhdGVyLWZsb3NzZXItd2hpdGVuaW5nIHtcclxuICAgICAgLmNvbG9ycyB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRwdXJwbGU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud2F0ZXItZmxvc3Nlci10b290aGJydXNoLSxcclxuICAgIC53YXRlci1mbG9zc2VyLXRvb3RoYnJ1c2gtY291bnRlci10b3AsXHJcbiAgICAud2F0ZXItZmxvc3Nlci10b290aGJydXNoLXdoaXRlbmluZyxcclxuICAgIC53YXRlci1mbG9zc2VyLXRvb3RoYnJ1c2gtY29yZGxlc3MsXHJcbiAgICAud2F0ZXItZmxvc3Nlci10b290aGJydXNoLXNwZWNpYWx0eSB7XHJcbiAgICAgIC5jb2xvcnMge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAkZ3JlZW47XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZmxvc3NpbmctdG9vdGhicnVzaC0sXHJcbiAgICAuZmxvc3NpbmctdG9vdGhicnVzaC1jb3VudGVyLXRvcCxcclxuICAgIC5mbG9zc2luZy10b290aGJydXNoLXdoaXRlbmluZyxcclxuICAgIC5mbG9zc2luZy10b290aGJydXNoLWNvcmRsZXNzLFxyXG4gICAgLmZsb3NzaW5nLXRvb3RoYnJ1c2gtc3BlY2lhbHR5IHtcclxuICAgICAgLmNvbG9ycyB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRvcmFuZ2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8qX19fX19fX19fX19fX19fX19fX19fX19fX19fKi9cclxuICAgIC5Nb2RlbE5hbWUge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGhlaWdodDogODVweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cclxuICAgICAgaDUsXHJcbiAgICAgIGgyLmNhcmQtdGl0bGUge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBhZGRpbmc6IDhweCA4cHggM3B4IDhweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAkd2hpdGUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGJvdHRvbTogLTVweDtcclxuICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGg1LFxyXG4gICAgICAgIGgyLmNhcmQtdGl0bGUge1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDUsXHJcbiAgICBoMi5jYXJkLXRpdGxlIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICBsaW5lLWhlaWdodDogMjhweDtcclxuICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICBjb2xvcjogJGRrZ3JleTtcclxuICAgIH1cclxuICAgIC8qc3BhbiB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICB9Ki9cclxuICAgIC5wcmljZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiB1bnNldDtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuYnRuIHtcclxuICAgICAgbWFyZ2luOiAwcHggYXV0byAxNXB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLnNob3Atbm93IHtcclxuICAgICAgd2lkdGg6IDkwJTtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuLnJvdW5kZWQge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIHBhZGRpbmc6IDBweCAxMHB4IDRweDtcclxuICAgICAgaGVpZ2h0OiAyNXB4O1xyXG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcblxyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBjb2xvcjogJGRrYmx1ZTtcclxuICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbXBhcmUgc3BhbiB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcclxuICAgICAgcGFkZGluZzogNHB4IDE1cHggNHB4O1xyXG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBib3JkZXI6IHNvbGlkIDFweCB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkbHRncmV5O1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBib3gtc2hhZG93OiAkZGtncmV5IDAgMCAycHggMnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRncmV5O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiI3skZm9udEF3ZXNvbWV9XCI7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDlweDtcclxuICAgICAgICBwYWRkaW5nOiAxcHggNnB4IDA7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGdyZWVuO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDY3XCI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jb21wYXJlLW9uIC5jb21wYXJlIHNwYW46YmVmb3JlIHtcclxuICAgICAgY29sb3I6ICRncmVlbjtcclxuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JlZW47XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNwcm9kdWN0TGlzdC5Db21wYXJlRnVsbCB7XHJcbiAgICAuY29tcGFyZSBzcGFuIHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogcmVkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbXBhcmUtb24gLmNvbXBhcmUgc3BhbiB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRncmVlbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnN0YXIge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogMTBweDtcclxuICBjb2xvcjogJGRrZ3JleTtcclxuICBtYXJnaW46IDBweCAwLjAyNXJlbTtcclxuXHJcbiAgJi5hY3RpdmUge1xyXG4gICAgY29sb3I6ICRka2JsdWU7XHJcbiAgfVxyXG5cclxuICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICB9XHJcbn1cclxuXHJcbi5leHBhbmQtY29udHJvbCB7XHJcbiAgcGFkZGluZzogNXB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogNXB4O1xyXG4gIHRvcDogNXB4O1xyXG5cclxuICBzcGFuIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4gICAgd2lkdGg6IDEycHg7XHJcbiAgICBoZWlnaHQ6IDJweDtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIDAuMjVzO1xyXG4gICAgcGFkZGluZzogMHB4O1xyXG5cclxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgcmlnaHQ6IDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuY29sbGFwc2VkIHtcclxuICAgIHNwYW4ge1xyXG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qKioqKioqKioqKioqKiogIFByb2R1Y3QgQ29tcGFyaXNvbiBHcmlkICoqKioqKioqKioqKioqKi9cclxuI0NvbXBhcmlzb25MaXN0IHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBib3R0b206IDA7XHJcbiAgYm94LXNoYWRvdzogJGJsYWNrIDAgMCA1cHggNXB4O1xyXG4gIGhlaWdodDogMTU1cHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRsdGdyZXk7XHJcblxyXG4gIGJ1dHRvbiB7XHJcbiAgICBtYXJnaW46IDRweDtcclxuXHJcbiAgICAmOmRpc2FibGVkIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogbGluZS10aHJvdWdoO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnJvdyB7XHJcbiAgICAubWVudSB7XHJcbiAgICAgIGhlaWdodDogMzVweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pdGVtQ29tcGFyZSB7XHJcbiAgICBoZWlnaHQ6IDEyMHB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICRsdGdyZXk7XHJcbiAgICB3aWR0aDogNTAlO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNDAlO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBmb250LWZhbWlseTogXCIjeyRmb250QXdlc29tZX1cIjtcclxuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiA3cHg7XHJcbiAgICAgIHBhZGRpbmc6IDFweCA2cHggMDtcclxuICAgICAgY29sb3I6ICRncmVlbjtcclxuICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGdyZWVuO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXI6YWZ0ZXIge1xyXG4gICAgICBjb2xvcjogcmVkO1xyXG4gICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIGhlaWdodDogOTVweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLml0ZW1Db3VudCB7XHJcbiAgICB3b3JkLXdyYXA6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAvKioqKioqKioqKioqKioqKioqKioqKiogZGVza3RvcCBzdHlsZSBmaXhlcyAqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAjQ29tcGFyaXNvbkxpc3Qge1xyXG4gICAgaGVpZ2h0OiAxMjVweDtcclxuXHJcbiAgICAuaXRlbUNvbXBhcmUge1xyXG4gICAgICBtYXgtd2lkdGg6IDI1JTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy93aHkgd2F0ZXJwaWsgcGFnZVxuI3N0eWxlLWd1aWRle1xuLmhlYWRlcntcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICRka2dyZXk7XG59XG4uZm9udHN7XG4gIGgxLGgyLGgzLGg0LGg1LGg2LHAsc3Ryb25ne1xuICAgICAgbWFyZ2luOjBweDtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICB9XG4gICAgYXtcbiAgICAgIG1hcmdpbjowcHg7XG4gICAgfVxuICAgIC5wYXJhZ3JhcGh7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgIH1cbiAgfVxuICAubGFiZWx7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbiAgLmJ0bi1zZWN0aW9ue1xuICAgIC5idG57XG4gICAgICBtYXJnaW46IDBweCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAzNTBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBsaXtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgfVxuICAgIC5ncmFkaWVudC1iYWNrZ3JvdW5ke1xuICAgICAgbGl7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vcHJvZHVjdCBkZXRhaWwgcGFnZVxuLnByb2R1Y3Qge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgfVxuXG4gIGgxIHtcbiAgICBmb250LWZhbWlseTogVXJiYW5pc3QsIGFyaWFsLCBzYW4tc2VyaWY7XG4gICAgZm9udC1zaXplOiAzLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogNTZweDtcbiAgICBjb2xvcjogJGJsdWU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4xcmVtO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5wcmljZSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuIiwiLnJlc2VhcmNoLWRldGFpbCB7XG4gICAgLmF1dGhvciB7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkZGtncmV5O1xuICAgIH1cblxuICAgIHAgYSB7XG4gICAgICAgIGNvbG9yOiRsdGJsdWU7XG4gICAgfVxufSIsIi5ibG9nLWRldGFpbCB7XHJcbiAgICBtYXgtd2lkdGg6IDg1MHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgLmJvcmRlci1iIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGRrZ3JleTtcclxuICAgICAgICBAaW5jbHVkZSBwYig1KTtcclxuICAgICAgICBAaW5jbHVkZSBtYig1KTtcclxuICAgIH1cclxuXHJcbiAgICBoMSB7XHJcbiAgICAgICAgY29sb3I6ICRibHVlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgcC5kYXRlIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMFxyXG4gICAgfVxyXG5cclxuICAgIHAuYXV0aG9yIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnYnk6ICc7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCA1cHggJGJsdWU7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3Rub3RlcyB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRka2dyZXk7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3ViIHtcclxuICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5zaGFyZSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRka2dyZXk7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRka2dyZXk7XHJcblxyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTg1cHgpIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNvY2lhbC1pY29ucyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1ODVweCkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIlxuLy9PQy9jc2NjL3BhZ2VzL3Byb2Zlc3Npb25hbHMuY3NzXG5cbi8vQmxvZyBwYWdlXG4ucHJvZmVzc2lvbmFscyB7XG4gICAgLmhlcm8ge1xuICAgICAgICAuc2VhbCB7XG4gICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOjc2OHB4KSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOjc2OHB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLmJhY2tncm91bmQucHJvZmVzc2lvbmFsIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL29yYWwtaGVhbHRoL3Byby9pbWFnZXMvcHJvZmVzc2lvbmFsLWJnLmpwZyk7XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAuZGlzcGxheS00IHtcclxuICAgICAgICBmb250LXNpemU6My41cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OjMuMnJlbTtcclxuICAgIH1cbn1cblxuQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDoxODAwcHgpIHtcbiAgICAuYmFja2dyb3VuZC5wcm9mZXNzaW9uYWwge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IC0xMDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHJcbiAgICB9XG4gICAgfSIsIi5ob21lSGVybyB7XG4gIEBleHRlbmQgJWJnLWdyYWRpZW50LWJsdWUtcmFkaWFsO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgLmgyLFxuICAuaDMsXG4gIC5oNCxcbiAgLmg1IHtcbiAgICBjb2xvcjogJGRrYmx1ZTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gIH1cblxuLy8gICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbi8vICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuLy8gICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIG1pbi1oZWlnaHQ6IDYwMHB4O1xuICB9XG5cbiAgLmRpc3BsYXktMiB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCAkYmxhY2s7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjhyZW07XG4gICAgfVxuXG4gICAgLy8gQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLy8gICBmb250LXNpemU6IDRyZW07XG4gICAgLy8gICBsaW5lLWhlaWdodDogMy44cmVtO1xuICAgIC8vIH1cbiAgfVxuXG4gIC5hZGEge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLmhlcm9Qcm9kdWN0cyB7XG4gIGEge1xuICAgIGNvbG9yOiAkZGtncmV5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICBoNiB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtNzVweDtcbiAgfVxufVxuIiwi77u/Ly90b3AgYm9yZGVyIGNvbG9yc1xyXG4ucGlsbGFyIHtcclxuICAmLndhdGVyLWZsb3NzZXIgLmhlcm8gLmNvbnRhaW5lcixcclxuICAudGFicyAucGlsbGFyLXRhYnMgLnB0YWIud2F0ZXItZmxvc3NlciB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAyZjg3O1xyXG4gIH1cclxuXHJcbiAgJi5jb3JkbGVzcyAuaGVybyAuY29udGFpbmVyLFxyXG4gIC50YWJzIC5waWxsYXItdGFicyAucHRhYi5jb3JkbGVzcyB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAgJHdhdGVyLWZsb3NzZXJzO1xyXG4gIH1cclxuXHJcbiAgJi5jb21wbGV0ZS1jYXJlIC5oZXJvIC5jb250YWluZXIsXHJcbiAgLnRhYnMgLnBpbGxhci10YWJzIC5wdGFiLmNvbXBsZXRlLWNhcmUge1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbXBsZXRlLWNhcmU7XHJcbiAgfVxyXG5cclxuICAmLnNvbmljLWZ1c2lvbiAuaGVybyAuY29udGFpbmVyLFxyXG4gIC50YWJzIC5waWxsYXItdGFicyAucHRhYi5zb25pYy1mdXNpb24ge1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHNvbmljLWZ1c2lvbjtcclxuICB9XHJcbiAgJi53aGl0ZW5pbmcgLmhlcm8gLmNvbnRhaW5lcixcclxuICAudGFicyAucGlsbGFyLXRhYnMgLnB0YWIud2hpdGVuaW5nIHtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICR3aGl0ZW5pbmc7XHJcbiAgfVxyXG4gIC8vYWN0aXZlIHRhYiBjb2xvcnNcclxuICAudGFicyAucGlsbGFyLXRhYnMgLnB0YWIuYWN0aXZlIHtcclxuICAgIGgzIHtcclxuICAgICAgY29sb3I6ICRsaWdodDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgIH1cclxuXHJcbiAgICAmLndhdGVyLWZsb3NzZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAyZjg3O1xyXG4gICAgfVxyXG5cclxuICAgICYuY29yZGxlc3Mge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2F0ZXItZmxvc3NlcnM7XHJcbiAgICB9XHJcblxyXG4gICAgJi5jb21wbGV0ZS1jYXJlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbXBsZXRlLWNhcmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5zb25pYy1mdXNpb24ge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc29uaWMtZnVzaW9uO1xyXG4gICAgfVxyXG4gICAgJi53aGl0ZW5pbmcge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGVuaW5nXHJcbiAgICB9XHJcblxyXG4gICAgXHJcbiAgfVxyXG4gIC8vQnJlYWRjcnVtYiBzdHlsZSBhbmQgcG9zaXRpb25cclxuICAuYnJlYWRjcnVtYnMge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XHJcbiAgICBmb250LXNpemU6IDEuMTVyZW07XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBtYXgtd2lkdGg6IDEzMDBweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNDBweDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIHdpZHRoOiA5MCU7XHJcbiAgICB6LWluZGV4OiA1MDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS41NXJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgLy9TdGFydCBoZXJvIHNlY3Rpb25cclxuICAuaGVybyB7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIEBleHRlbmQgJWJnLWdyYWRpZW50LWJsdWUtcmFkaWFsO1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTEwcHg7XHJcbiAgICB9XHJcbiAgICAvL3NwbGFzaCBhbmluaW1hdGlvbiBtYXliZSByZXBlYXRlZCBmcm9tIG1haW4gc3R5bGUgc2hlZXRcclxuICAgIC5zcGxhc2gge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICAgIHRvcDogMHB4O1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGFuaW1hdGlvbjogZmFkZS11cC1pbiBlYXNlIDNzIGZvcndhcmRzIDFzO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9vcmFsLWhlYWx0aC9pbWFnZXMvc3BsYXNoLnBuZ1wiKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICAgICAgICBib3R0b206IDEwJTtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIG1pbi13aWR0aDogNzAwcHg7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICBib3JkZXItdG9wOiBzb2xpZCAyNXB4O1xyXG4gICAgICBib3gtc2hhZG93OiAwIDVweCAxOXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICAgICAgcGFkZGluZzogMTAlIDUlO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aWR0aDogOTAlO1xyXG4gICAgICB6LWluZGV4OiA1O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDglO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiB1bnNldDtcclxuICAgICAgICBwYWRkaW5nOiA4MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm8taW1hZ2Uge1xyXG4gICAgICBAaW5jbHVkZSBteCgwKTtcclxuICAgICAgYm90dG9tOiAxMHB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC01MHB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMjAwcHg7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEyMCU7XHJcbiAgICAgIG1heC13aWR0aDogMzAwcHg7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgcmlnaHQ6IC0xMCU7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAgICAgcmlnaHQ6IC01JTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0zMDBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICBAaW5jbHVkZSBteChhdXRvKTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogNzUlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VhbCB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9vcmFsLWhlYWx0aC9pbWFnZXMvcGlsbGFycy9hZGEtbG9nby1uYXZ5LW1vYmlsZS5wbmdcIik7XHJcbiAgICAgIGhlaWdodDogMjAwcHg7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL29yYWwtaGVhbHRoL2ltYWdlcy9waWxsYXJzL2FkYS1sb2dvLW5hdnkucG5nXCIpO1xyXG4gICAgICAgIHdpZHRoOiAyMDBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5naCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL29yYWwtaGVhbHRoL2ltYWdlcy9waWxsYXJzL2FkYS1naC1sb2dvcy1uYXZ5LW1vYmlsZS5wbmdcIik7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9vcmFsLWhlYWx0aC9pbWFnZXMvcGlsbGFycy9hZGEtZ2gtbG9nb3MtbmF2eS5wbmdcIik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qU29uaWMgZnVzaW9uIG92ZXJyaWRlKi9cclxuICAmLnNvbmljLWZ1c2lvbiAuaGVybyAuaGVyby1pbWFnZSB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDBweDtcclxuICB9XHJcblxyXG4gIC50YWJzIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBpbmNsdWRlIG1iKDQpO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgQGluY2x1ZGUgbWIoMCk7XHJcbiAgICAgIHRvcDogLTUwcHg7XHJcbiAgICAgIHotaW5kZXg6IDY7XHJcbiAgICB9XHJcblxyXG4gICAgLnBpbGxhci10YWJzIHtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBAaW5jbHVkZSBteCg1KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnB0YWIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogc29saWQgN3B4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSkgIWltcG9ydGFudDtcclxuICAgICAgICBAaW5jbHVkZSBweSgzKTtcclxuICAgICAgICBAaW5jbHVkZSBteCgyKTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtYigzKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGE6aG92ZXIge1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbHRncmV5O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgY29sb3I6ICRka2dyZXk7XHJcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmhvdy10by11c2Uge1xyXG4gICAgQGluY2x1ZGUgcHkoNSk7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL29yYWwtaGVhbHRoL2ltYWdlcy9zcGxhc2gucG5nXCIpLFxyXG4gICAgICByYWRpYWwtZ3JhZGllbnQoOTElIDEwMCUsICMwMDVjYmMgMSUsICMwYzJlNmMgMTAwJSk7XHJcbiAgfVxyXG5cclxuICAuRkFRcyB7XHJcbiAgICBAaW5jbHVkZSBweSg1KTtcclxuICAgIGJhY2tncm91bmQ6ICRsdGdyZXk7XHJcblxyXG4gICAgaDIge1xyXG4gICAgICBmb250LXNpemU6IDMuMXJlbTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC1oZWFkZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbHRibHVlO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4tbGluayB7XHJcbiAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XHJcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjphY3RpdmUsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hY2NvcmRpb24gLmNhcmQgYnV0dG9uOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wcm9kdWN0LXNlbGVjdG9yIHtcclxuICAgIEBpbmNsdWRlIHBiKDApO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KDkxJSAxMDAlLCAjMDA1Y2JjIDElLCAjMGMyZTZjIDEwMCUpO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAuYW5pbWF0aW9uIHtcclxuICAgICAgQGluY2x1ZGUgbWIoMyk7XHJcbiAgICAgIEBpbmNsdWRlIHB0KDQpO1xyXG4gICAgICAvKmJhY2tncm91bmQtY29sb3I6ICNGOUVBRTE7Ki9cclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgIDE4MGRlZyxcclxuICAgICAgICByZ2JhKDI0OSwgMjM0LCAyMjUsIDEpIDUwJSxcclxuICAgICAgICByZ2JhKDcxLCA0LCAxMywgMCkgNTAlXHJcbiAgICAgICk7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBAaW5jbHVkZSBwdCgwKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbHRncmV5O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdmlkZW8ucm91bmRlZC1jaXJjbGUge1xyXG4gICAgICBAaW5jbHVkZSBwKDMpO1xyXG4gICAgICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBAaW5jbHVkZSBteCgwKTtcclxuICAgICAgQGluY2x1ZGUgcHgoMCk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBwcigwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmFuaW1hdGlvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgcCg1KTtcclxuICAgICAgICBAaW5jbHVkZSBtYigwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdmlkZW8ucm91bmRlZC1jaXJjbGUge1xyXG4gICAgICAgIEBpbmNsdWRlIHAoMCk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBweSgwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5leHBsb3JlIHtcclxuICAgIEBpbmNsdWRlIHB0KDUpO1xyXG4gICAgLypiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9vcmFsLWhlYWx0aC9pbWFnZXMvd2F0ZXItdGV4dHVyZS5wbmcnKTsqL1xyXG4gICAgaDIge1xyXG4gICAgICBmb250LXNpemU6IDMuMXJlbTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgICAgQGluY2x1ZGUgbXQoMyk7XHJcbiAgICB9XHJcblxyXG4gICAgLmltYWdlLXN3YXAge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBoZWlnaHQ6IDBweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDE0NSU7XHJcbiAgICAgIG1hcmdpbjogMCAzJTtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRibHVlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAuaW1hZ2Utc3dhcCBpbWcge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGE6aG92ZXIge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAuaW1hZ2Utc3dhcCBpbWcge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwi77u/LypQcmV2ZW50IGFuZCBQcm90ZWN0Ki9cclxuLnByZXZlbnQge1xyXG4gICAgLmhlcm8ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZSB1cmwoL29yYWwtaGVhbHRoL2xwL3ByZXZlbnQtcHJvdGVjdC9pbWFnZXMvaGVyby1tb2JpbGUuanBnKSBuby1yZXBlYXQgcmlnaHQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDg1dmg7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNzEwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIuMTI1cmVtO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIC5oZXJvIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9vcmFsLWhlYWx0aC9scC9wcmV2ZW50LXByb3RlY3QvaW1hZ2VzL2hlcm8uanBnKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDg1dmg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5iZy1ncmFkaWVudC1ibHVlIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgICBoMixcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qdmlkZW8gVGVzdGltb25pYWxzKi9cclxuICAgIC50ZXN0aW1vbmlhbC12aWRlby1zZWN0aW9uIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWIoMyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMnB4ICR3aGl0ZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCBlYXNlIDAuMjVzO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjI1cztcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRsdGJsdWU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnZpZGVvLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDU2LjI1JTtcclxuXHJcbiAgICAgICAgICAgIGlmcmFtZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIC50ZXN0aW1vbmlhbC12aWRlby1zZWN0aW9uIHtcclxuICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudmlkZW8td3JhcCB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tb3JlLXByb2R1Y3RzIHtcclxuICAgICAgICBwLFxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5idG4tY3RhIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIC5idG4tY3RhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCLvu78vL3RvcCBib3JkZXIgY29sb3JzXHJcbi5yaWdodHNvbHV0aW9uIHtcclxuICAgIC5wcm9kdWN0LXNlbGVjdG9yIHtcclxuICAgICAgICBAaW5jbHVkZSBwYigwKTtcclxuICAgICAgICBAZXh0ZW5kICViZy1ncmFkaWVudC1ibHVlLXJhZGlhbDtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgICAuYW5pbWF0aW9uMSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1iKDApO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwdCg0KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RUFFMTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCAxODBkZWcsIHJnYmEoMjQ5LCAyMzQsIDIyNSwgMSkgNTAlLCByZ2JhKDcxLCA0LCAxMywgMCkgNTAlICk7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB0KDApO1xyXG4gICAgICAgICAgICAgICAgLypiYWNrZ3JvdW5kLWNvbG9yOiAkbHRncmV5OyovXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHZpZGVvLnJvdW5kZWQtY2lyY2xlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcCgzKTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBteCgwKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcHgoMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHByKDApO1xyXG4gICAgICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByKDApO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYW5pbWF0aW9uMSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwKDUpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWIoMCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHZpZGVvLnJvdW5kZWQtY2lyY2xlIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHAoMCk7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHB5KDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBRTJFQSxBQUFBLENBQUMsQ0FBQztFQUNBLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUyxHQUNuQzs7QUFHRCxVQUFVO0VBQ1IsV0FBVyxFQUFFLFFBQVE7RUFDckIsVUFBVSxFQUFFLE1BQU07RUFDbEIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsR0FBRyxFQUFFLHVDQUF1QyxDQUFDLGVBQWUsRUFDMUQsc0NBQXNDLENBQUMsY0FBYzs7QUFJekQsVUFBVTtFQUNSLFdBQVcsRUFBRSxRQUFRO0VBQ3JCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLEdBQUcsRUFBRSxpQ0FBaUMsQ0FBQyxlQUFlLEVBQ3BELGdDQUFnQyxDQUFDLGNBQWM7O0FBSW5ELFVBQVU7RUFDUixXQUFXLEVBQUUsUUFBUTtFQUNyQixVQUFVLEVBQUUsTUFBTTtFQUNsQixXQUFXLEVBQUUsR0FBRztFQUNoQixHQUFHLEVBQUUseUNBQXlDLENBQUMsZUFBZSxFQUM1RCx3Q0FBd0MsQ0FBQyxjQUFjOztBQUkzRCxVQUFVO0VBQ1IsV0FBVyxFQUFFLFFBQVE7RUFDckIsVUFBVSxFQUFFLE1BQU07RUFDbEIsV0FBVyxFQUFFLEdBQUc7RUFDaEIs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SSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBbUM7SUFJN0MsU0FBUyxFQUFFLFNBQW1DLEdEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBbUM7SUFJN0MsU0FBUyxFQUFFLEdBQW1DLEdEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBbUM7SUFJN0MsU0FBUyxFQUFFLFNBQW1DLEdEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBbUM7SUFJN0MsU0FBUyxFQUFFLFNBQW1DLEdEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBbUM7SUFJN0MsU0FBUyxFQUFFLEdBQW1DLEdEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBbUM7SUFJN0MsU0FBUyxFQUFFLFNBQW1DLEdEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBbUM7SUFJN0MsU0FBUyxFQUFFLFNBQW1DLEdEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBbUM7SUFJN0MsU0FBUyxFQUFFLEdBQW1DLEdEV3JDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBbUM7SUFJN0MsU0FBUyxFQUFFLFNBQW1DLEdEV3JDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBbUM7SUFJN0MsU0FBUyxFQUFFLFNBQW1DLEdEV3JDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNiNUIsSUFB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 */
