@charset "UTF-8";
html {
  min-height: 100%;
  position: relative;
  font-family: "Questrial";
  font-weight: 300; }

@font-face {
  font-family: "FloIcons";
  src: url("/assets/fonts/FloIcons.eot");
  src: url("/assets/fonts/FloIcons.eot#iefix") format("embedded-opentype"), url("/assets/fonts/FloIcons.ttf") format("truetype"), url("/assets/fonts/FloIcons.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change      fonts */ }
  [class^="icon-"]:before, [class^="icon-"]:after, [class*=" icon-"]:before, [class*=" icon-"]:after {
    font-family: 'FloIcons' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.icon-Bell:before {
  content: "\e900"; }

.icon-Check:before {
  content: "\e920";
  color: #d13c38; }

.icon-Checkmark:before {
  content: "\e901"; }

.icon-Circle-Shower:before {
  content: "\e902"; }

.icon-Circle-Dishwasher:before {
  content: "\e903"; }

.icon-Circle-Faucet:before {
  content: "\e904"; }

.icon-Circle-Other:before {
  content: "\e905"; }

.icon-Circle-Toilet:before {
  content: "\e906"; }

.icon-Circle-Laundry:before {
  content: "\e907"; }

.icon-Closing-X:before {
  content: "\e908"; }

.icon-Envelope:before {
  content: "\e909"; }

.icon-Faucet:before {
  content: "\e90a"; }

.icon-Gear:before {
  content: "\e90f";
  color: #d13c38; }

.icon-Info:before {
  content: "\e90e";
  color: #d13c38; }

.icon-Phone:before {
  content: "\e90b"; }

.icon-PSI-Gauge:before {
  content: "\e90c"; }

.icon-Thermometer:before {
  content: "\e90d"; }

.icon-download-locked {
  font-size: 14px; }

@supports (font: -apple-system-body) {
  .login,
  .login .contactBlock .content a,
  .login form input,
  .login legend,
  .login form button,
  .login .forgot-password,
  .login .form .message-container .error-message {
    font: -apple-system-body !important; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

dt {
  font-weight: 700; }

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

blockquote {
  margin: 0 0 1rem; }

dfn {
  font-style: italic; }

b,
strong {
  font-weight: bolder; }

small {
  font-size: 80%; }

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

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

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

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

pre,
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

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

figure {
  margin: 0 0 1rem; }

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

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

table {
  border-collapse: collapse; }

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

th {
  text-align: inherit; }

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

button {
  border-radius: 0; }

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

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

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

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

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

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

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

textarea {
  overflow: auto;
  resize: vertical; }

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

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

progress {
  vertical-align: baseline; }

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

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

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

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

output {
  display: inline-block; }

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

template {
  display: none; }

[hidden] {
  display: none !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.figure {
  display: inline-block; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.order-first {
  order: -1; }

.order-last {
  order: 13; }

.order-0 {
  order: 0; }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.order-3 {
  order: 3; }

.order-4 {
  order: 4; }

.order-5 {
  order: 5; }

.order-6 {
  order: 6; }

.order-7 {
  order: 7; }

.order-8 {
  order: 8; }

.order-9 {
  order: 9; }

.order-10 {
  order: 10; }

.order-11 {
  order: 11; }

.order-12 {
  order: 12; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.form-control-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn, .input-group-lg > .input-group-prepend > .btn-landing,
.input-group-lg > .input-group-append > .btn, .input-group-lg > .input-group-append > .btn-landing, .account-creation-landing .search-bar-container .search-input,
.account-creation-landing .search-bar-container .search-input:focus,
.account-creation-landing .search-bar-container .search-input:active {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

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

.form-group {
  margin-bottom: 1rem; }
  .form-group .error-message {
    color: red; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.dropup,
.dropdown {
  position: relative; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split, .btn-group-lg > .btn-landing + .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-landing,
  .btn-group-vertical .btn-group {
    width: 100%; }
  .btn-group-vertical > .btn + .btn, .btn-group-vertical > .btn-landing + .btn, .btn-group-vertical > .btn + .btn-landing, .btn-group-vertical > .btn-landing + .btn-landing,
  .btn-group-vertical > .btn + .btn-group,
  .btn-group-vertical > .btn-landing + .btn-group,
  .btn-group-vertical > .btn-group + .btn,
  .btn-group-vertical > .btn-group + .btn-landing,
  .btn-group-vertical > .btn-group + .btn-group {
    margin-top: -1px;
    margin-left: 0; }
  .btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), .btn-group-vertical > .btn-landing:not(:last-child):not(.dropdown-toggle),
  .btn-group-vertical > .btn-group:not(:last-child) > .btn,
  .btn-group-vertical > .btn-group:not(:last-child) > .btn-landing {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; }
  .btn-group-vertical > .btn:not(:first-child), .btn-group-vertical > .btn-landing:not(:first-child),
  .btn-group-vertical > .btn-group:not(:first-child) > .btn,
  .btn-group-vertical > .btn-group:not(:first-child) > .btn-landing {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

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

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

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

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

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

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

.input-group > .input-group-prepend > .btn, .input-group > .input-group-prepend > .btn-landing,
.input-group > .input-group-prepend > .input-group-text,
.input-group > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .btn-landing,
.input-group > .input-group-append:not(:last-child) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .btn-landing: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 > .btn-landing,
.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) > .btn-landing,
.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 > .btn-landing:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

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

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

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0; }
  .custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    background-color: #007bff; }
  .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .custom-control-input:active ~ .custom-control-label::before {
    color: #fff;
    background-color: #b3d7ff; }
  .custom-control-input:disabled ~ .custom-control-label {
    color: #6c757d; }
    .custom-control-input:disabled ~ .custom-control-label::before {
      background-color: #e9ecef; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 768px) and (max-width: 992px) {
  .navbar-expand-md .navbar-nav .nav-link {
    font-size: 12px; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.badge-danger {
  color: #fff;
  background-color: #dc3545; }
  .badge-danger[href]:hover, .badge-danger[href]:focus {
    color: #fff;
    text-decoration: none;
    background-color: #bd2130; }

.badge-light {
  color: #212529;
  background-color: #f8f9fa; }
  .badge-light[href]:hover, .badge-light[href]:focus {
    color: #212529;
    text-decoration: none;
    background-color: #dae0e5; }

.badge-dark {
  color: #fff;
  background-color: #343a40; }
  .badge-dark[href]:hover, .badge-dark[href]:focus {
    color: #fff;
    text-decoration: none;
    background-color: #1d2124; }

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem; }
  @media (min-width: 576px) {
    .jumbotron {
      padding: 4rem 2rem; } }

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0; }

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem; }

.alert-heading {
  color: inherit; }

.alert-link {
  font-weight: 700; }

.alert-dismissible {
  padding-right: 4rem; }
  .alert-dismissible .close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.75rem 1.25rem;
    color: inherit; }

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

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

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

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

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

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

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

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

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

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

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  text-align: center;
  background-color: #007bff;
  transition: width 0.6s ease; }

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

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

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

.media-body {
  flex: 1; }

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

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit; }
  .list-group-item-action:hover, .list-group-item-action:focus {
    color: #495057;
    text-decoration: none;
    background-color: #f8f9fa; }
  .list-group-item-action:active {
    color: #212529;
    background-color: #e9ecef; }

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125); }
  .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
  .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem; }
  .list-group-item:hover, .list-group-item:focus {
    z-index: 1;
    text-decoration: none; }
  .list-group-item.disabled, .list-group-item:disabled {
    color: #6c757d;
    background-color: #fff; }
  .list-group-item.active {
    z-index: 2;
    color: #fff;
    background-color: #007bff;
    border-color: #007bff; }

.list-group-flush .list-group-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0; }

.list-group-flush:first-child .list-group-item:first-child {
  border-top: 0; }

.list-group-flush:last-child .list-group-item:last-child {
  border-bottom: 0; }

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff; }
  .list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
    color: #004085;
    background-color: #9fcdff; }
  .list-group-item-primary.list-group-item-action.active {
    color: #fff;
    background-color: #004085;
    border-color: #004085; }

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

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb; }
  .list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
    color: #155724;
    background-color: #b1dfbb; }
  .list-group-item-success.list-group-item-action.active {
    color: #fff;
    background-color: #155724;
    border-color: #155724; }

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb; }
  .list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
    color: #0c5460;
    background-color: #abdde5; }
  .list-group-item-info.list-group-item-action.active {
    color: #fff;
    background-color: #0c5460;
    border-color: #0c5460; }

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba; }
  .list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
    color: #856404;
    background-color: #ffe8a1; }
  .list-group-item-warning.list-group-item-action.active {
    color: #fff;
    background-color: #856404;
    border-color: #856404; }

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb; }
  .list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
    color: #721c24;
    background-color: #f1b0b7; }
  .list-group-item-danger.list-group-item-action.active {
    color: #fff;
    background-color: #721c24;
    border-color: #721c24; }

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

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

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5; }
  .close:hover, .close:focus {
    color: #000;
    text-decoration: none;
    opacity: .75; }
  .close:not(:disabled):not(.disabled) {
    cursor: pointer; }

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

.modal-open {
  overflow: hidden; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.carousel {
  position: relative; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.text-center, .home-protect .plans-features-table td:nth-child(2),
.home-protect .plans-features-table td:nth-child(3),
.home-protect .plans-features-table th:nth-child(2),
.home-protect .plans-features-table th:nth-child(3), .flo-detect .select-device-container th, .flo-detect .select-device-container td, .authorization .buttons, .email-unsubscribe .buttons {
  text-align: center !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

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

.card-body {
  margin-left: 20px;
  margin-right: 20px; }

.rc-slider {
  position: relative;
  height: 14px;
  padding: 5px 0;
  width: 100%;
  border-radius: 6px;
  -ms-touch-action: none;
  touch-action: none;
  box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rc-slider * {
  box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rc-slider-rail {
  position: absolute;
  width: 100%;
  background-color: #e9e9e9;
  height: 4px;
  border-radius: 6px; }

.rc-slider-track {
  position: absolute;
  left: 0;
  height: 4px;
  border-radius: 6px;
  background-color: #abe2fb; }

.rc-slider-handle {
  position: absolute;
  margin-left: -7px;
  margin-top: -5px;
  width: 14px;
  height: 14px;
  cursor: pointer;
  cursor: -webkit-grab;
  cursor: grab;
  border-radius: 50%;
  border: solid 2px #96dbfa;
  background-color: #fff;
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

.rc-slider-handle:hover {
  border-color: #57c5f7; }

.rc-slider-handle:active {
  border-color: #57c5f7;
  box-shadow: 0 0 5px #57c5f7;
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.rc-slider-handle:focus {
  border-color: #57c5f7;
  box-shadow: 0 0 0 5px #96dbfa;
  outline: none; }

.rc-slider-mark {
  position: absolute;
  top: 18px;
  left: 0;
  width: 100%;
  font-size: 12px; }

.rc-slider-mark-text {
  position: absolute;
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  color: #999; }

.rc-slider-mark-text-active {
  color: #666; }

.rc-slider-step {
  position: absolute;
  width: 100%;
  height: 4px;
  background: transparent; }

.rc-slider-dot {
  position: absolute;
  bottom: -2px;
  margin-left: -4px;
  width: 8px;
  height: 8px;
  border: 2px solid #e9e9e9;
  background-color: #fff;
  cursor: pointer;
  border-radius: 50%;
  vertical-align: middle; }

.rc-slider-dot-active {
  border-color: #96dbfa; }

.rc-slider-disabled {
  background-color: #e9e9e9; }

.rc-slider-disabled .rc-slider-track {
  background-color: #ccc; }

.rc-slider-disabled .rc-slider-handle,
.rc-slider-disabled .rc-slider-dot {
  border-color: #ccc;
  box-shadow: none;
  background-color: #fff;
  cursor: not-allowed; }

.rc-slider-disabled .rc-slider-mark-text,
.rc-slider-disabled .rc-slider-dot {
  cursor: not-allowed !important; }

.rc-slider-vertical {
  width: 14px;
  height: 100%;
  padding: 0 5px; }

.rc-slider-vertical .rc-slider-rail {
  height: 100%;
  width: 4px; }

.rc-slider-vertical .rc-slider-track {
  left: 5px;
  bottom: 0;
  width: 4px; }

.rc-slider-vertical .rc-slider-handle {
  margin-left: -5px;
  margin-bottom: -7px;
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.rc-slider-vertical .rc-slider-mark {
  top: 0;
  left: 18px;
  height: 100%; }

.rc-slider-vertical .rc-slider-step {
  height: 100%;
  width: 4px; }

.rc-slider-vertical .rc-slider-dot {
  left: 2px;
  margin-bottom: -4px; }

.rc-slider-vertical .rc-slider-dot:first-child {
  margin-bottom: -4px; }

.rc-slider-vertical .rc-slider-dot:last-child {
  margin-bottom: -4px; }

.rc-slider-tooltip-zoom-down-enter,
.rc-slider-tooltip-zoom-down-appear {
  animation-duration: .3s;
  animation-fill-mode: both;
  display: block !important;
  animation-play-state: paused; }

.rc-slider-tooltip-zoom-down-leave {
  animation-duration: .3s;
  animation-fill-mode: both;
  display: block !important;
  animation-play-state: paused; }

.rc-slider-tooltip-zoom-down-enter.rc-slider-tooltip-zoom-down-enter-active,
.rc-slider-tooltip-zoom-down-appear.rc-slider-tooltip-zoom-down-appear-active {
  animation-name: rcSliderTooltipZoomDownIn;
  animation-play-state: running; }

.rc-slider-tooltip-zoom-down-leave.rc-slider-tooltip-zoom-down-leave-active {
  animation-name: rcSliderTooltipZoomDownOut;
  animation-play-state: running; }

.rc-slider-tooltip-zoom-down-enter,
.rc-slider-tooltip-zoom-down-appear {
  transform: scale(0, 0);
  animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }

.rc-slider-tooltip-zoom-down-leave {
  animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }

@keyframes rcSliderTooltipZoomDownIn {
  0% {
    opacity: 0;
    transform-origin: 50% 100%;
    transform: scale(0, 0); }
  100% {
    transform-origin: 50% 100%;
    transform: scale(1, 1); } }

@keyframes rcSliderTooltipZoomDownOut {
  0% {
    transform-origin: 50% 100%;
    transform: scale(1, 1); }
  100% {
    opacity: 0;
    transform-origin: 50% 100%;
    transform: scale(0, 0); } }

.rc-slider-tooltip {
  position: absolute;
  left: -9999px;
  top: -9999px;
  visibility: visible;
  box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rc-slider-tooltip * {
  box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rc-slider-tooltip-hidden {
  display: none; }

.rc-slider-tooltip-placement-top {
  padding: 4px 0 8px 0; }

.rc-slider-tooltip-inner {
  padding: 6px 2px;
  min-width: 24px;
  height: 24px;
  font-size: 12px;
  line-height: 1;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: #6c6c6c;
  border-radius: 6px;
  box-shadow: 0 0 4px #d9d9d9; }

.rc-slider-tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.rc-slider-tooltip-placement-top .rc-slider-tooltip-arrow {
  bottom: 4px;
  left: 50%;
  margin-left: -4px;
  border-width: 4px 4px 0;
  border-top-color: #6c6c6c; }

.footer {
  bottom: 0;
  width: 100%;
  position: absolute;
  padding-bottom: 20px;
  background-color: #235a7f; }
  @media (max-width: 767.98px) {
    .footer {
      padding-bottom: 68px; } }
  .footer .footer-block {
    margin-top: 20px; }

.companyDisclosureLinks a {
  text-decoration: none;
  color: #fff;
  line-height: 100%; }
  .companyDisclosureLinks a:after {
    content: "∙";
    margin-left: 6px;
    margin-right: 6px; }

.companyDisclosureLinks span:last-child a:after {
  content: "";
  display: none; }

.contactBlock {
  color: white; }
  @media (max-width: 767.98px) {
    .contactBlock {
      margin-bottom: 40px; } }
  @media (min-width: 992px) {
    .contactBlock {
      margin-right: 120px; } }
  .contactBlock .icon:before {
    margin-right: 5px; }
  .contactBlock .content a {
    text-decoration: none;
    color: white;
    font-size: 1rem; }

.dialog-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.25);
  text-align: center;
  line-height: 100vh;
  z-index: 2;
  padding: 0px 20px; }
  .dialog-wrapper .dialog {
    min-width: 200px;
    max-width: 500px;
    background: white;
    margin: 0 auto;
    display: inline-block;
    line-height: normal; }
    .dialog-wrapper .dialog .message {
      font-size: 1.2rem;
      border: 3px solid #4292BE;
      padding: 16px 16px 10px 0;
      vertical-align: middle; }
      .dialog-wrapper .dialog .message > span {
        display: block;
        text-align: center;
        width: 100%; }
      .dialog-wrapper .dialog .message img {
        height: 125px; }
      .dialog-wrapper .dialog .message .message-block {
        display: inline-block;
        max-width: 400px;
        margin-top: 12px; }
  .dialog-wrapper button {
    display: inline-block;
    max-width: 100%;
    min-width: 50%;
    border: 3px solid #4292BE;
    margin-top: -3px;
    background: white;
    color: #4292BE;
    line-height: 2rem;
    font-weight: 600;
    padding-top: 6px;
    text-transform: uppercase; }
  .dialog-wrapper.four-buttons button {
    min-width: 25%; }
  .dialog-wrapper.ok button {
    width: 100%; }
  .dialog-wrapper.info .dialog .message {
    border-color: #4292BE; }
  .dialog-wrapper.info button {
    color: #4292BE;
    border-color: #4292BE; }
  .dialog-wrapper.info .slide-select {
    display: none; }
  .dialog-wrapper.warning .dialog .message {
    border-color: #FFB142; }
    .dialog-wrapper.warning .dialog .message:before {
      content: "!";
      width: 36px;
      height: 36px;
      border-radius: 18px;
      border: 2px solid #FFB142;
      display: inline-block;
      color: #FFB142;
      text-align: center;
      font-size: 2rem;
      line-height: 30px;
      font-weight: 600;
      margin: 4px 16px 4px 16px;
      padding: 0 0 0 1px;
      vertical-align: top; }
  .dialog-wrapper.warning button {
    color: #FFB142;
    border-color: #FFB142; }
  .dialog-wrapper.error .dialog .message, .dialog-wrapper.critical .dialog .message {
    border-color: #D73333;
    padding: 16px 16px 10px 16px; }
  .dialog-wrapper.error button, .dialog-wrapper.critical button {
    color: #D73333;
    border-color: #D73333; }
  .dialog-wrapper .input-wrapper {
    width: 100px;
    margin: 0 auto; }
    .dialog-wrapper .input-wrapper input {
      width: 100%;
      padding: 10px 0 4px 0;
      outline: none;
      border: none;
      border-bottom: thin solid #4292BE;
      font-size: 1.8rem; }
    .dialog-wrapper .input-wrapper label {
      position: absolute;
      cursor: text;
      color: #4292BE;
      font-weight: normal;
      font-size: 1.8rem;
      transition: 0.3s ease-out;
      background: transparent; }
    .dialog-wrapper .input-wrapper .label-input {
      position: relative;
      margin: 10px 0 8px 0; }
    .dialog-wrapper .input-wrapper .label {
      left: 0;
      top: -8px;
      font-size: 1.4rem;
      color: #4292BE;
      transition: 0.3s ease-out;
      font-weight: normal;
      padding-left: 0; }
    .dialog-wrapper .input-wrapper .placeholder {
      left: 0;
      top: 12px;
      transition: 0.3s ease-out;
      font-weight: normal; }
  .dialog-wrapper .inner-wrapper {
    display: inline-block;
    max-width: 400px;
    text-align: left;
    margin-left: 16px; }
    .dialog-wrapper .inner-wrapper .title {
      padding-top: 0;
      text-align: left;
      color: #164063; }
    .dialog-wrapper .inner-wrapper .message-block {
      text-align: left;
      font-size: 1.4rem; }
    .dialog-wrapper .inner-wrapper .slide-select {
      margin-top: 8px; }
      .dialog-wrapper .inner-wrapper .slide-select .controlName {
        margin-left: 0; }
    .dialog-wrapper .inner-wrapper.qr-code {
      text-align: center; }
      .dialog-wrapper .inner-wrapper.qr-code svg {
        width: 120px; }
  .dialog-wrapper.alarm-dialog.warning .dialog {
    background: #e6922a; }
    .dialog-wrapper.alarm-dialog.warning .dialog .buttons a {
      color: #e6922a; }
      .dialog-wrapper.alarm-dialog.warning .dialog .buttons a i:before {
        color: #e6922a; }
  .dialog-wrapper.alarm-dialog.critical .dialog {
    background: #970404; }
    .dialog-wrapper.alarm-dialog.critical .dialog .buttons a {
      color: #970404; }
      .dialog-wrapper.alarm-dialog.critical .dialog .buttons a i:before {
        color: #970404; }
  .dialog-wrapper.alarm-dialog .dialog {
    text-align: center;
    padding: 20px 50px;
    max-width: 400px;
    position: relative; }
    .dialog-wrapper.alarm-dialog .dialog .close {
      position: absolute;
      top: 6px;
      right: 10px;
      cursor: pointer;
      opacity: 1;
      text-shadow: none;
      width: 18px;
      height: 22px; }
      .dialog-wrapper.alarm-dialog .dialog .close i:before {
        color: white;
        font-size: 1.4rem; }
    .dialog-wrapper.alarm-dialog .dialog .alarm-bell {
      text-align: center; }
      .dialog-wrapper.alarm-dialog .dialog .alarm-bell:before {
        font-family: FloIcons;
        content: "\e900";
        color: white;
        font-size: 3rem; }
    .dialog-wrapper.alarm-dialog .dialog .title {
      text-align: center;
      font-size: 2rem;
      color: white; }
    .dialog-wrapper.alarm-dialog .dialog .message {
      border: none;
      text-align: center;
      color: white;
      font-size: 1.4rem;
      padding: 0;
      margin: 0 0 16px  0; }
      .dialog-wrapper.alarm-dialog .dialog .message:before {
        content: none; }
    .dialog-wrapper.alarm-dialog .dialog .buttons a {
      background: white;
      display: inline-block;
      width: 100%;
      padding: 8px 14px;
      color: black;
      border-radius: 6px;
      font-size: 1.4rem;
      margin: 4px 0;
      font-weight: 600;
      cursor: pointer;
      text-decoration: none; }
      .dialog-wrapper.alarm-dialog .dialog .buttons a i {
        float: right; }
        .dialog-wrapper.alarm-dialog .dialog .buttons a i:before {
          font-size: 1.8rem; }
        .dialog-wrapper.alarm-dialog .dialog .buttons a i.icon-Info {
          margin-right: 10px; }
        .dialog-wrapper.alarm-dialog .dialog .buttons a i.icon-Check {
          margin-right: -3px; }

.flo-group-togglebox {
  margin-top: 4px;
  height: 1rem; }
  .flo-group-togglebox .depressed-box.checkbox {
    border-radius: 25%;
    border: 1px solid #bfbfbf;
    box-shadow: inset 0px 1px 0px 0px rgba(0, 0, 0, 0.1);
    background: #fff;
    cursor: pointer;
    width: 0.9rem;
    height: 0.9rem;
    margin: 0 auto; }
  .flo-group-togglebox .depressed-box {
    padding-top: 1px; }
    .flo-group-togglebox .depressed-box[data-active="all"], .flo-group-togglebox .depressed-box[data-active="partial"] {
      background: #419bf0;
      border-color: #419bf0;
      box-shadow: none; }
      .flo-group-togglebox .depressed-box[data-active="all"]:before, .flo-group-togglebox .depressed-box[data-active="partial"]:before {
        color: white;
        font-size: 0.6rem;
        padding: 1px 0 0 1px;
        display: block; }
    .flo-group-togglebox .depressed-box.light[data-active="all"], .flo-group-togglebox .depressed-box.light[data-active="partial"] {
      background: #419bf0;
      box-shadow: none; }
  .flo-group-togglebox.disabled .depressed-box {
    border: 1px solid #c9c9c9; }
    .flo-group-togglebox.disabled .depressed-box[data-active="all"], .flo-group-togglebox.disabled .depressed-box[data-active="partial"] {
      background: #fff;
      border: 1px solid #c9c9c9;
      box-shadow: inset 0px 1px 0px 0px rgba(0, 0, 0, 0.05); }
      .flo-group-togglebox.disabled .depressed-box[data-active="all"]:before, .flo-group-togglebox.disabled .depressed-box[data-active="partial"]:before {
        color: #7b7b7b; }
    .flo-group-togglebox.disabled .depressed-box.light[data-active="all"], .flo-group-togglebox.disabled .depressed-box.light[data-active="partial"] {
      background: #fff;
      box-shadow: inset 0px 1px 0px 0px rgba(0, 0, 0, 0.05); }

.icon-IndeterminateCheckBox::before {
  height: 2px !important;
  width: 0.6rem !important;
  background-color: white;
  margin-left: 0.1rem;
  margin-top: 0.2rem;
  content: ""; }

.pagination {
  margin: 0 auto;
  font-weight: 600;
  text-transform: uppercase; }
  .pagination .previous, .pagination .next, .pagination .first {
    cursor: pointer; }
  .pagination .previous {
    margin-right: 20px; }
  .pagination .show-page {
    font-weight: 500; }

.telemetry-widget {
  cursor: default; }
  .telemetry-widget .context {
    font-weight: 600; }
  .telemetry-widget .unit {
    padding: 0 0 0 2px; }
  .telemetry-widget .context, .telemetry-widget .value {
    text-align: center;
    line-height: 1.2rem; }
  @media (min-width: 576px) {
    .telemetry-widget .wrapper {
      display: inline-block;
      margin-left: 20px; }
    .telemetry-widget .context, .telemetry-widget .value {
      text-align: left;
      line-height: 1.2rem; } }

.telemetry-widget::before {
  color: #73d352;
  font-size: 2.2rem; }

.no-device .telemetry-widget {
  color: #797979; }
  .no-device .telemetry-widget:before, .no-device .telemetry-widget .context {
    color: #797979; }

.white-logo {
  padding: 5px 0px; }

.bigger-logo {
  height: 45px;
  margin: 0px 6px 0px 6px; }

.big-logo {
  height: 35px;
  margin: 0px 6px 0px 6px; }

.medium-logo {
  height: 25px;
  margin: 0px 5px 0px 5px; }

.small-logo {
  height: 20px;
  margin: -1px 4px 0px 4px; }

.slide-select, .toggle {
  display: inline-block; }
  .slide-select.state .pillSlider, .toggle.state .pillSlider {
    width: 77px;
    height: 22px; }
  .slide-select.state .pill, .toggle.state .pill {
    width: 40px;
    height: 22px; }
  .slide-select .pillSlider, .toggle .pillSlider {
    width: 160px;
    height: 22px; }
  .slide-select .pill, .toggle .pill {
    width: 59px;
    height: 22px; }
  .slide-select .controlName, .toggle .controlName {
    font-weight: 600;
    display: inline-block;
    margin: 4px 15px 0px 0px;
    vertical-align: top;
    text-transform: capitalize; }

.pillSlider {
  border-radius: 15px;
  background: #E7E7E7;
  position: relative;
  cursor: pointer;
  display: inline-block;
  vertical-align: text-top; }
  .pillSlider .states {
    position: absolute; }
    .pillSlider .states span {
      display: inline-block;
      margin: 3px 8px 0px 12px;
      text-transform: capitalize;
      font-size: 0.9rem;
      font-weight: 300;
      color: #797979; }
      .pillSlider .states span.active {
        color: #103657; }
  .pillSlider .pill {
    z-index: 0;
    border-radius: 15px;
    background: #70d549;
    padding: 2px 0;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    transition: all .25s ease-out; }
  .pillSlider .pill.disabled {
    background: #c2c5c0; }

.pillSlider.transitioning {
  background: linear-gradient(45deg, #ecebeb, #ccffc3);
  background-size: 400% 400%;
  -webkit-animation: PillGradient 2s ease infinite;
  -moz-animation: PillGradient 2s ease infinite;
  animation: PillGradient 2s ease infinite; }

@-moz-keyframes PillGradient {
  0% {
    background-position: 0% 50%; }
  50% {
    background-position: 100% 50%; }
  100% {
    background-position: 0% 50%; } }

@keyframes PillGradient {
  0% {
    background-position: 0% 50%; }
  50% {
    background-position: 100% 50%; }
  100% {
    background-position: 0% 50%; } }

@-webkit-keyframes PillGradient {
  0% {
    background-position: 0% 50%; }
  50% {
    background-position: 100% 50%; }
  100% {
    background-position: 0% 50%; } }

.search-bar-component {
  width: 100%; }
  .search-bar-component .error-message {
    position: absolute !important;
    z-index: 10;
    overflow: hidden; }

.search-bar-container .search-input-container {
  position: relative; }

.search-bar-container .search-input,
.search-bar-container .search-input:focus,
.search-bar-container .search-input:active {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.08);
  border: honeydew;
  display: block;
  width: 100%;
  padding: 16px;
  font-size: 16px;
  border-radius: 2px;
  outline: none; }

.search-bar-container .clear-button,
.search-bar-container .clear-button:active,
.search-bar-container .clear-button:focus {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  outline: none;
  font-weight: 600;
  color: #999; }

.search-bar-container .autocomplete-container {
  border-bottom: honeydew;
  border-left: honeydew;
  border-right: honeydew;
  border-top: 1px solid #e6e6e6;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  border-radius: 0 0 2px 2px;
  /* Position the suggestions after the search input but floating */
  position: absolute !important;
  z-index: 1000;
  overflow: hidden; }
  @media (max-width: 575.98px) {
    .search-bar-container .autocomplete-container {
      min-width: 75.8%; } }
  @media (min-width: 576px) and (max-width: 767.98px) {
    .search-bar-container .autocomplete-container {
      min-width: 60.3%; } }
  @media (min-width: 768px) and (max-width: 991.98px) {
    .search-bar-container .autocomplete-container {
      min-width: 60.3%; } }
  @media (min-width: 992px) and (max-width: 1199.98px) {
    .search-bar-container .autocomplete-container {
      min-width: 32.3%; } }
  @media (min-width: 1200px) {
    .search-bar-container .autocomplete-container {
      min-width: 30.3%; } }

.search-bar-container .suggestion-item {
  padding: 8px;
  text-align: left;
  background-color: #fff;
  cursor: pointer; }

.search-bar-container .suggestion-item--active {
  background-color: #fafafa; }

.search-bar-container .dropdown-footer {
  display: flex;
  justify-content: flex-end;
  background-color: #fff;
  border-top: 1px solid #e9e9e9;
  padding: 4px; }

.search-bar-container .dropdown-footer-image {
  display: inline-block;
  width: 150px; }

.search-bar-container .error-message {
  color: red; }

.data-download .fa-lock {
  color: black; }

/*
  Animation is here since we can't do this in JS with inline styles :(
*/
@keyframes skeletonAnimation {
  0% {
    opacity: 0.8; }
  50% {
    opacity: 0.4; }
  100% {
    opacity: 0.8; } }

.pending-div {
  color: grey !important;
  background-color: grey !important;
  animation-name: skeletonAnimation;
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
  animation-timing-function: linear; }

.login {
  height: 100%; }
  .login .login-logo {
    margin-top: 80px;
    margin-bottom: 50px;
    max-width: 160px; }
  .login .floIcon {
    margin: 0 0 28px 0; }
    .login .floIcon .title {
      font-size: 3rem;
      font-weight: 100;
      color: #164063;
      display: inline-block;
      margin: 14px 0 0 16px; }
    .login .floIcon img {
      float: left;
      margin: 4px 7px 0 0;
      max-width: 64px; }
  .login .form {
    margin-bottom: 50px; }
    .login .form .message-container {
      text-align: left; }
      .login .form .message-container .error-message {
        font-size: 1rem;
        text-align: left;
        color: #D73333;
        font-weight: 600;
        letter-spacing: .05rem; }
    .login .form input.invalid {
      color: #D73333;
      border-color: #D73333; }
    .login .form input.invalid::placeholder {
      color: #D73333; }
    .login .form .flo-submit-btn.disabled {
      background: #797979; }
  .login.password-reset .floIcon .title {
    font-size: 2.6rem; }
  .login .forgot-password {
    font-size: 1rem;
    text-transform: uppercase;
    color: #797979;
    text-decoration: underline;
    cursor: pointer;
    font-weight: 600;
    margin: 14px 0 0 0; }
  .login > #FloModal .message {
    padding: 16px;
    line-height: 2.2rem; }
  .login .btn-green {
    background-color: #70d549;
    border-color: #70d549; }
  .login .btn-green:hover {
    background-color: #56a339;
    border-color: #498F33; }
  .login .btn-green.disabled {
    background: #797979; }
  .login legend {
    border: none; }
  .login .text-danger {
    color: #E64759 !important; }
  .login .footer {
    word-break: break-word;
    overflow-wrap: break-word;
    position: relative;
    padding: 5px 0px 25px 0px; }

.tk-questrial > #app:has(.login) {
  margin-bottom: 0 !important; }

.alerts-log .icon-Bell:before {
  margin-right: 5px; }

.alerts-log .critical-alerts-subtitle, .alerts-log .warning-alerts-subtitle {
  text-transform: uppercase; }
  .alerts-log .critical-alerts-subtitle + hr, .alerts-log .warning-alerts-subtitle + hr {
    margin: -2px 0 0;
    border-top-width: 2px; }

.alerts-log .critical-alerts-subtitle {
  color: #D73333; }
  .alerts-log .critical-alerts-subtitle + hr {
    background: #D73333; }

.alerts-log .warning-alerts-subtitle {
  color: #FFB142; }
  .alerts-log .warning-alerts-subtitle + hr {
    background: #FFB142; }

.alerts-log .table-list tbody tr {
  cursor: pointer; }
  .alerts-log .table-list tbody tr td:first-child {
    text-transform: initial; }
  .alerts-log .table-list tbody tr td.system_mode_text, .alerts-log .table-list tbody tr td.severity {
    text-transform: capitalize; }

.alerts-log .table-list.warning-alerts thead th {
  color: #FFB142; }

.alerts-log .table-list.critical-alerts thead th {
  color: #D73333; }

.alerts-log .clear-alerts {
  text-transform: uppercase;
  text-decoration: underline;
  color: #797979;
  cursor: pointer;
  font-weight: 600;
  display: inline-block;
  margin-top: 1.6rem; }

.alerts-log .warning-alerts .column-head {
  color: #FFB142; }

.alerts-log .critical-alerts .column-head {
  color: #D73333; }

.alerts-log .column.message {
  color: #164063;
  font-weight: normal; }

.alerts-log .column.type {
  max-width: 80px; }

.alerts-log .column.severity.warning {
  color: #FFB142; }

.alerts-log .column.severity.critical {
  color: #D73333; }

.alerts-log .column.datetime {
  font-weight: normal; }

/*============================================================
PRICING STYLES
=============================================================*/
.btn-subscribe {
  border: 2px solid #979797;
  width: 75%; }

@media (max-width: 575px) {
  .btn-subscribe {
    width: 90%; } }

.btn-subscribe .fa-check {
  color: #4A90E2; }

.btn-subscribe:hover {
  background-color: #D2D2D2;
  color: #000; }

.btn-subscribe-pro {
  color: #fff;
  opacity: 1;
  background-color: #1DD491;
  border: none; }

.btn-subscribe-delinquent {
  color: #fff;
  opacity: 1;
  background-color: #FF9720;
  border: none; }

.btn-subscribe-pro .fa-check {
  color: #fff; }

.btn-subscribe-pro:hover {
  color: #fff;
  background-color: #16AA74; }

.btn-subscribe-pro:disabled {
  opacity: 1 !important;
  background-color: #174266; }

.pricing {
  margin-top: 50px;
  text-align: center;
  color: #000000;
  border: 1px solid #D2D2D2;
  background-color: white; }

@media (min-width: 576px) {
  .pricing {
    margin-bottom: 30px; } }

@media (max-width: 575px) {
  .pricing {
    margin-bottom: 0px; } }

.pricing .plan-details {
  text-align: left;
  margin: 15px auto 0; }

.pricing .plan-details ul {
  cursor: default !important;
  list-style: none;
  line-height: 30px;
  font-size: 13px;
  padding: 0px 7% 30px 7%;
  width: fit-content;
  margin: 0 auto; }

.pricing .plan-details ul li a {
  cursor: pointer !important; }

.pricing .plan-details ul li a i {
  margin-right: 5px; }

.pro ul {
  font-weight: 600; }

@media (max-width: 575px) {
  .pro ul {
    position: relative;
    margin-left: 4% !important; }
  .pro ul li {
    line-height: 20px;
    margin: 10px 0px; }
  .pro ul li:before {
    content: "+";
    position: absolute;
    left: 4px; } }

.pricing .plan {
  padding: 20px;
  font-size: 1.6rem;
  color: #FFFFFF;
  border-bottom: 1px solid #EBEBEB; }

.pricing .description {
  padding: 20px 20px;
  font-weight: bold;
  text-align: center; }

.pricing .pricing-footer {
  padding: 20px; }

.pricing .plan .icon-Circle-Other {
  color: #fff; }

.attached > .col-lg-4,
.attached > .col-lg-3,
.attached > .col-md-4,
.attached > .col-md-3,
.attached > .col-sm-4,
.attached > .col-sm-3 {
  padding-left: 0;
  padding-right: 0; }

.pricing.pro {
  z-index: 1;
  margin-top: 10px;
  box-shadow: 0px 4px 60px 0 rgba(0, 0, 0, 0.3), 0 6px 20px 0 rgba(0, 0, 0, 0.19); }

.pricing.basic {
  color: #6D6D6D; }

.pricing.basic .description {
  font-weight: normal; }

.pricing .basic-plan {
  background-color: #F6FAFF;
  color: #19476D;
  font-weight: 400; }

.pricing .pro-plan {
  background-color: #174266; }

.pricing .pro-plan .fa-shield-alt {
  margin-top: 5px;
  margin-left: -15px;
  margin-right: 1%; }

.home-protect .card-header {
  text-transform: capitalize; }

.home-protect .card-header:after {
  display: none; }

@media (min-width: 576px) {
  .home-protect .card.home-protect-content {
    padding: 20px 20px 0px 20px; } }

@media (max-width: 575px) {
  .home-protect .card.home-protect-content {
    padding: 0; } }

.home-protect h1 {
  color: #333333;
  text-align: center; }

.home-protect h2 {
  color: #333333;
  margin-bottom: 30px; }

.home-protect h3 {
  color: #333333;
  font-weight: 300; }

.home-protect .home-protect-content .wrapper .card-body {
  margin-left: 0px;
  margin-right: 0px; }

.home-protect .short-description {
  margin: 10px;
  color: #333333;
  line-height: 22px; }

.home-protect .drip-logo-container img {
  -webkit-transform: scale(0.6);
  /* Saf3.1+, Chrome */
  -moz-transform: scale(0.6);
  /* FF3.5+ */
  -ms-transform: scale(0.6);
  /* IE9 */
  -o-transform: scale(0.6);
  /* Opera 10.5+ */
  transform: scale(0.6); }

.home-protect .answer {
  color: #777777;
  font-weight: 300;
  line-height: 22px;
  margin-bottom: 40px; }

.home-protect .press-logos {
  padding: 20px 12%; }

.home-protect .plans-features-table {
  margin-top: 40px;
  color: black; }

.home-protect .plans-features-table button {
  width: 100%; }

.home-protect .plans-features-table th {
  border: none;
  padding: 12px 10px; }

.home-protect .plans-features-table th:nth-of-type(2) {
  font-weight: 500; }

.home-protect .plans-features-table th:last-child {
  background-color: #1c486c;
  color: #fff; }

.home-protect .plans-features-table tr:nth-of-type(odd) td {
  background-color: #FAFAFA; }

.home-protect .plans-features-table tr:last-child td {
  background-color: #fff; }

.home-protect .plans-features-table tr, .home-protect .table th {
  border: none; }

.home-protect .plans-features-table td, .home-protect .plans-features-table th {
  border-right: 4px solid #fff;
  border-left: 4px solid #fff;
  border-top: none;
  border-bottom: none; }

.credit-card-payment {
  margin: 15px 15px 30px 15px; }
  .credit-card-payment .current-credit-card .cc-number {
    padding-left: 20px; }
  .credit-card-payment .current-credit-card .cc-expiration {
    padding-left: 15px; }
  .credit-card-payment .update-payment-link {
    margin-top: 16px; }
  .credit-card-payment .credit-card-info {
    font-size: 16px; }

.credit-card-payment label {
  font-weight: 400; }

.credit-card-payment .row {
  margin-top: 20px;
  font-weight: 300; }

.credit-card-payment .price {
  font-size: 1.2rem;
  padding: 7px;
  background-color: #1DD491;
  color: #fff; }

.credit-card-payment .plan-details ul {
  list-style-type: none;
  padding-left: 0px; }

.credit-card-payment .plan-details ul li {
  font-weight: 300;
  display: flex; }

.credit-card-payment .plan-details ul li .plan-icon {
  color: #9B9B9B;
  display: flex;
  flex-basis: 22px;
  margin-top: 2px; }

.credit-card-payment .plan-details ul li .plan-text {
  display: flex;
  flex-grow: 1; }

.credit-card-payment .btn-checkout {
  width: 100%;
  margin: 30px 0px 15px 0px; }

.green {
  color: rgba(105, 220, 85, 0.64); }

.pro-plan .pricing-title {
  vertical-align: middle;
  line-height: 50px; }

.popover-icon {
  color: #6D6D6D;
  margin-left: 5px; }

.pro .additional-info {
  text-align: left;
  font-weight: 300;
  padding: 0px 16% 0 9%;
  margin: 20px 0px 0px 0px; }

.home-protect-banner {
  background-color: #F6FAFF; }

.home-protect-banner img {
  margin-top: 40px;
  margin-bottom: 20px; }

.home-protect-banner h3 {
  color: #333333;
  font-family: "PT Sans";
  font-weight: bold; }

.home-protect-banner p {
  padding: 0% 11%;
  color: #333333;
  font-family: "PT Sans";
  line-height: 19px; }

@media (min-width: 576px) {
  .home-protect-banner p {
    margin-bottom: 40px; } }

@media (max-width: 575px) {
  .home-protect-banner p {
    margin-bottom: 0px; }
  .home-protect-banner .col-md-4:last-child {
    margin-bottom: 40px; } }

/*============================================================
STRIPE ELEMENTS STYLES
=============================================================*/
.StripeElement {
  background-color: white;
  height: 40px;
  padding: 10px 12px;
  border-radius: 4px;
  border: 1px solid transparent;
  box-shadow: 0 1px 3px 0 #e6ebf1;
  -webkit-transition: box-shadow 150ms ease;
  transition: box-shadow 150ms ease; }

.StripeElement--focus {
  box-shadow: 0 1px 3px 0 #cfd7df; }

.StripeElement--invalid {
  border-color: #fa755a; }

.StripeElement--webkit-autofill {
  background-color: #fefde5 !important; }

/*============================================================
PAYMENTS SUCCESS STYLES
=============================================================*/
/** Page-specific styles */
@keyframes spin {
  0% {
    transform: rotate(0deg); }
  to {
    transform: rotate(1turn); } }

@keyframes void-animation-out {
  0%,
  to {
    opacity: 1; } }

.checkout.submitted .success,
.checkout.submitting .success {
  pointer-events: all; }

.checkout.submitting .success .icon {
  opacity: 1; }

.checkout.submitted .success > * {
  opacity: 1;
  transform: none !important; }

.checkout.submitted .success > :nth-child(2) {
  transition-delay: 0.1s; }

.checkout.submitted .success > :nth-child(3) {
  transition-delay: 0.2s; }

.checkout.submitted .success > :nth-child(4) {
  transition-delay: 0.3s; }

.checkout.submitted .success .icon .border,
.checkout.submitted .success .icon .checkmark {
  opacity: 1;
  stroke-dashoffset: 0 !important; }

.checkout.submitted .success .lg-text {
  font-size: 16px; }

.checkout.submitted .success .btn-subscribe-pro {
  margin-top: 18px; }

.checkout form {
  position: relative;
  width: 100%;
  max-width: 500px;
  transition-property: opacity, transform;
  transition-duration: 0.35s;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1); }

.checkout.submitted .credit-card-payment,
.checkout.submitting .credit-card-payment {
  opacity: 0;
  transform: scale(0.9);
  pointer-events: none; }

.checkout .success {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  text-align: center;
  pointer-events: none;
  overflow: hidden; }

.checkout .success > * {
  transition-property: opacity, transform;
  transition-duration: 0.35s;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 0;
  transform: translateY(50px); }

.checkout .success .icon {
  margin: 15px 0 30px;
  transform: translateY(70px) scale(0.75); }

.checkout .success .icon svg {
  will-change: transform; }

.checkout .success .icon .border {
  stroke-dasharray: 251;
  stroke-dashoffset: 62.75;
  transform-origin: 50% 50%;
  transition: stroke-dashoffset 0.35s cubic-bezier(0.165, 0.84, 0.44, 1);
  animation: spin 1s linear infinite; }

.checkout .success .icon .checkmark {
  stroke-dasharray: 60;
  stroke-dashoffset: 60;
  transition: stroke-dashoffset 0.35s cubic-bezier(0.165, 0.84, 0.44, 1) 0.35s; }

.checkout .success .reset:active {
  transition-duration: 0.15s;
  transition-delay: 0s;
  opacity: 0.65; }

.checkout .success .reset svg {
  will-change: transform; }

.checkout .success .icon .border {
  stroke: #abe9d2; }

.checkout .success .icon .checkmark {
  stroke: #24b47e; }

.checkout .success .reset path {
  fill: #24b47e; }

.floprotect-terms {
  color: #9e9e9e;
  font-weight: 300; }

.cancel-subscription-modal {
  min-height: 462px; }

.cancel-subscription {
  margin: 15px !important; }
  .cancel-subscription .reason-form .reason-title {
    font-size: 15px; }
  .cancel-subscription .reason-form textarea {
    background-color: #F0F0F2;
    border-color: #F0F0F2; }
  .cancel-subscription .reason-form .form-group {
    margin-bottom: 9px !important; }
  .cancel-subscription .benefits-screen {
    color: #6D6D6D; }
    .cancel-subscription .benefits-screen ul {
      margin: 0;
      padding: 10px 0 0 15px; }
    .cancel-subscription .benefits-screen ul.dashed {
      list-style-type: none; }
    .cancel-subscription .benefits-screen ul.dashed > li {
      text-indent: -5px; }
    .cancel-subscription .benefits-screen ul.dashed > li:before {
      content: "- ";
      text-indent: -5px; }
    .cancel-subscription .benefits-screen span {
      font-size: 15px; }
    .cancel-subscription .benefits-screen .footer-text span {
      font-size: 14px; }
    .cancel-subscription .benefits-screen .warning {
      font-size: 16px;
      color: #000; }
  .cancel-subscription .btn-cancel-subscription {
    width: 47%;
    margin: 30px 0px 15px 0px;
    font-size: 16px; }
  .cancel-subscription .btn-continue {
    float: right; }
  .cancel-subscription .btn-back {
    border-color: #1DD491;
    color: #fff;
    opacity: 1;
    background-color: #1DD491; }

@media (min-width: 768px) {
  .home-protect .card.home-protect-content .order-md-12 {
    margin-left: -1px; } }

.flo-protect-banner {
  margin: 40px 0; }
  .flo-protect-banner .row {
    margin-bottom: 30px; }
    .flo-protect-banner .row .image-wrapper {
      text-align: right;
      border-right: 3px solid #a9bec8; }
      .flo-protect-banner .row .image-wrapper img {
        max-height: 70px; }
    .flo-protect-banner .row .banner-details {
      color: #0b3256; }
      .flo-protect-banner .row .banner-details h5 {
        font-size: 22px;
        font-weight: bold; }
      .flo-protect-banner .row .banner-details span {
        font-size: 16px; }

@media (min-width: 992px) {
  .flo-protect-banner {
    padding-left: 110px;
    padding-right: 110px; }
    .flo-protect-banner .image-wrapper {
      padding-right: 30px !important; }
    .flo-protect-banner .banner-details {
      padding-left: 30px !important; } }

.settings-notifications tr.title-row {
  cursor: pointer;
  border-width: 3px;
  border-bottom: 2px solid;
  text-transform: uppercase; }
  .settings-notifications tr.title-row.critical {
    border-color: #D73333;
    color: #D73333; }
  .settings-notifications tr.title-row.warning {
    border-color: #FFB142;
    color: #FFB142; }
  .settings-notifications tr.title-row.info {
    border-color: rgba(105, 220, 85, 0.64);
    color: rgba(105, 220, 85, 0.64); }
  .settings-notifications tr.title-row td:first-child:before {
    content: ">";
    display: inline-block;
    transition: all .1s ease-out;
    margin-right: 10px; }
  .settings-notifications tr.title-row.open td:first-child:before {
    transform: rotate(90deg); }

.settings-notifications td {
  text-transform: uppercase;
  padding: 6px 10px; }
  .settings-notifications td.alarm-name {
    font-weight: 600;
    padding: 6px 0 6px 20px; }
  .settings-notifications td.water-shutoff {
    padding: 6px 0 6px 40px !important; }
  .settings-notifications td:first-child {
    padding: 6px 10px 6px 18px; }

.settings-notifications .card .card-header .title {
  float: left;
  margin-top: 6px; }

.settings-notifications .card .card-header .device-dropdown {
  float: left;
  margin-left: 12px; }

.settings-notifications .card-header:after {
  margin-top: 3.3rem; }

.no-device .settings-notifications .wrapper tr.title-row {
  cursor: default; }

.no-device .flo-group-togglebox .depressed-box {
  background: #797979 !important;
  cursor: default; }

.flo-detect .alert {
  width: 100%; }

.flo-detect .select-device-container {
  margin-bottom: 1rem;
  padding-top: 15px;
  padding-bottom: 15px; }
  .flo-detect .select-device-container .fixture-type-column {
    width: 200px; }
  .flo-detect .select-device-container .select-device-label {
    margin-right: 10px; }
  .flo-detect .select-device-container .looks-good-column .toggle-container {
    text-align: center; }
    .flo-detect .select-device-container .looks-good-column .toggle-container .feedback-dropdown-container {
      margin-top: 10px; }

.flo-detect .submit-button-container {
  text-align: center; }

.account-creation-landing {
  background-color: #fff; }
  .account-creation-landing .main-container {
    padding-bottom: 250px; }
  .account-creation-landing .multi-step-indicator {
    margin: 30px; }
  .account-creation-landing .buttons .btn-landing {
    margin: 0px 5px; }
  .account-creation-landing .address {
    width: 305px;
    font-size: 24px;
    font-weight: bold;
    line-height: 30px;
    margin: 25px auto 10px auto; }
  .account-creation-landing .confirmation-question {
    font-size: 16px;
    line-height: 19px;
    color: #848080;
    font-weight: 300; }
  .account-creation-landing .header-logo {
    margin: 0px 20px;
    width: 55px; }
  .account-creation-landing .header {
    padding: 20px 0; }
  .account-creation-landing .header-text {
    color: #77869B;
    font-weight: 300; }
  .account-creation-landing .jumbotron {
    background: url("/assets/images/background.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    margin-bottom: 0rem; }
    .account-creation-landing .jumbotron h1 {
      color: #333333;
      font-family: "PT Sans";
      font-size: 30px;
      font-weight: bold;
      letter-spacing: 0.3px;
      line-height: 28px; }
    .account-creation-landing .jumbotron .short-description {
      max-width: 588px;
      color: #333333;
      font-size: 18px;
      letter-spacing: 0.1px;
      line-height: 24px;
      margin: 15px 0px; }
    @media (min-width: 576px) {
      .account-creation-landing .jumbotron .form-places-search {
        margin: 30px 0px 80px 0px; }
        .account-creation-landing .jumbotron .form-places-search .form-group-search {
          margin-right: 10px;
          width: 35%; } }
    @media (max-width: 575px) {
      .account-creation-landing .jumbotron .form-places-search {
        margin: 30px 0px 30px 0px;
        display: block; }
        .account-creation-landing .jumbotron .form-places-search .form-group-search {
          margin: 0 auto 20px;
          width: 80%; } }
    .account-creation-landing .jumbotron .form-places-search .search-bar-component input {
      border: 1px solid #333333;
      box-shadow: none;
      padding: 10px 10px 10px 40px;
      background-image: url(/assets/images/marker@2x.png);
      background-position: 12px 14px;
      background-repeat: no-repeat;
      background-size: 14px; }
    .account-creation-landing .jumbotron .form-places-search .search-bar-component input::placeholder {
      color: #BBBBBB;
      font-family: "PT Sans";
      font-size: 15px;
      line-height: 19px;
      font-weight: 300; }
    .account-creation-landing .jumbotron .form-places-search .search-bar-component .clear-button {
      display: none; }
    @media (max-width: 575px) {
      .account-creation-landing .jumbotron .form-places-search .search-bar-component {
        margin-bottom: 45px; }
        .account-creation-landing .jumbotron .form-places-search .search-bar-component .error-message {
          max-width: 95%;
          margin-left: -10%; } }
    .account-creation-landing .jumbotron .form-places-search button {
      padding: 12px;
      border-radius: 4px;
      background-color: #1DD491;
      color: #FFFFFF;
      font-family: "PT Sans";
      font-size: 15px; }
    .account-creation-landing .jumbotron .press-logos {
      width: 70%; }
  .account-creation-landing .light-bulb {
    width: 22px;
    margin: -5px 10px 0px 10px; }
  .account-creation-landing .did-you-know {
    padding: 10px;
    font-weight: 300;
    color: #77869B;
    background-color: #F8FAFE; }
  @media (min-width: 576px) {
    .account-creation-landing .how-it-works {
      margin: 0px 40px 40px; } }
  .account-creation-landing .how-it-works h2 {
    color: #77869B;
    font-size: 1.35rem;
    font-weight: bold;
    letter-spacing: 1.25px;
    margin: 25px 0px; }
  .account-creation-landing .how-it-works .step {
    border-radius: 50%;
    max-width: 36px;
    height: 36px;
    padding: 2px;
    color: #fff;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 300;
    background-color: #19476D;
    margin: 0 auto; }
  .account-creation-landing .how-it-works .step-description {
    color: #333333;
    font-size: 16px;
    line-height: 20px;
    margin: 25px 0px 35px 0px; }
  .account-creation-landing .how-it-works .how-it-works-note {
    max-width: 580px;
    color: #BBBBBB;
    font-size: 11px;
    letter-spacing: 0.06px;
    line-height: 13px;
    font-weight: 300;
    margin: 0 auto; }
  .account-creation-landing .home-protect-features {
    background-color: #F8FAFE;
    padding-top: 40px; }
    @media (min-width: 576px) {
      .account-creation-landing .home-protect-features {
        margin: 40px;
        padding-bottom: 70px; } }
    @media (max-width: 575px) {
      .account-creation-landing .home-protect-features {
        margin: 20px 0px 0px 0px;
        padding-bottom: 0px; } }
    .account-creation-landing .home-protect-features h2 {
      color: #333333;
      font-family: "PT Sans";
      font-size: 18px;
      font-weight: 400;
      line-height: 22px;
      letter-spacing: 0px; }
    .account-creation-landing .home-protect-features .shield {
      width: 22px;
      margin-top: -5px; }
    .account-creation-landing .home-protect-features h3 {
      color: #000000;
      font-family: "PT Sans";
      font-size: 24px;
      line-height: 32px;
      margin-bottom: 40px;
      margin-top: 20px; }
    .account-creation-landing .home-protect-features .home-Protect-feature {
      margin-bottom: 50px; }
      .account-creation-landing .home-protect-features .home-Protect-feature h4 {
        color: #333333;
        font-family: "PT Sans";
        font-size: 1.1rem;
        font-weight: bold;
        letter-spacing: 0.25px;
        margin: 12px 0px; }
      .account-creation-landing .home-protect-features .home-Protect-feature p {
        margin: 0px 40px;
        font-weight: 300; }
  .account-creation-landing .main-review {
    text-align: left; }
    @media (min-width: 576px) {
      .account-creation-landing .main-review {
        margin: 40px; } }
    @media (max-width: 575px) {
      .account-creation-landing .main-review {
        margin: 20px 0px 0px 0px; } }
    .account-creation-landing .main-review h3 {
      color: #77869B;
      font-family: "PT Sans"; }
      @media (min-width: 576px) {
        .account-creation-landing .main-review h3 {
          font-size: 38px; } }
      @media (max-width: 575px) {
        .account-creation-landing .main-review h3 {
          font-size: 1.5rem; } }
    .account-creation-landing .main-review p {
      color: #333333;
      font-family: "PT Sans";
      font-size: 16px;
      line-height: 20px;
      margin: 20px 0px; }
    .account-creation-landing .main-review strong {
      color: #333333;
      font-family: "PT Sans";
      font-size: 16px;
      font-weight: bold; }
    @media (max-width: 575px) {
      .account-creation-landing .main-review h3, .account-creation-landing .main-review p, .account-creation-landing .main-review strong {
        margin-left: 20px;
        margin-right: 20px; } }
  .account-creation-landing .reviews {
    margin-top: 20px; }
    @media (min-width: 576px) {
      .account-creation-landing .reviews {
        margin: 40px; } }
    @media (max-width: 575px) {
      .account-creation-landing .reviews {
        margin: 20px 0px 0px 0px; } }
    .account-creation-landing .reviews h3 {
      font-family: "PT Sans";
      font-size: 24px;
      font-weight: bold;
      line-height: 32px;
      margin-bottom: 20px; }
    .account-creation-landing .reviews img {
      max-width: 50%; }
    @media (max-width: 575px) {
      .account-creation-landing .reviews img {
        max-width: 90%; } }
    .account-creation-landing .reviews p {
      max-width: 603px;
      color: #333333;
      font-family: "PT Sans";
      font-size: 16px;
      line-height: 20px;
      margin: 30px auto; }
  @media (min-width: 576px) {
    .account-creation-landing .what-includes {
      margin: 40px; } }
  @media (max-width: 575px) {
    .account-creation-landing .what-includes {
      margin: 20px 0px 0px 0px; } }
  .account-creation-landing .what-includes .image {
    padding: 0px; }
  .account-creation-landing .what-includes .description {
    color: #FFFFFF;
    font-family: "PT Sans";
    background-color: #77869B; }
    .account-creation-landing .what-includes .description div {
      margin-top: 28%;
      padding-bottom: 28%; }
      .account-creation-landing .what-includes .description div h3 {
        font-size: 24px;
        line-height: 32px;
        font-weight: 400; }
      .account-creation-landing .what-includes .description div p {
        font-size: 18px;
        margin: 10px; }
  .account-creation-landing .entire-home-protection {
    padding: 40px;
    background-color: #F8FAFE; }
    .account-creation-landing .entire-home-protection h3 {
      color: #77869B;
      font-family: "PT Sans";
      font-size: 1.3rem;
      letter-spacing: 1.25px;
      line-height: 23px; }
    .account-creation-landing .entire-home-protection .price {
      color: #333333;
      font-family: "PT Sans";
      font-size: 1.4rem;
      line-height: 26px;
      margin: 20px 0px 7px 0px; }
      .account-creation-landing .entire-home-protection .price strong {
        font-size: 1.9rem; }
    .account-creation-landing .entire-home-protection .installation-cost {
      color: #77869B;
      font-family: "PT Sans";
      font-size: 13px;
      line-height: 18px; }
    .account-creation-landing .entire-home-protection button {
      padding: 12px 20px;
      font-size: 1.2rem; }
    @media (max-width: 575px) {
      .account-creation-landing .entire-home-protection button {
        font-size: 1rem; } }
    .account-creation-landing .entire-home-protection .details {
      color: #77869B;
      font-family: "PT Sans";
      font-size: 15px;
      line-height: 19px;
      margin-top: 30px; }
      .account-creation-landing .entire-home-protection .details span {
        margin-right: 25px; }
        .account-creation-landing .entire-home-protection .details span .fa-check {
          margin: 0px 10px;
          color: #1DD491; }
  .account-creation-landing .saves-in {
    padding: 30px 0px 70px 0px; }
    .account-creation-landing .saves-in h4 {
      color: #333333;
      font-size: 16px;
      font-weight: bold;
      line-height: 19px; }
    .account-creation-landing .saves-in p {
      max-width: 300px;
      color: #333333;
      font-family: "PT Sans";
      font-size: 16px;
      line-height: 20px;
      margin: 10px auto 0; }
  .account-creation-landing .fa-circle {
    color: darkgray;
    margin: 0px 10px;
    font-size: 0.7rem; }
  .account-creation-landing .fa-circle.active {
    color: black; }
  .account-creation-landing .footer {
    padding: 20px 0px 30px 0px;
    background-color: #19476D; }
    .account-creation-landing .footer .footer-block {
      color: #FFFFFF;
      font-family: "PT Sans";
      font-size: 16px;
      line-height: 20px; }
      .account-creation-landing .footer .footer-block img {
        width: 65px; }
      .account-creation-landing .footer .footer-block .text {
        margin-top: 15px; }

.landing-header {
  background-color: white;
  border-bottom: 1px solid #d9d9d9;
  -webkit-box-shadow: 0 5px 6px -5px #d9d9d9;
  -moz-box-shadow: 0 5px 6px -5px #d9d9d9;
  box-shadow: 0 5px 6px -5px #d9d9d9; }

.btn-landing {
  padding: 12px 40px;
  border-radius: 4px;
  font-family: "PT Sans";
  font-size: 15px;
  min-width: 200px; }

.btn-primary-landing {
  background-color: #1DD491;
  color: #FFFFFF; }

.btn-secondary-landing {
  background-color: #fff;
  color: #5f5f5f;
  border: 1px solid #989898; }

.btn-light-blue-landing {
  color: #fff;
  background-color: #10A3E8; }

.modal .btn-landing {
  margin: 0 auto; }

.account-creation-landing.user-creation h1 {
  font-size: 24px;
  font-weight: 600;
  line-height: 30px;
  margin: 30px 0px 5px 0px; }

.account-creation-landing.user-creation h2 {
  color: #718094;
  font-size: 16px;
  line-height: 19px;
  letter-spacing: 1px;
  font-weight: 300; }

.account-creation-landing.user-creation small {
  color: #77869B;
  font-weight: 300; }
  .account-creation-landing.user-creation small a {
    margin-left: 2px; }

.account-creation-landing.user-creation .form {
  margin: 30px 0px 20px 0px; }

.account-creation-landing.user-creation .form-control {
  border-radius: 0rem;
  padding: 7px 17px; }

.account-creation-landing.user-creation .form-control::placeholder {
  color: #B8B8B8;
  font-family: "PT Sans";
  font-size: 15px;
  line-height: 19px;
  font-weight: 300; }

.account-creation-landing.user-creation .fa-check-circle {
  color: #1DD491; }

.account-creation-landing.user-creation .btn-landing {
  padding: 7px;
  font-weight: 300; }

.account-creation-landing.email-confirmation h1 {
  font-size: 24px;
  font-weight: 600;
  line-height: 30px;
  margin: 30px 0px 10px 0px; }

.account-creation-landing.email-confirmation h2 {
  width: 610.5px;
  color: #77869B;
  font-size: 16px;
  line-height: 19px;
  letter-spacing: 1px;
  font-weight: 300;
  margin: 0 auto; }

.account-creation-landing.email-confirmation .envelope {
  width: 100px;
  margin-top: 20px; }

.account-creation-landing.email-confirmation .btn-landing {
  padding: 7px;
  font-weight: 300;
  margin: 30px auto 0px auto; }

.account-creation-landing.email-confirmed h1 {
  font-size: 24px;
  font-weight: 600;
  line-height: 30px;
  margin: 30px 0px 5px 0px; }

.account-creation-landing.email-confirmed h2 {
  color: #77869B;
  font-size: 16px;
  line-height: 19px;
  letter-spacing: 1px;
  font-weight: 300;
  margin: 0 auto; }

.account-creation-landing.email-confirmed .fa-check-circle {
  color: #1DD491; }

.authorization .row {
  margin: 0px 20px; }

.authorization .card-container {
  margin: 30px auto 100px auto; }

.authorization .floIcon {
  margin-bottom: 20px; }
  .authorization .floIcon .title {
    font-size: 2rem;
    font-weight: 100;
    color: #164063;
    margin-top: 10px; }
  .authorization .floIcon img {
    max-width: 30%; }

.authorization h3 {
  color: #164063; }

.authorization h4 {
  color: #70d549; }

.authorization .details {
  margin-top: 20px;
  margin-bottom: 20px; }

.authorization ul.details-list {
  list-style-type: disc; }

.authorization .buttons .btn, .authorization .buttons .btn-landing {
  margin: 0px 5px; }

.email-unsubscribe .row {
  margin: 0px 20px; }

.email-unsubscribe .card-container {
  margin: 30px auto; }

.email-unsubscribe .floIcon {
  margin-bottom: 20px; }
  .email-unsubscribe .floIcon .title {
    font-size: 2rem;
    font-weight: 100;
    color: #164063;
    margin-top: 10px; }
  .email-unsubscribe .floIcon img {
    max-width: 30%; }

.email-unsubscribe h3 {
  color: #164063; }

.email-unsubscribe .details {
  margin-top: 20px;
  margin-bottom: 20px; }

.email-unsubscribe ul.details-list {
  list-style-type: disc; }

.email-unsubscribe .buttons .btn, .email-unsubscribe .buttons .btn-landing {
  margin: 0px 5px; }

.insurance-letter .btn-primary, .insurance-letter .btn-primary:disabled, .insurance-letter .btn-primary.disabled {
  background-color: #1DD491;
  border: none; }

.insurance-letter .btn-primary:hover {
  background-color: #16AA74; }

.insurance-letter .btn-primary:active, .insurance-letter .btn-primary:focus {
  background-color: #148e5d !important; }

.insurance-letter .non-sub.letter .banner {
  opacity: 0.85;
  background-color: #1c486c;
  color: white; }
  .insurance-letter .non-sub.letter .banner a {
    color: #1DD491; }

.deductible-guarantee h2 {
  font-weight: 200;
  margin-bottom: 1rem !important; }

.deductible-guarantee .subtitle a {
  color: inherit;
  text-decoration: underline; }

.deductible-guarantee .card {
  padding: 1.25rem; }
  .deductible-guarantee .card .status {
    padding: 0px 0 14px 0; }
    .deductible-guarantee .card .status .status-badge {
      font-size: 95%;
      background-color: #D73333;
      padding-right: 9px;
      padding-left: 9px;
      padding-top: 5px; }
    .deductible-guarantee .card .status .status-badge.badge-on {
      background-color: #89CF64;
      color: white; }
    .deductible-guarantee .card .status .status-badge.badge-warning {
      background-color: #FFB141;
      color: white; }
    .deductible-guarantee .card .status .status-title {
      font-weight: 600;
      display: inline-block;
      margin: 2px 15px 0px 0px;
      vertical-align: top;
      text-transform: uppercase; }
  .deductible-guarantee .card .inner-card {
    background-color: #48647F;
    padding: 36px;
    color: white; }
    .deductible-guarantee .card .inner-card .title {
      font-size: 19px;
      margin: 0 0 15px 0;
      font-weight: 600; }
    .deductible-guarantee .card .inner-card .description {
      font-size: 16px;
      margin: 0 0 15px 0;
      font-weight: 300; }
    .deductible-guarantee .card .inner-card .flo-protect-link {
      font-weight: 400;
      text-transform: uppercase; }
      .deductible-guarantee .card .inner-card .flo-protect-link a {
        color: #60D096; }
  .deductible-guarantee .card .inner-card.subscribed-alerts .title {
    font-weight: 400;
    overflow: auto;
    margin: 0 0 12px 0; }
    .deductible-guarantee .card .inner-card.subscribed-alerts .title .icon {
      float: left;
      margin-right: 15px; }
      .deductible-guarantee .card .inner-card.subscribed-alerts .title .icon .border {
        stroke: #abe9d2; }
      .deductible-guarantee .card .inner-card.subscribed-alerts .title .icon .checkmark {
        stroke: #24b47e; }
    .deductible-guarantee .card .inner-card.subscribed-alerts .title .label {
      margin-top: 8px;
      font-weight: 300;
      font-size: 20px; }
    .deductible-guarantee .card .inner-card.subscribed-alerts .title .label.with-alerts {
      margin-top: 0px; }
    .deductible-guarantee .card .inner-card.subscribed-alerts .title .alerts {
      float: left;
      margin-right: 15px; }
      .deductible-guarantee .card .inner-card.subscribed-alerts .title .alerts .alerts-count {
        padding: 5px 10px;
        font-size: 19px;
        font-weight: 400;
        line-height: 1;
        color: #FFF; }
      .deductible-guarantee .card .inner-card.subscribed-alerts .title .alerts .warning, .deductible-guarantee .card .inner-card.subscribed-alerts .title .alerts .info {
        background-color: #FFB142 !important; }
      .deductible-guarantee .card .inner-card.subscribed-alerts .title .alerts .critical {
        background-color: #D91C1D !important; }
  .deductible-guarantee .card .inner-card.subscribed-alerts .see-all {
    font-weight: 300; }
    .deductible-guarantee .card .inner-card.subscribed-alerts .see-all a {
      color: inherit;
      text-decoration: underline; }
  .deductible-guarantee .card .inner-card.subscribed-alerts .view-alerts {
    margin-top: 28px; }
    .deductible-guarantee .card .inner-card.subscribed-alerts .view-alerts .alerts-button {
      font-size: 17px;
      font-weight: 300;
      line-height: 2;
      padding: 11px 46px;
      background-color: #A3B2BF; }

.location-selector {
  margin-top: 15px;
  min-height: 34px; }
  .location-selector .location-dropdown {
    float: left;
    min-width: 300px; }
    .location-selector .location-dropdown .dropdown-toggle {
      background-color: transparent !important;
      border: none !important;
      font-size: 18px;
      color: #000;
      outline: none;
      outline-color: transparent; }
  .location-selector .system-mode {
    float: left;
    margin-left: 30px;
    padding-top: 5px; }
  @media (max-width: 767.98px) {
    .location-selector .location-dropdown {
      float: none;
      text-align: center; }
    .location-selector .system-mode {
      float: none;
      margin: 10px 0 10px 0;
      text-align: center; } }
  .location-selector .single-location {
    font-size: 16px;
    padding-top: 7px; }
  .location-selector .loader-wrapper {
    display: flex;
    width: 20px;
    padding-top: 10px;
    margin-left: 60px; }
    .location-selector .loader-wrapper .loader {
      border: 3px solid #f3f3f3;
      border-radius: 50%;
      border-top: 3px solid #3498db;
      width: 20px;
      height: 20px;
      margin: auto;
      -webkit-animation: spin 2s linear infinite;
      /* Safari */
      animation: spin 2s linear infinite; }

.detector-telemetry-stats {
  margin: 32px 140px; }
  .detector-telemetry-stats .detector-telemetry-widget .detector-icon {
    height: 116px; }
  .detector-telemetry-stats .detector-telemetry-widget .icon-battery_12 {
    background: url("/assets/images/battery_icon_12.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70px; }
  .detector-telemetry-stats .detector-telemetry-widget .icon-battery_25 {
    background: url("/assets/images/battery_icon_25.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70px; }
  .detector-telemetry-stats .detector-telemetry-widget .icon-battery_50 {
    background: url("/assets/images/battery_icon_50.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70px; }
  .detector-telemetry-stats .detector-telemetry-widget .icon-battery_75 {
    background: url("/assets/images/battery_icon_75.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70px; }
  .detector-telemetry-stats .detector-telemetry-widget .icon-battery_100 {
    background: url("/assets/images/battery_icon_100.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70px; }
  .detector-telemetry-stats .detector-telemetry-widget .icon-humidity {
    background: url("/assets/images/humidity_icon.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70px; }
  .detector-telemetry-stats .detector-telemetry-widget .icon-temperature {
    background: url("/assets/images/temperature_icon.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70px; }
  .detector-telemetry-stats .detector-telemetry-widget .detector-name {
    font-size: 14px; }
  .detector-telemetry-stats .detector-telemetry-widget .detector-value {
    font-size: 30px; }
  @media (min-width: 992px) {
    .detector-telemetry-stats .detector-telemetry-widget .detector-name {
      font-size: 20px; }
    .detector-telemetry-stats .detector-telemetry-widget .detector-value {
      font-size: 40px; } }
  @media (max-width: 575.98px) {
    .detector-telemetry-stats .detector-telemetry-widget .detector-name {
      font-size: 20px; }
    .detector-telemetry-stats .detector-telemetry-widget .detector-value {
      font-size: 40px; } }

@media (max-width: 991.98px) {
  .detector-telemetry-stats {
    margin: 32px 0px; } }

@media (min-width: 576px) {
  .row.vertical-divider {
    overflow: hidden; }
  .row.vertical-divider > div[class^="col-"] {
    text-align: center;
    padding-bottom: 100px;
    margin-bottom: -100px;
    border-left: 1px solid #E2E2E2;
    border-right: 1px solid #E2E2E2; }
  .row.vertical-divider div[class^="col-"]:first-child {
    border-left: none; }
  .row.vertical-divider div[class^="col-"]:last-child {
    border-right: none; } }

.add-shutoff-device-banner {
  background: url("/assets/images/upsell_shutoff_banner_bg_px.png");
  background-color: #A8C3CF;
  margin-bottom: 14px;
  width: 100%; }
  .add-shutoff-device-banner .background-box {
    background: url("/assets/images/upsell_shutoff_banner_bg.png");
    background-repeat: no-repeat;
    min-height: 140px;
    width: 100%; }
    .add-shutoff-device-banner .background-box .header-section {
      height: 30px; }
      .add-shutoff-device-banner .background-box .header-section .close-icon-wrapper {
        float: right;
        margin: 3px 3px 0 0;
        cursor: pointer; }
        .add-shutoff-device-banner .background-box .header-section .close-icon-wrapper img {
          height: 34px; }
    .add-shutoff-device-banner .background-box .content-section {
      margin: 0px 10px 10px 180px; }
      .add-shutoff-device-banner .background-box .content-section .content-wrapper {
        margin: 0;
        padding: 0; }
        .add-shutoff-device-banner .background-box .content-section .content-wrapper .shutoff-text {
          margin: 13px 0 0 0;
          padding-left: 30px;
          color: white;
          font-size: 19px; }
        @media (min-width: 992px) and (max-width: 1199.98px) {
          .add-shutoff-device-banner .background-box .content-section .content-wrapper .shutoff-text {
            padding-left: 42px; } }
        @media (min-width: 576px) and (max-width: 767.98px) {
          .add-shutoff-device-banner .background-box .content-section .content-wrapper .shutoff-text {
            padding-left: 66px;
            font-size: 14px; } }
        @media (max-width: 575.98px) {
          .add-shutoff-device-banner .background-box .content-section .content-wrapper .shutoff-text {
            padding-left: 66px;
            font-size: 13px; } }
        .add-shutoff-device-banner .background-box .content-section .content-wrapper .drop-icon img {
          height: 100px; }
      .add-shutoff-device-banner .background-box .content-section .button-wrapper {
        margin: 16px 0 0 0; }
        .add-shutoff-device-banner .background-box .content-section .button-wrapper .add-shutoff-button {
          font-size: 17px;
          font-weight: 300;
          line-height: 2;
          padding: 8px 40px;
          color: #5C6E85;
          background-color: #ffffff; }
        @media (min-width: 992px) and (max-width: 1199.98px) {
          .add-shutoff-device-banner .background-box .content-section .button-wrapper .add-shutoff-button {
            font-size: 14px;
            padding: 8px 25px; } }
        @media (max-width: 575.98px) {
          .add-shutoff-device-banner .background-box .content-section .button-wrapper .add-shutoff-button {
            font-size: 14px; } }
      @media (max-width: 991.98px) {
        .add-shutoff-device-banner .background-box .content-section .button-wrapper {
          margin: 4px 0 12px 0;
          text-align: center; } }
  @media (min-width: 1200px) {
    .add-shutoff-device-banner .background-box {
      background-size: 100%; } }
  @media (min-width: 992px) and (max-width: 1199.98px) {
    .add-shutoff-device-banner .background-box {
      background-size: 1100px; } }
  @media (min-width: 768px) and (max-width: 991.98px) {
    .add-shutoff-device-banner .background-box {
      background-size: 1542px;
      background-position-x: -28px; } }
  @media (min-width: 576px) and (max-width: 767.98px) {
    .add-shutoff-device-banner .background-box {
      background-size: 1600px;
      background-position-x: -58px; } }
  @media (max-width: 575.98px) {
    .add-shutoff-device-banner .background-box {
      background-size: 1544px;
      background-position-x: -58px; } }

.email-confirmation h1 {
  font-size: 24px;
  font-weight: 600;
  line-height: 30px;
  margin: 30px 0px 40px 0px; }

.email-confirmation h2 {
  color: #77869B;
  font-size: 16px;
  line-height: 19px;
  letter-spacing: 1px;
  font-weight: 300;
  margin: 0 auto; }

.email-confirmation .envelope {
  width: 100px;
  margin-top: 20px; }

.email-confirmation .btn-landing {
  padding: 7px;
  font-weight: 300;
  margin: 30px auto 0px auto; }

.email-confirmation .confirmation-message {
  margin-top: 55px; }
  .email-confirmation .confirmation-message .title-error {
    color: #ff0000c7; }
  .email-confirmation .confirmation-message .title-success {
    color: #60D096; }

.email-confirmation .loader-wrapper {
  min-height: 190px;
  padding-top: 120px; }
  .email-confirmation .loader-wrapper .loader {
    border: 5px solid #f3f3f3;
    border-radius: 50%;
    border-top: 5px solid #3498db;
    width: 80px;
    height: 80px;
    margin: auto;
    -webkit-animation: spin 2s linear infinite;
    /* Safari */
    animation: spin 2s linear infinite; }

.email-confirmation .main-container {
  padding-bottom: 80px; }

.account-confirmation h1 {
  font-size: 24px;
  font-weight: 600;
  line-height: 30px;
  margin: 30px 0px 40px 0px; }

.account-confirmation h2 {
  color: #77869B;
  font-size: 16px;
  line-height: 19px;
  letter-spacing: 1px;
  font-weight: 300;
  margin: 0 auto; }

.account-confirmation .flo-logo {
  margin-top: 18px;
  max-width: 68px;
  margin-left: 17px; }

.account-confirmation .envelope {
  width: 100px;
  margin-top: 20px; }

.account-confirmation .btn-landing {
  padding: 7px;
  font-weight: 300;
  margin: 30px auto 0px auto; }

.account-confirmation .confirmation-message {
  margin-top: 55px; }
  .account-confirmation .confirmation-message .title-error {
    color: #ff0000c7; }
  .account-confirmation .confirmation-message .title-success {
    color: #60D096; }

.account-confirmation .loader-wrapper {
  min-height: 190px;
  padding-top: 120px; }
  .account-confirmation .loader-wrapper .loader {
    border: 5px solid #f3f3f3;
    border-radius: 50%;
    border-top: 5px solid #3498db;
    width: 80px;
    height: 80px;
    margin: auto;
    -webkit-animation: spin 2s linear infinite;
    /* Safari */
    animation: spin 2s linear infinite; }

.account-confirmation .main-container {
  padding-bottom: 100px; }

html, body {
  background-color: #f8fafe;
  font-size: 14px; }

main {
  margin: 20px 0;
  color: #19476D; }

#app {
  margin-bottom: 11rem; }

.btn, .btn-landing {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden; }

.lighter-font {
  font-weight: 200; }

.flo-light-blue {
  color: #fff;
  background-color: #3c729e !important; }

.flo-red {
  color: #fff;
  background-color: #D73333 !important; }

.data-downloader .floprotect-locked-message {
  color: #2B587A;
  max-width: 120px;
  font-size: 11px;
  margin: 0px 10px 5px 10px;
  line-height: 1.3; }

@media (min-width: 992px) {
  .data-downloader .floprotect-locked-message {
    display: none; } }

.data-downloader .dropdown-menu.show {
  padding: 0px; }
  .data-downloader .dropdown-menu.show button {
    padding: 0px; }
    .data-downloader .dropdown-menu.show button a {
      height: 100%;
      width: 100%;
      padding: 7px 21px;
      display: block;
      color: black; }

@media (max-width: 992px) {
  .data-downloader-popover {
    display: none; } }

.select-with-fas {
  font-family: FontAwesome, sans-serif; }

.flo-blue {
  color: #fff;
  background-color: #1c486c !important; }

.flo-green {
  color: #fff;
  background-color: #73d352 !important; }

.flo-yellow {
  color: #fff;
  background-color: #FFB142 !important; }

.flo-blue-color {
  color: #1c486c; }

.flo-green-color {
  color: #73d352; }

.flo-light-blue-color {
  color: #3c729e; }

div.b {
  display: inline;
  white-space: nowrap;
  width: 50px;
  overflow: hidden;
  text-overflow: ellipsis;
  border: 1px solid #000000; }

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

.navbar {
  text-transform: uppercase;
  background-color: #1c486c;
  padding: 0px 10%; }
  .navbar .address {
    color: #ffffff;
    font-weight: 300;
    text-transform: none;
    display: none; }
  .navbar .address.nav-link {
    padding: 15px 0px; }
  @media (min-width: 1200px) {
    .navbar .address {
      width: 210px;
      padding-top: 5px;
      display: inline-block; }
    .navbar .address.nav-link {
      display: none; } }
  @media (min-width: 1250px) {
    .navbar .address {
      width: 270px; } }
  @media (min-width: 1350px) {
    .navbar .address {
      width: 370px; } }
  @media (max-width: 767px) {
    .navbar .address.nav-link {
      display: block; } }
  .navbar .badge {
    padding: 5px 10px;
    margin-left: 5px; }
  .navbar .navbar-toggler {
    border: none; }
  .navbar .fa-bars {
    font-size: 1.3em;
    color: #fff; }
  .navbar button:active,
  .navbar button:focus,
  .navbar button:hover {
    border: none !important;
    outline: none !important; }
    .navbar button:active .fa-bars,
    .navbar button:focus .fa-bars,
    .navbar button:hover .fa-bars {
      color: #e8e7e7; }
  .navbar .nav-link {
    color: #fff !important; }
  .navbar .nav-item:not(.active) a.nav-link:hover {
    color: #73d352 !important; }
  .navbar .navbar-brand {
    margin-right: 30px; }
  .navbar .main-navbar {
    margin-top: -10px; }
    .navbar .main-navbar li {
      padding-top: 10px; }
  .navbar .sub-menu .dropdown-item a {
    text-transform: capitalize;
    color: #1c486c !important; }
  .navbar .sub-menu button:active {
    background-color: #e8e7e7; }
  .navbar .alert-notification {
    margin: 0px 20px; }
    .navbar .alert-notification .badge {
      padding: 8px 15px;
      font-size: 1em; }
      .navbar .alert-notification .badge .badge {
        color: #1c486c;
        background-color: #fff; }
  .navbar .alert-notification .device-online {
    background-color: #73d352; }
  .navbar .alert-notification .device-offline {
    background-color: #D73333; }
  .navbar .alert-notification .no-device {
    color: #1c486c;
    background-color: #e8e7e7; }
  .navbar .alert-notification .has-alerts {
    background-color: #FFB142 !important;
    padding: 5px 10px 5px 5px; }
    .navbar .alert-notification .has-alerts .badge {
      padding: 4px 8px !important; }

@media (min-width: 768px) {
  .navbar .nav-item.active {
    border-top: 5px solid #73d352;
    margin-top: -9px;
    padding-top: 4px; } }

@media (max-width: 767.98px) {
  .navbar .dropdown-menu {
    border: none;
    background-color: #1c486c; }
  .navbar .nav-item.active {
    border-left: 5px solid #73d352;
    margin-left: -12.5%;
    padding-left: 11.5%; }
  .navbar .sub-menu .dropdown-item a {
    color: #fff !important;
    padding: 0px; }
  .navbar .sub-menu .dropdown-item:hover {
    background-color: #1c486c; }
  .navbar .settings {
    margin-bottom: 20px; } }

.card {
  border-color: #EBEBEB; }

.card-header {
  margin-bottom: 0px;
  border-bottom: none;
  padding-top: 15px;
  padding-bottom: 0px;
  background-color: #fff; }

.card-header:after {
  content: "";
  display: block;
  height: 1px;
  width: 100%;
  background: #EBEBEB;
  margin-top: 0.75rem; }

.card-footer {
  border: none;
  background-color: #fff; }

.progress {
  height: 1.5rem;
  border-radius: 0; }

.bottom-margin {
  margin-bottom: 20px; }

.btn-green-border {
  color: #19476D;
  background-color: #fff;
  border: 2px solid #73d352;
  text-transform: uppercase; }

.btn-green-border:hover {
  font-weight: 600;
  border-width: 3px;
  border-style: double; }

.btn-success, .btn-success:disabled {
  color: #73d352;
  background-color: #fff;
  border: 2px solid #73d352;
  text-transform: uppercase; }

.btn-warning, .btn-warning:disabled {
  color: #e6922a;
  background-color: #fff;
  border: 2px solid #e6922a;
  text-transform: uppercase; }

.btn-error, .btn-error:disabled {
  color: #D73333;
  background-color: #fff;
  border: 2px solid #D73333;
  text-transform: uppercase; }

.healthcheck-widget button.btn-danger {
  margin-top: 10px; }

.home-protect.card {
  color: #fff;
  background-color: #1c486c;
  font-weight: 300; }
  .home-protect.card p.name {
    font-size: 14px;
    line-height: 18px;
    text-transform: uppercase; }
  .home-protect.card a {
    color: #73d352; }
  .home-protect.card .badge {
    text-transform: uppercase;
    font-size: 1em;
    padding: 6px 18px;
    background-color: #adb5bd;
    margin-left: 15px; }
  .home-protect.card .fa-shield-alt {
    font-size: 1.7em;
    margin-right: 5px; }

select {
  background: none; }

.nav-pills .nav-link {
  color: #586880;
  cursor: pointer; }

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

.nav-pills .nav-link.active:hover {
  color: #fff; }

.nav-pills.nav-inner-view {
  margin-bottom: 20px; }

.btn-primary, .btn-primary:disabled, .btn-primary.disabled {
  background-color: #73d352;
  border-color: #73d352; }

.btn-primary:hover {
  background-color: #64be4c;
  border-color: #64be4c; }

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  background-color: #54a442;
  border-color: #54a442; }

.btn-secondary, .btn-outline-secondary, .btn-secondary:disabled, .btn-outline-secondary:disabled, .btn-secondary.disabled, .disabled.btn-outline-secondary {
  background-color: #1c486c;
  border-color: #1c486c;
  color: #fff; }

.btn-secondary:hover, .btn-outline-secondary:hover {
  background-color: #194161;
  border-color: #194161; }

.btn-outline-secondary {
  background-color: #fff;
  color: #1c486c; }

.btn-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle,
.show > .dropdown-toggle.btn-outline-secondary {
  background-color: #122d44;
  border-color: #122d44; }

btn:disabled {
  opacity: 0.6;
  cursor: not-allowed; }

.usage .period {
  font-weight: 600; }

.usage .current-period {
  color: #4292BE; }

.usage .previous-period {
  color: #2b5876; }

.usage .vital-measurements [class*="-graph"] .pressure,
.usage .vital-measurements [class*="-graph"] .temperature,
.usage .vital-measurements [class*="-graph"] .flow {
  text-align: center;
  width: 116px;
  display: inline-block;
  vertical-align: top; }
  .usage .vital-measurements [class*="-graph"] .pressure .icon-PSI-Gauge:before,
  .usage .vital-measurements [class*="-graph"] .temperature .icon-PSI-Gauge:before,
  .usage .vital-measurements [class*="-graph"] .flow .icon-PSI-Gauge:before {
    font-size: 2.8rem;
    color: #73d352; }
  .usage .vital-measurements [class*="-graph"] .pressure .icon-Thermometer:before, .usage .vital-measurements [class*="-graph"] .pressure .icon-Faucet:before,
  .usage .vital-measurements [class*="-graph"] .temperature .icon-Thermometer:before,
  .usage .vital-measurements [class*="-graph"] .temperature .icon-Faucet:before,
  .usage .vital-measurements [class*="-graph"] .flow .icon-Thermometer:before,
  .usage .vital-measurements [class*="-graph"] .flow .icon-Faucet:before {
    font-size: 3.8rem;
    color: #73d352; }
  .usage .vital-measurements [class*="-graph"] .pressure .title,
  .usage .vital-measurements [class*="-graph"] .temperature .title,
  .usage .vital-measurements [class*="-graph"] .flow .title {
    font-weight: 600;
    color: #164063;
    font-size: 1rem;
    line-height: 1rem;
    text-transform: uppercase;
    margin-top: 8px; }
  .usage .vital-measurements [class*="-graph"] .pressure .unit,
  .usage .vital-measurements [class*="-graph"] .temperature .unit,
  .usage .vital-measurements [class*="-graph"] .flow .unit {
    color: #4292BE;
    font-size: 0.8rem;
    line-height: 1rem; }

.usage .vital-measurements .device-dropdown {
  margin-bottom: 10px; }

.usage-content-wrapper {
  margin-top: 30px; }

.usage-wrapper {
  border-bottom: #ccc solid 1px; }

.settings-contacts .column.actions {
  font-weight: 600;
  cursor: pointer; }

.settings-contacts .table .form-group {
  margin-bottom: 0rem; }

.table thead th {
  border-top: none;
  font-weight: 600;
  text-transform: uppercase; }

.table th,
.table td {
  vertical-align: text-top; }

.hidden {
  display: none; }

.buttons .btn, .buttons .btn-landing {
  margin-right: 10px; }

.usage .nav-pills {
  margin-bottom: 0px; }

.usage .usage-period {
  background-color: white;
  margin-top: 7px; }

.usage .usage-period-xs {
  background-color: white;
  margin-bottom: 15px; }

.form .message-container .error-message {
  color: #D73333; }

.form input.invalid {
  color: #D73333;
  border-color: #D73333; }

.form textarea.invalid {
  color: #D73333;
  border-color: #D73333; }

.form input.invalid::placeholder {
  color: #D73333; }

.link-unstyled, .link-unstyled:link, .link-unstyled:hover {
  color: inherit;
  text-decoration: inherit; }

.progress-bar-left-aligned {
  text-align: left;
  padding-left: 15px; }

.progress-bg {
  height: 2.1rem;
  font-size: 1rem;
  font-weight: 300; }

.progress-bar-delimiter {
  border-left: 1px solid white; }

.card.daily-usage-goal .gallons-consumed-vs-goal-total .gallons-consumed {
  font-size: 2rem; }

.card.daily-usage-goal .gallons-consumed-vs-goal-total .goal-total {
  color: #949494;
  font-size: 1.4rem;
  font-weight: 400; }

.leak-detection-widget.health-test .popover-info-icon {
  color: #ced4da;
  margin: 0 5px; }

.leak-detection-widget.health-test .healthcheck-widget {
  min-height: 38px; }

.leak-detection-widget.health-test .sensitivity-controls-container {
  height: 50px; }
  .leak-detection-widget.health-test .sensitivity-controls-container .drip-logo-container {
    padding: 0px; }
  .leak-detection-widget.health-test .sensitivity-controls-container .rc-slider {
    width: 80%; }

.no-device-stats-card {
  padding: 1.25rem; }
  .no-device-stats-card h2 {
    font-size: 1.4rem; }
  .no-device-stats-card .subtitle {
    font-size: 1.1rem; }
  .no-device-stats-card a {
    padding: 30px 15px 10px 0px; }
    .no-device-stats-card a img {
      width: 140px; }

.device-stats-card .telemetry-controls {
  min-height: 80px;
  margin: 24px 15px 44px 0;
  background-color: #F7F9FE;
  padding: 8px; }

@media (min-width: 992px) {
  .device-stats-card .device-state-container {
    border-left: solid #EBEBEB 1px;
    padding-right: 0; } }

@media (max-width: 991.98px) {
  .device-stats-card .device-state-container {
    border-top: solid #EBEBEB 1px;
    margin-top: 22px;
    padding-top: 14px; } }

.device-stats-card .device-dropdown {
  text-align: left; }
  .device-stats-card .device-dropdown .dropdown-toggle {
    border-radius: 0;
    background-color: #505D73; }

.device-stats-card .device-status {
  text-align: left;
  padding: 8px 0 0 20px; }
  .device-stats-card .device-status .device-status-icon {
    padding: 5px 6px;
    margin-top: 5px;
    font-size: 22px;
    font-weight: 400;
    line-height: 1;
    height: 12px;
    width: 12px;
    display: block;
    float: left; }
  .device-stats-card .device-status .device-status-icon.device-online {
    background-color: #73d352; }
  .device-stats-card .device-status .device-status-icon.device-offline {
    background-color: #D73333; }
  .device-stats-card .device-status .status-text {
    padding: 2px 0px 0 8px;
    display: block;
    float: left;
    text-transform: capitalize; }

.device-stats-card .last-reported-date {
  text-align: right;
  margin-top: 14px; }

.device-stats-card .loader-wrapper {
  min-height: 190px;
  padding-top: 40px; }
  .device-stats-card .loader-wrapper .loader {
    border: 5px solid #f3f3f3;
    border-radius: 50%;
    border-top: 5px solid #3498db;
    width: 80px;
    height: 80px;
    margin: auto;
    -webkit-animation: spin 2s linear infinite;
    /* Safari */
    animation: spin 2s linear infinite; }

.rc-slider-handle {
  height: 25px;
  width: 25px;
  border-radius: 25px;
  margin-left: -11px;
  margin-top: -11px;
  border: 1px #ccc;
  -webkit-box-shadow: 0px 1px 2px 0px #ababab;
  -moz-box-shadow: 0px 1px 2px 0px #ababab;
  box-shadow: 0px 1px 2px 0px #ababab; }

.rc-slider-dot.rc-slider-dot-active {
  border-color: #73d352; }

.rc-slider-track {
  background-color: #73d352; }

.rc-slider-handle:active {
  border-color: #73d352;
  box-shadow: 0 0 5px #73d352; }

.image-size-10 {
  width: 10%; }

.image-size-15 {
  width: 15%; }

.image-size-20 {
  width: 20%; }

.image-size-25 {
  width: 25%; }

.image-size-30 {
  width: 30%; }

.image-size-35 {
  width: 35%; }

.image-size-40 {
  width: 40%; }

.image-size-45 {
  width: 45%; }

.image-size-50 {
  width: 50%; }

.image-size-55 {
  width: 55%; }

.image-size-60 {
  width: 60%; }

.image-size-65 {
  width: 65%; }

.image-size-70 {
  width: 70%; }

.image-size-75 {
  width: 75%; }

.image-size-80 {
  width: 80%; }

.image-size-85 {
  width: 85%; }

.image-size-90 {
  width: 90%; }

.image-size-95 {
  width: 95%; }

.image-size-100 {
  width: 100%; }

.image-size-105 {
  width: 105%; }

.fixture-400 {
  background-color: #1EB6CB; }

.fixture-102 {
  background-color: #E92C90; }

.fixture-101 {
  background-color: #E93A2E; }

.fixture-300 {
  background-color: #A343B4; }

.fixture-200 {
  background-color: #F2A647; }

.fixture-501 {
  background-color: #4E85BB; }

.fixture-701 {
  background-color: #2E9AE9; }

.fixture-601 {
  background-color: #34F0CF; }

.fixture-602 {
  background-color: #34F0CF; }

.fixture-500 {
  background-color: #4395AF; }

.fixture-900 {
  background-color: #EA552F; }

.fixture-801 {
  background-color: #50BA5B; }

.fixture-802 {
  background-color: #50BA5B; }

.fixture-10000 {
  background-color: #9EBED0; }

.card.fixture-usage-summary .fixture-details {
  margin: 15px 0px; }
  .card.fixture-usage-summary .fixture-details .fixture-logo-container {
    height: 45px;
    width: 45px;
    border-radius: 80px;
    color: #fff; }
  .card.fixture-usage-summary .fixture-details .fixture-logo-container.disabled {
    background-color: rgba(45, 45, 45, 0.25) !important; }
    .card.fixture-usage-summary .fixture-details .fixture-logo-container.disabled img {
      opacity: 0.2; }
  .card.fixture-usage-summary .fixture-details .fixture-usage {
    margin-top: 1px;
    line-height: 1.2;
    margin-top: 5px;
    color: #77869B; }
  .card.fixture-usage-summary .fixture-details .fixture-name {
    line-height: 1.2;
    margin-top: 5px; }
  .card.fixture-usage-summary .fixture-details .fixture-text {
    margin-left: 15px !important; }
  .card.fixture-usage-summary .fixture-details .fixture-logo-container.active {
    box-shadow: 1px 4px 3px 2px #e0e0e0;
    -webkit-box-shadow: 1px 4px 3px 2px #e0e0e0;
    -moz-box-shadow: 1px 4px 3px 2px #e0e0e0; }

.card.fixture-usage-details ::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 7px;
  height: 8px; }

.card.fixture-usage-details ::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: #9B9B9B;
  -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5); }

.card.fixture-usage-details .timeline {
  height: 400px;
  overflow-y: scroll;
  overflow-x: hidden; }
  .card.fixture-usage-details .timeline .timeline-mark {
    font-size: 8px;
    width: 14px;
    height: 14px; }
  .card.fixture-usage-details .timeline .timeline-line {
    margin-bottom: -6px; }
  .card.fixture-usage-details .timeline .show-more {
    display: flex; }
    .card.fixture-usage-details .timeline .show-more a {
      width: 100%;
      text-align: right;
      margin-right: 20px; }
  .card.fixture-usage-details .timeline .loader-wrapper {
    display: flex; }
    .card.fixture-usage-details .timeline .loader-wrapper .loader {
      border: 3px solid #f3f3f3;
      border-radius: 50%;
      border-top: 3px solid #3498db;
      width: 20px;
      height: 20px;
      margin: auto;
      -webkit-animation: spin 2s linear infinite;
      /* Safari */
      animation: spin 2s linear infinite; }

.card.fixture-usage-details .tiny-height {
  line-height: 1.2;
  margin-top: 4px; }

@media (max-width: 991.98px) {
  .card.fixture-usage-details .timeline {
    height: 650px; } }

.card.fixture-usage-details .banner h3 {
  font-size: 2.5rem;
  font-weight: 300; }

.card.fixture-usage-details .banner img {
  margin: 15px; }

.card.fixture-usage-details .banner a {
  color: #73d352;
  font-size: 1.2rem;
  font-weight: 300; }

.cursor-pointer {
  cursor: pointer; }

.echarts-for-react div {
  position: absolute !important; }

.dot-wave .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 8px;
  background: #898989;
  animation: wave 1.3s linear infinite; }
  .dot-wave .dot:nth-child(2) {
    animation-delay: -1.1s; }
  .dot-wave .dot:nth-child(3) {
    animation-delay: -0.9s; }

@keyframes wave {
  0%, 60%, 100% {
    transform: initial; }
  30% {
    transform: translateY(-10px); } }

/* Safari */
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg); } }

@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXMiOlsiYXBwLnNjc3MiLCJmb250L2ZvbnRzLnNjc3MiLCJmb250L0Zsb0ljb25zLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwLnNjc3MiLCJib290c3RyYXAvX2Z1bmN0aW9ucy5zY3NzIiwiYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsImJvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9faG92ZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19iYWRnZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Zpc2liaWxpdHkuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2FsZXJ0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jYXJldC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbGlzdHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JveC1zaGFkb3cuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19mbG9hdC5zY3NzIiwiYm9vdHN0cmFwL19yb290LnNjc3MiLCJib290c3RyYXAvX3JlYm9vdC5zY3NzIiwiYm9vdHN0cmFwL190eXBlLnNjc3MiLCJib290c3RyYXAvX2ltYWdlcy5zY3NzIiwiYm9vdHN0cmFwL19jb2RlLnNjc3MiLCJib290c3RyYXAvX2dyaWQuc2NzcyIsImJvb3RzdHJhcC9fdGFibGVzLnNjc3MiLCJib290c3RyYXAvX2Zvcm1zLnNjc3MiLCJib290c3RyYXAvX2J1dHRvbnMuc2NzcyIsImJvb3RzdHJhcC9fdHJhbnNpdGlvbnMuc2NzcyIsImJvb3RzdHJhcC9fZHJvcGRvd24uc2NzcyIsImJvb3RzdHJhcC9fYnV0dG9uLWdyb3VwLnNjc3MiLCJib290c3RyYXAvX2lucHV0LWdyb3VwLnNjc3MiLCJib290c3RyYXAvX2N1c3RvbS1mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL19uYXYuc2NzcyIsImJvb3RzdHJhcC9fbmF2YmFyLnNjc3MiLCJib290c3RyYXAvX2NhcmQuc2NzcyIsImJvb3RzdHJhcC9fYnJlYWRjcnVtYi5zY3NzIiwiYm9vdHN0cmFwL19wYWdpbmF0aW9uLnNjc3MiLCJib290c3RyYXAvX2JhZGdlLnNjc3MiLCJib290c3RyYXAvX2p1bWJvdHJvbi5zY3NzIiwiYm9vdHN0cmFwL19hbGVydC5zY3NzIiwiYm9vdHN0cmFwL19wcm9ncmVzcy5zY3NzIiwiYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwiYm9vdHN0cmFwL19saXN0LWdyb3VwLnNjc3MiLCJib290c3RyYXAvX2Nsb3NlLnNjc3MiLCJib290c3RyYXAvX21vZGFsLnNjc3MiLCJib290c3RyYXAvX3Rvb2x0aXAuc2NzcyIsImJvb3RzdHJhcC9fcG9wb3Zlci5zY3NzIiwiYm9vdHN0cmFwL19jYXJvdXNlbC5zY3NzIiwiYm9vdHN0cmFwL191dGlsaXRpZXMuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19jbGVhcmZpeC5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2ZsZXguc2NzcyIsImJvb3RzdHJhcC91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwiYm9vdHN0cmFwL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJib290c3RyYXAvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJib290c3RyYXAvX3ByaW50LnNjc3MiLCJ2YXJpYWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9yYy1zbGlkZXIvYXNzZXRzL2luZGV4LmNzcyIsImxheW91dC9mb290ZXIuc2NzcyIsImVsZW1lbnRzL2RpYWxvZy5zY3NzIiwiZWxlbWVudHMvZmxvLWdyb3VwLXRvZ2dsZWJveC5zY3NzIiwiZWxlbWVudHMvcGFnaW5hdGlvbi5zY3NzIiwiZWxlbWVudHMvdGVsZW1ldHJ5LXdpZGdldC5zY3NzIiwiZWxlbWVudHMvbG9nby5zY3NzIiwiZWxlbWVudHMvdG9nZ2xlLWFuZC1zbGlkZS1zZWxlY3Quc2NzcyIsImVsZW1lbnRzL3BsYWNlcy1zZWFyY2gtYmFyLnNjc3MiLCJlbGVtZW50cy9kYXRhLWRvd25sb2FkLnNjc3MiLCJlbGVtZW50cy9za2VsZXRvbi5zY3NzIiwidmlld3MvbG9naW4uc2NzcyIsInZpZXdzL2FsZXJ0cy5zY3NzIiwidmlld3MvaG9tZS1wcm90ZWN0LnNjc3MiLCJ2aWV3cy9zZXR0aW5ncy1ub3RpZmljYXRpb25zLnNjc3MiLCJ2aWV3cy9mbG8tZGV0ZWN0LXZhbGlkYXRpb24uc2NzcyIsInZpZXdzL2FjY291bnQtY3JlYXRpb24tbGFuZGluZy5zY3NzIiwidmlld3MvYXV0aG9yaXphdGlvbi5zY3NzIiwidmlld3MvZW1haWwtdW5zdWJzY3JpYmVkLnNjc3MiLCJ2aWV3cy9pbnN1cmFuY2UtbGV0dGVyLnNjc3MiLCJ2aWV3cy9kZWR1Y3RpYmxlLWd1YXJhbnRlZS5zY3NzIiwibGF5b3V0L2xvY2F0aW9uLXNlbGVjdG9yLnNjc3MiLCJlbGVtZW50cy9kZXRlY3Rvci10ZWxlbWV0cnktd2lkZ2V0LnNjc3MiLCJlbGVtZW50cy9hZGQtc2h1dG9mZi1kZXZpY2UtYmFubmVyLnNjc3MiLCJ2aWV3cy9lbWFpbC1jb25maXJtYXRpb24tY2hhbmdlLnNjc3MiLCJ2aWV3cy9hY2NvdW50LWNvbmZpcm1hdGlvbi5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFRoaXMgc2hvdWxkIGJlIGxvYWRlZCBiZWZvcmUgYW55IGltcG9ydCBvciBvdGhlciBzdHlsZXMgdG8gYXZvaWQgZmxpY2tlcmluZyBvZiBmb250cyB3aGVuIHBhZ2Vcbi8vIGxvYWRzXG5odG1sIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogXCJRdWVzdHJpYWxcIjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBJbXBvcnQgRm9udHNcbkBpbXBvcnQgXCJmb250L2ZvbnRzXCI7XG5cbi8vIEltcG9ydCBCb290c3RyYXAgKCBmaXJzdCBzbyBhbnl0aGluZyBlbHNlIHdlIGRvIG92ZXIgd3JpdGVzIClcbkBpbXBvcnQgXCJib290c3RyYXAvYm9vdHN0cmFwLnNjc3NcIjtcblxuQGltcG9ydCBcInZhcmlhYmxlcy5zY3NzXCI7XG5cbiRmbG8tZm9udC1jb2xvcjogIzE5NDc2RDtcblxuJGZsby1ibHVlOiAjMWM0ODZjO1xuXG4kZmxvLWRhcmstYmx1ZTogIzE5NDE2MTtcblxuJGZsby1kYXJrZXItYmx1ZTogIzE1MzY1MTtcblxuJGZsby1kYXJrZXN0LWJsdWU6ICMxMjJkNDQ7XG5cbiRmbG8tbGlnaHQtYmx1ZTogIzNjNzI5ZTtcblxuJGZsby1ncmVlbjogIzczZDM1MjtcblxuJGZsby1kYXJrLWdyZWVuOiAjNjRiZTRjO1xuXG4kZmxvLWRhcmtlci1ncmVlbjogIzU0YTQ0MjtcblxuJGZsby1kYXJrZXN0LWdyZWVuOiAjNTRhNDQyO1xuXG4kZmxvLWdyYXk6ICNlOGU3ZTc7XG5cbiRib3JkZXItY29sb3I6ICNFQkVCRUI7XG5cbiRmbG8tcmVkOiAjRDczMzMzO1xuXG4uY2FyZC1ib2R5IHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuQGltcG9ydCAnLi4vLi4vbm9kZV9tb2R1bGVzL3JjLXNsaWRlci9hc3NldHMvaW5kZXgnO1xuXG5AaW1wb3J0IFwibGF5b3V0L2Zvb3Rlci5zY3NzXCI7XG5cbkBpbXBvcnQgXCJlbGVtZW50cy9kaWFsb2cuc2Nzc1wiO1xuXG5AaW1wb3J0IFwiZWxlbWVudHMvZmxvLWdyb3VwLXRvZ2dsZWJveC5zY3NzXCI7XG5cbkBpbXBvcnQgXCJlbGVtZW50cy9wYWdpbmF0aW9uLnNjc3NcIjtcblxuQGltcG9ydCBcImVsZW1lbnRzL3RlbGVtZXRyeS13aWRnZXQuc2Nzc1wiO1xuXG5AaW1wb3J0IFwiZWxlbWVudHMvbG9nby5zY3NzXCI7XG5cbkBpbXBvcnQgXCJlbGVtZW50cy90b2dnbGUtYW5kLXNsaWRlLXNlbGVjdC5zY3NzXCI7XG5cbkBpbXBvcnQgXCJlbGVtZW50cy9wbGFjZXMtc2VhcmNoLWJhci5zY3NzXCI7XG5cbkBpbXBvcnQgXCJlbGVtZW50cy9kYXRhLWRvd25sb2FkLnNjc3NcIjtcblxuQGltcG9ydCBcImVsZW1lbnRzL3NrZWxldG9uLnNjc3NcIjtcblxuQGltcG9ydCBcInZpZXdzL2xvZ2luLnNjc3NcIjtcblxuQGltcG9ydCBcInZpZXdzL2FsZXJ0cy5zY3NzXCI7XG5cbkBpbXBvcnQgXCJ2aWV3cy9ob21lLXByb3RlY3Quc2Nzc1wiO1xuXG5AaW1wb3J0IFwidmlld3Mvc2V0dGluZ3Mtbm90aWZpY2F0aW9ucy5zY3NzXCI7XG5cbkBpbXBvcnQgXCJ2aWV3cy9mbG8tZGV0ZWN0LXZhbGlkYXRpb24uc2Nzc1wiO1xuXG5AaW1wb3J0IFwidmlld3MvYWNjb3VudC1jcmVhdGlvbi1sYW5kaW5nLnNjc3NcIjtcblxuQGltcG9ydCBcInZpZXdzL2F1dGhvcml6YXRpb24uc2Nzc1wiO1xuXG5AaW1wb3J0IFwidmlld3MvZW1haWwtdW5zdWJzY3JpYmVkLnNjc3NcIjtcblxuQGltcG9ydCBcInZpZXdzL2luc3VyYW5jZS1sZXR0ZXIuc2Nzc1wiO1xuXG5AaW1wb3J0IFwidmlld3MvZGVkdWN0aWJsZS1ndWFyYW50ZWUuc2Nzc1wiO1xuXG5AaW1wb3J0IFwibGF5b3V0L2xvY2F0aW9uLXNlbGVjdG9yLnNjc3NcIjtcblxuQGltcG9ydCBcImVsZW1lbnRzL2RldGVjdG9yLXRlbGVtZXRyeS13aWRnZXQuc2Nzc1wiO1xuXG5AaW1wb3J0IFwiZWxlbWVudHMvYWRkLXNodXRvZmYtZGV2aWNlLWJhbm5lci5zY3NzXCI7XG5cbkBpbXBvcnQgXCJ2aWV3cy9lbWFpbC1jb25maXJtYXRpb24tY2hhbmdlLnNjc3NcIjtcblxuQGltcG9ydCBcInZpZXdzL2FjY291bnQtY29uZmlybWF0aW9uLnNjc3NcIjtcblxuaHRtbCwgYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGZhZmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxubWFpbiB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBjb2xvcjogJGZsby1mb250LWNvbG9yO1xufVxuXG4jYXBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMTFyZW07XG59XG5cbi5idG4ge1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmxpZ2h0ZXItZm9udCB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG59XG5cbi5mbG8tbGlnaHQtYmx1ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmxvLWxpZ2h0LWJsdWUhaW1wb3J0YW50O1xufVxuXG4uZmxvLXJlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmxvLXJlZCFpbXBvcnRhbnQ7XG59XG5cbi5kYXRhLWRvd25sb2FkZXIge1xuICAuZmxvcHJvdGVjdC1sb2NrZWQtbWVzc2FnZSB7XG4gICAgY29sb3I6ICMyQjU4N0E7XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbWFyZ2luOiAwcHggMTBweCA1cHggMTBweDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmZsb3Byb3RlY3QtbG9ja2VkLW1lc3NhZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS5zaG93IHtcbiAgICBwYWRkaW5nOiAwcHg7XG5cbiAgICBidXR0b24ge1xuICAgICAgcGFkZGluZzogMHB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogN3B4IDIxcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogYmxhY2tcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5kYXRhLWRvd25sb2FkZXItcG9wb3ZlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2VsZWN0LXdpdGgtZmFzIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lLCBzYW5zLXNlcmlmO1xufVxuXG4uZmxvLWJsdWUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZsby1ibHVlIWltcG9ydGFudDtcbn1cblxuLmZsby1ncmVlbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmxvLWdyZWVuIWltcG9ydGFudDtcbn1cblxuLmZsby15ZWxsb3cge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdhcm5pbmdDb2xvciFpbXBvcnRhbnQ7XG59XG5cbi5mbG8tYmx1ZS1jb2xvciB7XG4gIGNvbG9yOiAkZmxvLWJsdWU7XG59XG5cbi5mbG8tZ3JlZW4tY29sb3Ige1xuICBjb2xvcjogJGZsby1ncmVlbjtcbn1cblxuLmZsby1saWdodC1ibHVlLWNvbG9yIHtcbiAgY29sb3I6ICRmbG8tbGlnaHQtYmx1ZTtcbn1cblxuZGl2LmIge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiA1MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbn1cblxuLnRydW5jYXRlLXRleHQge1xuICB3aWR0aDogMjUwcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4ubmF2YmFyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZsby1ibHVlO1xuICBwYWRkaW5nOiAwcHggMTAlO1xuXG4gIC5hZGRyZXNzIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuYWRkcmVzcy5uYXYtbGluayB7XG4gICAgcGFkZGluZzogMTVweCAwcHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLmFkZHJlc3Mge1xuICAgICAgd2lkdGg6IDIxMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuYWRkcmVzcy5uYXYtbGluayB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjUwcHgpIHtcbiAgICAuYWRkcmVzcyB7XG4gICAgICB3aWR0aDogMjcwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNTBweCkge1xuICAgIC5hZGRyZXNzIHtcbiAgICAgIHdpZHRoOiAzNzBweDtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYWRkcmVzcy5uYXYtbGluayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC5mYS1iYXJzIHtcbiAgICBmb250LXNpemU6IDEuM2VtO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgYnV0dG9uOmFjdGl2ZSxcbiAgYnV0dG9uOmZvY3VzLFxuICBidXR0b246aG92ZXJ7XG4gICAgYm9yZGVyOm5vbmUgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lOm5vbmUgIWltcG9ydGFudDtcblxuICAgIC5mYS1iYXJzIHtcbiAgICAgIGNvbG9yOiAkZmxvLWdyYXk7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogI2ZmZiFpbXBvcnRhbnQ7XG4gIH1cblxuICAubmF2LWl0ZW06bm90KC5hY3RpdmUpIHtcbiAgICBhLm5hdi1saW5rOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjNzNkMzUyIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWJyYW5kXG4gIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIH1cblxuICAubWFpbi1uYXZiYXIge1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuXG4gICAgbGkge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgfVxuICB9XG5cbiAgLnN1Yi1tZW51IHtcbiAgICAuZHJvcGRvd24taXRlbSBhIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgY29sb3I6ICRmbG8tYmx1ZSFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYnV0dG9uOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmxvLWdyYXk7XG4gICAgfVxuICB9XG5cbiAgLmFsZXJ0LW5vdGlmaWNhdGlvbiB7XG4gICAgLmJhZGdlIHtcbiAgICAgIHBhZGRpbmc6IDhweCAxNXB4O1xuICAgICAgZm9udC1zaXplOiAxZW07XG5cbiAgICAgIC5iYWRnZSB7XG4gICAgICAgIGNvbG9yOiAkZmxvLWJsdWU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICAgIG1hcmdpbjogMHB4IDIwcHg7XG4gIH1cblxuICAuYWxlcnQtbm90aWZpY2F0aW9uIC5kZXZpY2Utb25saW5lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmxvLWdyZWVuO1xuICB9XG5cbiAgLmFsZXJ0LW5vdGlmaWNhdGlvbiAuZGV2aWNlLW9mZmxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRlcnJvckNvbG9yO1xuICB9XG5cbiAgLmFsZXJ0LW5vdGlmaWNhdGlvbiAubm8tZGV2aWNlIHtcbiAgICBjb2xvcjogJGZsby1ibHVlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmbG8tZ3JheTtcbiAgfVxuXG4gIC5hbGVydC1ub3RpZmljYXRpb24gLmhhcy1hbGVydHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3YXJuaW5nQ29sb3IhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCA1cHg7XG5cbiAgICAuYmFkZ2Uge1xuICAgICAgcGFkZGluZzogNHB4IDhweCFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgLm5hdmJhciB7XG4gICAgLm5hdi1pdGVtLmFjdGl2ZSB7XG4gICAgICBib3JkZXItdG9wOiA1cHggc29saWQgJGZsby1ncmVlbjtcbiAgICAgIG1hcmdpbi10b3A6IC05cHg7XG4gICAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgLm5hdmJhciB7XG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZsby1ibHVlO1xuICAgIH1cblxuICAgIC5uYXYtaXRlbS5hY3RpdmUge1xuICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkZmxvLWdyZWVuO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMi41JTtcbiAgICAgIHBhZGRpbmctbGVmdDogMTEuNSU7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhciAuc3ViLW1lbnUgLmRyb3Bkb3duLWl0ZW0gYSB7XG4gICAgY29sb3I6ICNmZmYhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgfVxuXG4gIC5uYXZiYXIgLnN1Yi1tZW51IC5kcm9wZG93bi1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmxvLWJsdWU7XG4gIH1cblxuICAubmF2YmFyIC5zZXR0aW5ncyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG4uY2FyZCB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmNhcmQtaGVhZGVyOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogJGJvcmRlci1jb2xvcjtcbiAgbWFyZ2luLXRvcDogMC43NXJlbTtcbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ucHJvZ3Jlc3Mge1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmJvdHRvbS1tYXJnaW4ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uYnRuLWdyZWVuLWJvcmRlciB7XG4gIGNvbG9yOiAkZmxvLWZvbnQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRmbG8tZ3JlZW47XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5idG4tZ3JlZW4tYm9yZGVyOmhvdmVyIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXdpZHRoOiAzcHg7XG4gIGJvcmRlci1zdHlsZTogZG91YmxlO1xufVxuXG4uYnRuLXN1Y2Nlc3MsIC5idG4tc3VjY2VzczpkaXNhYmxlZCB7XG4gIGNvbG9yOiAkZmxvLWdyZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDJweCBzb2xpZCAkZmxvLWdyZWVuO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYnRuLXdhcm5pbmcsIC5idG4td2FybmluZzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAkd2FybmluZ0RhcmtDb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAycHggc29saWQgJHdhcm5pbmdEYXJrQ29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5idG4tZXJyb3IsIC5idG4tZXJyb3I6ZGlzYWJsZWQge1xuICBjb2xvcjogJGVycm9yQ29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRlcnJvckNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uaGVhbHRoY2hlY2std2lkZ2V0IHtcbiAgYnV0dG9uLmJ0bi1kYW5nZXIge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cbn1cblxuLmhvbWUtcHJvdGVjdC5jYXJkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmbG8tYmx1ZTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcblxuICBwLm5hbWUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRmbG8tZ3JlZW47XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgcGFkZGluZzogNnB4IDE4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktNTAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG5cbiAgLmZhLXNoaWVsZC1hbHQge1xuICAgIGZvbnQtc2l6ZTogMS43ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuXG5zZWxlY3Qge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4kbmF2LXBpbGxzLWNvbG9yOiAjNTg2ODgwO1xuXG4ubmF2LXBpbGxzIC5uYXYtbGluayB7XG4gIGNvbG9yOiAkbmF2LXBpbGxzLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZSwgLm5hdi1waWxscyAuc2hvdyA+IC5uYXYtbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtY29sb3I7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubmF2LXBpbGxzIC5uYXYtbGluay5hY3RpdmU6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm5hdi1waWxscy5uYXYtaW5uZXItdmlldyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cblxuLmJ0bi1wcmltYXJ5LCAuYnRuLXByaW1hcnk6ZGlzYWJsZWQsIC5idG4tcHJpbWFyeS5kaXNhYmxlZCAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmxvLWdyZWVuO1xuICBib3JkZXItY29sb3I6ICRmbG8tZ3JlZW47XG59XG5cbi5idG4tcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmbG8tZGFyay1ncmVlbjtcbiAgYm9yZGVyLWNvbG9yOiAkZmxvLWRhcmstZ3JlZW47XG59XG5cbi5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4uYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZsby1kYXJrZXN0LWdyZWVuO1xuICBib3JkZXItY29sb3I6ICRmbG8tZGFya2VzdC1ncmVlbjtcbn1cblxuLmJ0bi1zZWNvbmRhcnksIC5idG4tc2Vjb25kYXJ5OmRpc2FibGVkLCAuYnRuLXNlY29uZGFyeS5kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmbG8tYmx1ZTtcbiAgYm9yZGVyLWNvbG9yOiAkZmxvLWJsdWU7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmbG8tZGFyay1ibHVlO1xuICBib3JkZXItY29sb3I6ICRmbG8tZGFyay1ibHVlO1xufVxuXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgQGV4dGVuZCAuYnRuLXNlY29uZGFyeTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogJGZsby1ibHVlO1xufVxuXG4uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmbG8tZGFya2VzdC1ibHVlO1xuICBib3JkZXItY29sb3I6ICRmbG8tZGFya2VzdC1ibHVlO1xufVxuXG5cbmJ0bjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuJGN1cnJlbnQtcGVyaW9kLWNvbG9yOiAjNDI5MkJFO1xuJHByZXZpb3VzLXBlcmlvZC1jb2xvcjogIzJiNTg3NjtcblxuLnVzYWdlIHtcbiAgLnBlcmlvZCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gIC5jdXJyZW50LXBlcmlvZCB7XG4gICAgY29sb3I6ICM0MjkyQkU7XG4gIH1cblxuICAucHJldmlvdXMtcGVyaW9kIHtcbiAgICBjb2xvcjogIzJiNTg3NjtcbiAgfVxufVxuXG5cbi51c2FnZSAudml0YWwtbWVhc3VyZW1lbnRzIHtcbiAgW2NsYXNzKj1cIi1ncmFwaFwiXXtcbiAgICAucHJlc3N1cmUsXG4gICAgLnRlbXBlcmF0dXJlLFxuICAgIC5mbG93IHtcbiAgICAgIHRleHQtYWxpZ246IFx0XHRjZW50ZXI7XG4gICAgICB3aWR0aDogICAgICBcdFx0MTE2cHg7XG4gICAgICBkaXNwbGF5OiBcdFx0XHRcdGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAuaWNvbi1QU0ktR2F1Z2U6YmVmb3Jle1xuICAgICAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgICAgICAgY29sb3I6ICRmbG8tZ3JlZW47XG4gICAgICB9XG4gICAgICAuaWNvbi1UaGVybW9tZXRlcjpiZWZvcmUsIC5pY29uLUZhdWNldDpiZWZvcmV7XG4gICAgICAgIGZvbnQtc2l6ZTogMy44cmVtO1xuICAgICAgICBjb2xvcjogJGZsby1ncmVlbjtcbiAgICAgIH1cbiAgICAgIC50aXRsZXtcbiAgICAgICAgZm9udC13ZWlnaHQ6IFx0XHQ2MDA7XG4gICAgICAgIGNvbG9yOiAgICAgICBcdFx0JHByaW1hcnlEYXJrQ29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogICBcdFx0MXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6XHRcdDFyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbi10b3A6XHRcdFx0OHB4O1xuICAgICAgfVxuICAgICAgLnVuaXQge1xuICAgICAgICBjb2xvcjogICAgIFx0ICRwcmltYXJ5TGlnaHRDb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiBcdCAwLjhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5kZXZpY2UtZHJvcGRvd24ge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLnVzYWdlLWNvbnRlbnQtd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi51c2FnZS13cmFwcGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogI2NjYyBzb2xpZCAxcHg7XG59XG5cbi5zZXR0aW5ncy1jb250YWN0cyB7XG4gIC5jb2x1bW4uYWN0aW9ucyB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAudGFibGUge1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDByZW07XG4gICAgfVxuICB9XG59XG5cbi50YWJsZSB0aGVhZCB0aCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi50YWJsZSB0aCwgLnRhYmxlIHRkIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmJ1dHRvbnMge1xuICAuYnRuIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuXG4vL1VzYWdlXG5cbi51c2FnZSB7XG4gIC5uYXYtcGlsbHMge1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgfVxuXG4gIC51c2FnZS1wZXJpb2Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIG1hcmdpbi10b3A6IDdweDtcbiAgfVxuXG4gIC51c2FnZS1wZXJpb2QteHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cblxuXG4vLyBGb3Jtc1xuLmZvcm0ge1xuICAubWVzc2FnZS1jb250YWluZXIge1xuICAgIC5lcnJvci1tZXNzYWdlIHtcbiAgICAgIGNvbG9yOiAgICAgICAgICAkZXJyb3JDb2xvcjtcbiAgICB9XG4gIH1cblxuICBpbnB1dC5pbnZhbGlke1xuICAgIGNvbG9yOiAkZXJyb3JDb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRlcnJvckNvbG9yO1xuICB9XG5cbiAgdGV4dGFyZWEuaW52YWxpZHtcbiAgICBjb2xvcjogJGVycm9yQ29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZXJyb3JDb2xvcjtcbiAgfVxuXG4gIGlucHV0LmludmFsaWQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGVycm9yQ29sb3I7XG4gIH1cbn1cblxuLmxpbmstdW5zdHlsZWQsIC5saW5rLXVuc3R5bGVkOmxpbmssIC5saW5rLXVuc3R5bGVkOmhvdmVyIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbn1cblxuLnByb2dyZXNzLWJhci1sZWZ0LWFsaWduZWQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG5cbi5wcm9ncmVzcy1iZyB7XG4gIGhlaWdodDogMi4xcmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5wcm9ncmVzcy1iYXItZGVsaW1pdGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB3aGl0ZTtcbn1cblxuLmNhcmQuZGFpbHktdXNhZ2UtZ29hbCB7XG4gIC5nYWxsb25zLWNvbnN1bWVkLXZzLWdvYWwtdG90YWwge1xuICAgIC5nYWxsb25zLWNvbnN1bWVkIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gICAgLmdvYWwtdG90YWwge1xuICAgICAgY29sb3I6ICM5NDk0OTQ7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG59XG5cbi5sZWFrLWRldGVjdGlvbi13aWRnZXQuaGVhbHRoLXRlc3Qge1xuICAucG9wb3Zlci1pbmZvLWljb24ge1xuICAgIGNvbG9yOiAkZ3JheS00MDA7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgfVxuICAuaGVhbHRoY2hlY2std2lkZ2V0IHtcbiAgICBtaW4taGVpZ2h0OiAzOHB4O1xuICB9XG4gIC5zZW5zaXRpdml0eS1jb250cm9scy1jb250YWluZXIge1xuICAgIGhlaWdodDogNTBweDtcblxuICAgIC5kcmlwLWxvZ28tY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDBweDtcbiAgICB9XG5cbiAgICAucmMtc2xpZGVyIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuICB9XG59XG5cbi5uby1kZXZpY2Utc3RhdHMtY2FyZCB7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgfVxuICAuc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB9XG4gIGEge1xuICAgIHBhZGRpbmc6IDMwcHggMTVweCAxMHB4IDBweDtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTQwcHg7XG4gICAgfVxuICB9XG59XG5cbi5kZXZpY2Utc3RhdHMtY2FyZCB7XG4gIC50ZWxlbWV0cnktY29udHJvbHMge1xuICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgbWFyZ2luOiAyNHB4IDE1cHggNDRweCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGN0Y5RkU7XG4gICAgcGFkZGluZzogOHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIC5kZXZpY2Utc3RhdGUtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAkYm9yZGVyLWNvbG9yIDFweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgLmRldmljZS1zdGF0ZS1jb250YWluZXIge1xuICAgICAgYm9yZGVyLXRvcDogc29saWQgJGJvcmRlci1jb2xvciAxcHg7XG4gICAgICBtYXJnaW4tdG9wOiAyMnB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgfVxuICB9XG5cbiAgLmRldmljZS1kcm9wZG93biB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTA1RDczO1xuICAgIH1cbiAgfVxuXG4gIC5kZXZpY2Utc3RhdHVzIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmc6IDhweCAwIDAgMjBweDtcblxuICAgIC5kZXZpY2Utc3RhdHVzLWljb24ge1xuICAgICAgcGFkZGluZzogNXB4IDZweDtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGhlaWdodDogMTJweDtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAuZGV2aWNlLXN0YXR1cy1pY29uLmRldmljZS1vbmxpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZsby1ncmVlbjtcbiAgICB9XG4gICAgLmRldmljZS1zdGF0dXMtaWNvbi5kZXZpY2Utb2ZmbGluZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDczMzMzO1xuICAgIH1cblxuICAgIC5zdGF0dXMtdGV4dCB7XG4gICAgICBwYWRkaW5nOiAycHggMHB4IDAgOHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIH1cbiAgfVxuXG4gIC5sYXN0LXJlcG9ydGVkLWRhdGUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDE0cHg7XG4gIH1cblxuICAubG9hZGVyLXdyYXBwZXIge1xuICAgIG1pbi1oZWlnaHQ6IDE5MHB4O1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuXG4gICAgLmxvYWRlciB7XG4gICAgICBib3JkZXI6IDVweCBzb2xpZCAjZjNmM2YzO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICMzNDk4ZGI7XG4gICAgICB3aWR0aDogODBweDtcbiAgICAgIGhlaWdodDogODBweDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTsgLyogU2FmYXJpICovXG4gICAgICBhbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlO1xuICAgIH1cbiAgfVxufVxuXG4ucmMtc2xpZGVyLWhhbmRsZSB7XG4gIGhlaWdodDogMjVweDtcbiAgd2lkdGg6IDI1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTFweDtcbiAgbWFyZ2luLXRvcDogLTExcHg7XG4gIGJvcmRlcjogMXB4ICNjY2M7XG5cbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMXB4IDJweCAwcHggcmdiYSgxNzEsMTcxLDE3MSwxKTtcbiAgLW1vei1ib3gtc2hhZG93OiAwcHggMXB4IDJweCAwcHggcmdiYSgxNzEsMTcxLDE3MSwxKTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMHB4IHJnYmEoMTcxLDE3MSwxNzEsMSk7XG59XG5cbi5yYy1zbGlkZXItZG90LnJjLXNsaWRlci1kb3QtYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAkZmxvLWdyZWVuO1xufVxuXG4ucmMtc2xpZGVyLXRyYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZsby1ncmVlbjtcbn1cblxuLnJjLXNsaWRlci1oYW5kbGU6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAkZmxvLWdyZWVuO1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICRmbG8tZ3JlZW47XG59XG5cblxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcbiAgJHNpemU6IDEwICokaTtcblxuICAuaW1hZ2Utc2l6ZS0jeyRzaXplfSB7XG4gICAgd2lkdGg6ICRzaXplI3snJSd9O1xuICB9XG5cbiAgLmltYWdlLXNpemUtI3skc2l6ZSArIDV9IHtcbiAgICB3aWR0aDogJHNpemUrNSN7JyUnfTtcbiAgfVxufVxuXG4kZml4dHVyZS1hcHBsaWFuY2UtY29sb3I6ICMxRUI2Q0I7XG4kZml4dHVyZS1iYXRoLWNvbG9yOiAjRTkyQzkwO1xuJGZpeHR1cmUtc2hvd2VyLWNvbG9yOiAjRTkzQTJFO1xuJGZpeHR1cmUtZmF1Y2V0LWNvbG9yOiAjQTM0M0I0O1xuJGZpeHR1cmUtdG9pbGV0LWNvbG9yOiAjRjJBNjQ3O1xuJGZpeHR1cmUtZHJpcC1pcnJpZ2F0aW9uLWNvbG9yOiAjNEU4NUJCO1xuJGZpeHR1cmUtaG9zZS1jb2xvcjogIzJFOUFFOTtcbiRmaXh0dXJlLXBvb2wtY29sb3I6ICMzNEYwQ0Y7XG4kZml4dHVyZS1ob3QtdHViLWNvbG9yOiAjMzRGMENGO1xuJGZpeHR1cmUtaXJyaWdhdGlvbi1jb2xvcjogIzQzOTVBRjtcbiRmaXh0dXJlLW11bHRpcGxlLWZpeHR1cmVzLWNvbG9yOiAjRUE1NTJGO1xuJGZpeHR1cmUtd2F0ZXItc29mdG5lci1jb2xvcjogIzUwQkE1QjtcbiRmaXh0dXJlLXdhdGVyLWZpbHRlci1jb2xvcjogIzUwQkE1QjtcbiRmaXh0dXJlLW90aGVyLWNvbG9yOiAjOUVCRUQwO1xuXG4uZml4dHVyZS00MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZml4dHVyZS1hcHBsaWFuY2UtY29sb3I7XG59XG5cbi5maXh0dXJlLTEwMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmaXh0dXJlLWJhdGgtY29sb3I7XG59XG5cbi5maXh0dXJlLTEwMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmaXh0dXJlLXNob3dlci1jb2xvcjtcbn1cblxuLmZpeHR1cmUtMzAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZpeHR1cmUtZmF1Y2V0LWNvbG9yO1xufVxuXG4uZml4dHVyZS0yMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZml4dHVyZS10b2lsZXQtY29sb3I7XG59XG5cbi5maXh0dXJlLTUwMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmaXh0dXJlLWRyaXAtaXJyaWdhdGlvbi1jb2xvcjtcbn1cblxuLmZpeHR1cmUtNzAxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZpeHR1cmUtaG9zZS1jb2xvcjtcbn1cblxuLmZpeHR1cmUtNjAxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZpeHR1cmUtcG9vbC1jb2xvcjtcbn1cblxuLmZpeHR1cmUtNjAyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZpeHR1cmUtaG90LXR1Yi1jb2xvcjtcbn1cblxuLmZpeHR1cmUtNTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZpeHR1cmUtaXJyaWdhdGlvbi1jb2xvcjtcbn1cblxuLmZpeHR1cmUtOTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZpeHR1cmUtbXVsdGlwbGUtZml4dHVyZXMtY29sb3I7XG59XG5cbi5maXh0dXJlLTgwMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmaXh0dXJlLXdhdGVyLXNvZnRuZXItY29sb3I7XG59XG5cbi5maXh0dXJlLTgwMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmaXh0dXJlLXdhdGVyLWZpbHRlci1jb2xvcjtcbn1cblxuLmZpeHR1cmUtMTAwMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZml4dHVyZS1vdGhlci1jb2xvcjtcbn1cblxuLmNhcmQuZml4dHVyZS11c2FnZS1zdW1tYXJ5IHtcbiAgLmZpeHR1cmUtZGV0YWlscyB7XG4gICAgbWFyZ2luOiAxNXB4IDBweDtcblxuICAgIC5maXh0dXJlLWxvZ28tY29udGFpbmVyIHtcbiAgICAgIGhlaWdodDogNDVweDtcbiAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogODBweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgIC5maXh0dXJlLWxvZ28tY29udGFpbmVyLmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDUsIDQ1LCA0NSwgMC4yNSkgIWltcG9ydGFudDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5maXh0dXJlLXVzYWdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICBjb2xvcjogIzc3ODY5QjtcbiAgICB9XG4gICAgLmZpeHR1cmUtbmFtZSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH1cblxuICAgIC5maXh0dXJlLXRleHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDE1cHghaW1wb3J0YW50OztcbiAgICB9XG5cbiAgICAuZml4dHVyZS1sb2dvLWNvbnRhaW5lci5hY3RpdmUge1xuICAgICAgYm94LXNoYWRvdzogMXB4IDRweCAzcHggMnB4IHJnYigyMjQsIDIyNCwgMjI0KTtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMXB4IDRweCAzcHggMnB4IHJnYmEoMjI0LDIyNCwyMjQsMSk7XG4gICAgICAtbW96LWJveC1zaGFkb3c6IDFweCA0cHggM3B4IDJweCByZ2JhKDIyNCwyMjQsMjI0LDEpO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC5maXh0dXJlLXVzYWdlLWRldGFpbHMge1xuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICB3aWR0aDogN3B4O1xuICAgIGhlaWdodDogOHB4O1xuICB9XG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOUI5QjlCO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDI1NSwyNTUsMjU1LC41KTtcbiAgfVxuXG4gIC50aW1lbGluZSB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuXG4gICAgLnRpbWVsaW5lLW1hcmsge1xuICAgICAgZm9udC1zaXplOiA4cHg7XG4gICAgICB3aWR0aDogMTRweDtcbiAgICAgIGhlaWdodDogMTRweDtcbiAgICB9XG5cbiAgICAudGltZWxpbmUtbGluZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtNnB4O1xuICAgIH1cbiAgICBcbiAgICAuc2hvdy1tb3JlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgIGEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9hZGVyLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgLmxvYWRlciB7XG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmM2YzZjM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICMzNDk4ZGI7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlOyAvKiBTYWZhcmkgKi9cbiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGlueS1oZWlnaHR7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAudGltZWxpbmUge1xuICAgICAgaGVpZ2h0OiA2NTBweDtcbiAgICB9XG4gIH1cblxuICAuYmFubmVyIHtcbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIG1hcmdpbjogMTVweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjNzNkMzUyO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cbiAgfVxufVxuXG4uY3Vyc29yLXBvaW50ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5lY2hhcnRzLWZvci1yZWFjdCB7XG4gIGRpdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFRFTVBPUkFSWVxuLmRvdC13YXZlIHtcbiAgLmRvdCB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6MTBweDtcbiAgICBoZWlnaHQ6MTBweDtcbiAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6OHB4O1xuICAgIGJhY2tncm91bmQ6ICM4OTg5ODk7XG4gICAgYW5pbWF0aW9uOiB3YXZlIDEuM3MgbGluZWFyIGluZmluaXRlO1xuXG4gICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjlzO1xuICAgIH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHdhdmUge1xuICAwJSwgNjAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IGluaXRpYWw7XG4gIH1cblxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbn1cblxuXG4vKiBTYWZhcmkgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcbiAgMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufSIsIkBpbXBvcnQgXCJGbG9JY29ucy5zY3NzXCI7XG5cblxuQHN1cHBvcnRzIChmb250OiAtYXBwbGUtc3lzdGVtLWJvZHkpIHtcbiAgLmxvZ2luLCBcbiAgLmxvZ2luIC5jb250YWN0QmxvY2sgLmNvbnRlbnQgYSxcbiAgLmxvZ2luIGZvcm0gaW5wdXQsXG4gIC5sb2dpbiBsZWdlbmQsXG4gIC5sb2dpbiBmb3JtIGJ1dHRvbixcbiAgLmxvZ2luIC5mb3Jnb3QtcGFzc3dvcmQsXG4gIC5sb2dpbiAuZm9ybSAubWVzc2FnZS1jb250YWluZXIgLmVycm9yLW1lc3NhZ2Uge1xuICAgIGZvbnQ6IC1hcHBsZS1zeXN0ZW0tYm9keSAhaW1wb3J0YW50O1xuICB9XG59IiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZsb0ljb25zXCI7XG4gIHNyYzogIHVybCgnL2Fzc2V0cy9mb250cy9GbG9JY29ucy5lb3QnKTtcbiAgc3JjOiAgdXJsKCcvYXNzZXRzL2ZvbnRzL0Zsb0ljb25zLmVvdCNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJy9hc3NldHMvZm9udHMvRmxvSWNvbnMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgnL2Fzc2V0cy9mb250cy9GbG9JY29ucy53b2ZmJykgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuICBcbltjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlICAgICAgZm9udHMgKi9cbiAgJjpiZWZvcmUsICY6YWZ0ZXJ7XG4gICAgZm9udC1mYW1pbHk6ICdGbG9JY29ucycgIWltcG9ydGFudDtcbiAgICBzcGVhazogbm9uZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgXG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgfVxufVxuXG4uaWNvbi1CZWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG4uaWNvbi1DaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMFwiO1xuICBjb2xvcjogI2QxM2MzODtcbn1cbi5pY29uLUNoZWNrbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiO1xufVxuLmljb24tQ2lyY2xlLVNob3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMlwiO1xufVxuLmljb24tQ2lyY2xlLURpc2h3YXNoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbn1cbi5pY29uLUNpcmNsZS1GYXVjZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cbi5pY29uLUNpcmNsZS1PdGhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNVwiO1xufVxuLmljb24tQ2lyY2xlLVRvaWxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuLmljb24tQ2lyY2xlLUxhdW5kcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cbi5pY29uLUNsb3NpbmctWDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOFwiO1xufVxuLmljb24tRW52ZWxvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjtcbn1cbi5pY29uLUZhdWNldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiO1xufVxuLmljb24tR2VhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZlwiO1xuICBjb2xvcjogI2QxM2MzODtcbn1cbi5pY29uLUluZm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjtcbiAgY29sb3I6ICNkMTNjMzg7XG59XG4uaWNvbi1QaG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYlwiO1xufVxuLmljb24tUFNJLUdhdWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG4uaWNvbi1UaGVybW9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiO1xufVxuLmljb24tZG93bmxvYWQtbG9ja2VkIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuIiwiLyohXG4gKiBCb290c3RyYXAgdjQuMC4wIChodHRwczovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE4IFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAxOCBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImlucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1dGF0aW5nIHNvdXJjZSBjb2RlIGFjcm9zcyBvdXIgdmFyaWFibGVzLCBtYXBzLCBhbmQgbWl4aW5zLlxuXG4vLyBBc2NlbmRpbmdcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBTdGFydHMgYXQgemVyb1xuLy8gQW5vdGhlciBncmlkIG1peGluIHRoYXQgZW5zdXJlcyB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXApIHtcbiAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluIGAkZ3JpZC1icmVha3BvaW50c2AgbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgfVxufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3RcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yKSB7XG4gICRyOiByZWQoJGNvbG9yKTtcbiAgJGc6IGdyZWVuKCRjb2xvcik7XG4gICRiOiBibHVlKCRjb2xvcik7XG5cbiAgJHlpcTogKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xuXG4gIEBpZiAoJHlpcSA+PSAkeWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkKSB7XG4gICAgQHJldHVybiAkeWlxLXRleHQtZGFyaztcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkeWlxLXRleHQtbGlnaHQ7XG4gIH1cbn1cblxuLy8gUmV0cmlldmUgY29sb3IgU2FzcyBtYXBzXG5AZnVuY3Rpb24gY29sb3IoJGtleTogXCJibHVlXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gdGhlbWUtY29sb3IoJGtleTogXCJwcmltYXJ5XCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gZ3JheSgka2V5OiBcIjEwMFwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkZ3JheXMsICRrZXkpO1xufVxuXG4vLyBSZXF1ZXN0IGEgdGhlbWUgY29sb3IgbGV2ZWxcbkBmdW5jdGlvbiB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3ItbmFtZTogXCJwcmltYXJ5XCIsICRsZXZlbDogMCkge1xuICAkY29sb3I6IHRoZW1lLWNvbG9yKCRjb2xvci1uYW1lKTtcbiAgJGNvbG9yLWJhc2U6IGlmKCRsZXZlbCA+IDAsICMwMDAsICNmZmYpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG5cbi8vXG4vLyBDb2xvciBzeXN0ZW1cbi8vXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4kZ3JheXM6IG1hcC1tZXJnZSgoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbiksICRncmF5cyk7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbiRjb2xvcnM6IG1hcC1tZXJnZSgoXG4gIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4pLCAkY29sb3JzKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKChcbiAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICBcImluZm9cIjogICAgICAgJGluZm8sXG4gIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFya1xuKSwgJHRoZW1lLWNvbG9ycyk7XG4vLyBzdHlsZWxpbnQtZW5hYmxlXG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuJHNwYWNlcnM6IG1hcC1tZXJnZSgoXG4gIDA6IDAsXG4gIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgMjogKCRzcGFjZXIgKiAuNSksXG4gIDM6ICRzcGFjZXIsXG4gIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgNTogKCRzcGFjZXIgKiAzKVxuKSwgJHNwYWNlcnMpO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuJHNpemVzOiBtYXAtbWVyZ2UoKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbiksICRzaXplcyk7XG4vLyBzdHlsZWxpbnQtZW5hYmxlXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cyk7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIEZvbnRzXG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgXCJRdWVzdHJpYWxcIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAuODc1KSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjggIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjYgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjQgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjIgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjEgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAgICAgIDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAgICAgIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkZ3JheS05MDAsIDcuNSUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXRvcDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqICRpbnB1dC1idG4tbGluZS1oZWlnaHQpICsgKCRpbnB1dC1idG4tcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyLXNtOiAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtc20gKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLXNtfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lci1sZzogICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWxnICogJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZykgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1sZ30gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAgICAgICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjYgMi45NzQgNy4yNSA4IDIuMTkzeicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnOiAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM0UlM0NwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzRSUzQ2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDUnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSwgMCAwIDVweCByZ2JhKCRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvciwgLjUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAxMjUlICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhclxuXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAoJHNwYWNlciAvIDIpICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBjYWxjKCN7JGNhcmQtYm9yZGVyLXJhZGl1c30gLSAjeyRjYXJkLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6IDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgICAgICAgICAgICAtMTAgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIC43NSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAuNSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41LTIuNS0yLjUgMi41LTIuNS0xLjUtMS41eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2hvdmVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JhZGdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9zY3JlZW4tcmVhZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtaGlkZVwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Zpc2liaWxpdHlcIjtcblxuLy8gLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydFwiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NhcmV0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcblxuLy8gLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm94LXNoYWRvd1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdHJhbnNpdGlvblwiO1xuXG4vLyAvLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbi8vIEBpbXBvcnQgXCJtaXhpbnMvbmF2YmFyLWFsaWduXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZmxvYXRcIjtcbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDJweCwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW5mcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGluZGVudGF0aW9uXG5cbi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2FsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPU+KAlGFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHN1ZWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGluZGVudGF0aW9uLCBtZWRpYS1xdWVyeS1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gICZbaHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1ibG9jay1uby1kdXBsaWNhdGUtcHJvcGVydGllc1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFZpc2liaWxpdHlcblxuQG1peGluIGludmlzaWJsZSgkdmlzaWJpbGl0eSkge1xuICB2aXNpYmlsaXR5OiAkdmlzaWJpbGl0eSAhaW1wb3J0YW50O1xufVxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGJvcmRlciwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRib3JkZXIsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGJvcmRlciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuIiwiQG1peGluIGNhcmV0LWRvd24ge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtd2lkdGggKiAuODU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXA7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC13aWR0aCAqIC44NTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC13aWR0aCAqIC44NTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAoJHNwYWNlciAvIDIpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvcikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkZm9ybS1mZWVkYmFjay1mb250LXNpemU7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogLjVyZW07XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAuOCk7XG4gICAgYm9yZGVyLXJhZGl1czogLjJyZW07XG4gIH1cblxuICAuZm9ybS1jb250cm9sLFxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAyNSUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRib2R5LWJnLCAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHsgYm9yZGVyLWNvbG9yOiBpbmhlcml0OyB9XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG4iLCJAbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7IC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGNvbGxhcHNpbmcgd2hlbiBlbXB0eVxuICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gICAgcGFkZGluZy1sZWZ0OiAoJGd1dHRlciAvIDIpO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLXJvdygpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAtMik7XG4gIG1hcmdpbi1sZWZ0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gLTIpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDsgLy8gUHJldmVudCBjb2xsYXBzaW5nXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQG1peGluIGZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuQG1peGluIGZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5AbWl4aW4gZmxvYXQtbm9uZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLW5vLXZlbmRvci1wcmVmaXgsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBTZXR0aW5nIEB2aWV3cG9ydCBjYXVzZXMgc2Nyb2xsYmFycyB0byBvdmVybGFwIGNvbnRlbnQgaW4gSUUxMSBhbmQgRWRnZSwgc29cbi8vICAgIHdlIGZvcmNlIGEgbm9uLW92ZXJsYXBwaW5nLCBub24tYXV0by1oaWRpbmcgc2Nyb2xsYmFyIHRvIGNvdW50ZXJhY3QuXG4vLyA2LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IFwiUXVlc3RyaWFsXCI7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyOyAvLyA1XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsgLy8gNlxufVxuXG4vLyBJRTEwKyBkb2Vzbid0IGhvbm9yIGA8bWV0YSBuYW1lPVwidmlld3BvcnRcIj5gIGluIHNvbWUgY2FzZXMuXG5AYXQtcm9vdCB7XG4gIEAtbXMtdmlld3BvcnQge1xuICAgIHdpZHRoOiBkZXZpY2Utd2lkdGg7XG4gIH1cbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuYXJ0aWNsZSwgYXNpZGUsIGRpYWxvZywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZSB0aGVcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbn1cblxuLy8gU3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmUgb24gZWxlbWVudHMgdGhhdCBjYW5ub3QgYmUgYWNjZXNzZWQgdmlhIGtleWJvYXJkLlxuLy8gVGhpcyBwcmV2ZW50cyBhbiB1bndhbnRlZCBmb2N1cyBvdXRsaW5lIGZyb20gYXBwZWFyaW5nIGFyb3VuZCBlbGVtZW50cyB0aGF0XG4vLyBtaWdodCBzdGlsbCByZXNwb25kIHRvIHBvaW50ZXIgZXZlbnRzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZVxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICBib3JkZXItYm90dG9tOiAwOyAvLyAxXG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLVxufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmb250LXdlaWdodC1ub3RhdGlvblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgZm9udC13ZWlnaHQtbm90YXRpb25cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLy8gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKVxuLy8gd2hpY2ggaGF2ZSBub3QgYmVlbiBtYWRlIGV4cGxpY2l0bHkga2V5Ym9hcmQtZm9jdXNhYmxlICh3aXRob3V0IHRhYmluZGV4KS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmb250LWZhbWlseS1uby1kdXBsaWNhdGUtbmFtZXNcbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICBmb250LXNpemU6IDFlbTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBmb250LWZhbWlseS1uby1kdXBsaWNhdGUtbmFtZXNcblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gV2UgaGF2ZSBAdmlld3BvcnQgc2V0IHdoaWNoIGNhdXNlcyBzY3JvbGxiYXJzIHRvIG92ZXJsYXAgY29udGVudCBpbiBJRTExIGFuZCBFZGdlLCBzb1xuICAvLyB3ZSBmb3JjZSBhIG5vbi1vdmVybGFwcGluZywgbm9uLWF1dG8taGlkaW5nIHNjcm9sbGJhciB0byBjb3VudGVyYWN0LlxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUVcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxudGgge1xuICAvLyBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGZyb20gdGhlIGA8Ym9keT5gLCBvciB0aGVcbiAgLy8gY2xvc2VzdCBwYXJlbnQgd2l0aCBhIHNldCBgdGV4dC1hbGlnbmAuXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcbi8vIHJlc3VsdHMgaW4gYSBsb3NzIG9mIHRoZSBkZWZhdWx0IGBidXR0b25gIGZvY3VzIHN0eWxlcy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAxcHggZG90dGVkO1xuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICBwYWRkaW5nOiAwOyAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtXG59XG5cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCBhcHBlYXJhbmNlIG9mIHRlbXBvcmFsIGlucHV0cyB0byBhdm9pZCBhIE1vYmlsZSBTYWZhcmlcbiAgLy8gYnVnIHdoZXJlIHNldHRpbmcgYSBjdXN0b20gbGluZS1oZWlnaHQgcHJldmVudHMgdGV4dCBmcm9tIGJlaW5nIHZlcnRpY2FsbHlcbiAgLy8gY2VudGVyZWQgd2l0aGluIHRoZSBpbnB1dC5cbiAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbiAgLy8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTEyNjZcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogJGgxLWZvbnQtc2l6ZTsgfVxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogJGgyLWZvbnQtc2l6ZTsgfVxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZTsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogJGg0LWZvbnQtc2l6ZTsgfVxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGg2LWZvbnQtc2l6ZTsgfVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiAkZGlzcGxheTEtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBmb250LXNpemU6ICRkaXNwbGF5Mi1zaXplO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXkzLXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgZm9udC1zaXplOiAkZGlzcGxheTQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBmb250LXNpemU6ICRibG9ja3F1b3RlLWZvbnQtc2l6ZTtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogODAlOyAvLyBiYWNrIHRvIGRlZmF1bHQgZm9udC1zaXplXG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0IFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAoJHNwYWNlciAvIDIpO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgZm9udC1zaXplOiAkZmlndXJlLWNhcHRpb24tZm9udC1zaXplO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW5saW5lIGFuZCBibG9jayBjb2RlIHN0eWxlc1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBmb250LXNpemU6ICRjb2RlLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBmb250LXNpemU6ICRrYmQtZm9udC1zaXplO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGtiZC1ib3gtc2hhZG93KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAuY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoKTtcbiAgfVxufVxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRoIDEwMCUgd2lkdGggZm9yXG4vLyBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG59XG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXJlZCB2ZXJzaW9uXG4vL1xuLy8gQWRkIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAtOSkpO1xufVxuXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsICR0YWJsZS1hY3RpdmUtYmcpO1xuXG5cbi8vIERhcmsgc3R5bGVzXG4vL1xuLy8gU2FtZSB0YWJsZSBtYXJrdXAsIGJ1dCBpbnZlcnRlZCBjb2xvciBzY2hlbWU6IGRhcmsgYmFja2dyb3VuZCBhbmQgbGlnaHQgdGV4dC5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi50YWJsZSB7XG4gIC50aGVhZC1kYXJrIHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC50aGVhZC1saWdodCB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1oZWFkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1kYXJrIHtcbiAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcblxuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoIHtcbiAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCB7XG4gICAgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDA1N1xuXG4gICAgICAgIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlciBvbiBob3Jpem9udGFsIHNjcm9sbCBkdWUgdG8gdXNlIG9mIGBkaXNwbGF5OiBibG9jaztgXG4gICAgICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICAvL3BhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS10b3AgJGlucHV0LXBhZGRpbmcteCAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgLy8gTWFudWFsbHkgdXNlIHRoZSBpZi9lbHNlIGluc3RlYWQgb2YgdGhlIG1peGluIHRvIGFjY291bnQgZm9yIGlPUyBvdmVycmlkZVxuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICB9IEBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2UgdW5kbyB0aGUgaU9TIGRlZmF1bHRcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXl9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPi88bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXNpemU6IGluaGVyaXQ7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktbGd9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktc219ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gVGhlIGAuZm9ybS1ncm91cC0qIGZvcm0tY29udHJvbGAgdmFyaWF0aW9ucyBhcmUgc2FkbHkgZHVwbGljYXRlZCB0byBhdm9pZCB0aGVcbi8vIGlzc3VlIGRvY3VtZW50ZWQgaW4gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNTA3NC5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbC1zbSB7XG4gICY6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbC1sZyB7XG4gICY6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcblxuICAuZXJyb3ItbWVzc2FnZSB7XG4gICAgY29sb3I6IHJlZDtcbiAgfVxufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLTVweDtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBiYXNlIC5mb3JtLWNoZWNrXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxuXG5AaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXCJ2YWxpZFwiLCAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcik7XG5AaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXCJpbnZhbGlkXCIsICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IpO1xuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkZm9udC1zaXplLWJhc2UsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICAvLyBTaGFyZSBob3ZlciBhbmQgZm9jdXMgc3R5bGVzXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gIC8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCAuYnRuIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGJ0bi1saW5lLWhlaWdodC1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbiAgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbiAgfVxufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLmZhZGUge1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICYuc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICBkaXNwbGF5OiBub25lO1xuICAmLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbnRyIHtcbiAgJi5jb2xsYXBzZS5zaG93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIH1cbn1cblxudGJvZHkge1xuICAmLmNvbGxhcHNlLnNob3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0O1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAwO1xuICBtYXJnaW46ICRkcm9wZG93bi1zcGFjZXIgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlOyAvLyBSZWRlY2xhcmUgYmVjYXVzZSBuZXN0aW5nIGNhbiBjYXVzZSBpbmhlcml0YW5jZSBpc3N1ZXNcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcHJpZ2h0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChyaWdodCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wbGVmdCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGxlZnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAwIDEgYXV0bztcblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwICsgLmJ0bixcbiAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIC5idG4sXG4gIC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuICsgLmJ0bixcbiAgPiAuYnRuICsgLmJ0bi1ncm91cCxcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIC8vIEFkZCB3aWR0aCAxJSBhbmQgZmxleC1iYXNpcyBhdXRvIHRvIGVuc3VyZSB0aGF0IGJ1dHRvbiB3aWxsIG5vdCB3cmFwIG91dFxuICAgIC8vIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUgRWRnZSsgYW5kIEZpcmVmb3guIENocm9tZSBkb2VzIG5vdCByZXF1aXJlIHRoaXMuXG4gICAgd2lkdGg6IDElO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5jdXN0b20tc2VsZWN0IHtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjpiZWZvcmUgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmJlZm9yZSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kXG4vL1xuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxuLy8gYXBwZW5kIGVsZW1lbnRzIGFsbG93IHVzIHRvIDEpIGJlIGxlc3MgY2xldmVyLCAyKSBzaW1wbGlmeSBvdXIgc2VsZWN0b3JzLCBhbmRcbi8vIDMpIHN1cHBvcnQgSFRNTDUgZm9ybSB2YWxpZGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgQGV4dGVuZCAuZm9ybS1jb250cm9sLWxnO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgQGV4dGVuZCAuZm9ybS1jb250cm9sLXNtO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICgxcmVtICogJGxpbmUtaGVpZ2h0LWJhc2UpO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICY6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ3VzdG9tIGNvbnRyb2wgaW5kaWNhdG9yc1xuLy9cbi8vIEJ1aWxkIHRoZSBjdXN0b20gY29udHJvbHMgb3V0IG9mIHBzdWVkby1lbGVtZW50cy5cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgoJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMik7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCgkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyKTtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIGNoZWNrYm94ZXMuXG5cbi5jdXN0b20tY2hlY2tib3gge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdyk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gICAgJjppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSYWRpb3Ncbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgcmFkaW9zLlxuXG4uY3VzdG9tLXJhZGlvIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwOi8vcHJpbWVyY3NzLmlvLlxuLy9cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJnICRjdXN0b20tc2VsZWN0LWluZGljYXRvciBuby1yZXBlYXQgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAkY3VzdG9tLXNlbGVjdC1iZy1zaXplO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgLy8gRm9yIHZpc3VhbCBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHBsYXRmb3Jtcy9icm93c2VycyxcbiAgICAgIC8vIHN1cHByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSGlkZXMgdGhlIGRlZmF1bHQgY2FyZXQgaW4gSUUxMVxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtc207XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk7XG4gIGZvbnQtc2l6ZTogJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15O1xuICBmb250LXNpemU6ICRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZztcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWNvbnRyb2wge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBjYWxjKCN7JGN1c3RvbS1maWxlLWhlaWdodH0gLSAjeyRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGh9ICogMik7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAwKTtcbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzIG9yIGA8dWw+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cbiAgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVyaXRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICA+IC5jb250YWluZXIsXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJG5hdmJhci1icmFuZC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW5hdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBmb250LXNpemU6ICRuYXZiYXItdG9nZ2xlci1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgLm5hdmJhci10b2dnbGVyIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRyb3B1cCB7XG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxufVxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcbi5uYXZiYXItZGFyayB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZztcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtKCRjYXJkLXNwYWNlci15IC8gMik7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAwIDApO1xuICB9XG5cbiAgKyAubGlzdC1ncm91cCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0oJGNhcmQtc3BhY2VyLXggLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0oJGNhcmQtc3BhY2VyLXggLyAyKTtcbiAgbWFyZ2luLWxlZnQ6IC0oJGNhcmQtc3BhY2VyLXggLyAyKTtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbn1cblxuLmNhcmQtaW1nIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ2FyZCBpbWFnZSBjYXBzXG4uY2FyZC1pbWctdG9wIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZy1ib3R0b20ge1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBDYXJkIGRlY2tcblxuLmNhcmQtZGVjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWRlY2stbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtZGVjay1tYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyM0LWZsZXgtc2hvcnRoYW5kLWRlY2xhcmF0aW9ucy13aXRoLXVuaXRsZXNzLWZsZXgtYmFzaXMtdmFsdWVzLWFyZS1pZ25vcmVkXG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBkZWZhdWx0XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzIzQtZmxleC1zaG9ydGhhbmQtZGVjbGFyYXRpb25zLXdpdGgtdW5pdGxlc3MtZmxleC1iYXNpcy12YWx1ZXMtYXJlLWlnbm9yZWRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCg6b25seS1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtaGVhZGVyLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDb2x1bW5zXG4vL1xuXG4uY2FyZC1jb2x1bW5zIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGNvbHVtbi1jb3VudDogJGNhcmQtY29sdW1ucy1jb3VudDtcbiAgICBjb2x1bW4tZ2FwOiAkY2FyZC1jb2x1bW5zLWdhcDtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBEb24ndCBsZXQgdGhlaXIgd2lkdGggY2hhbmdlXG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBTdXBwcmVzcyB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yIGluIG1vZGVybiBicm93c2Vyc1xuICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICBjb250ZW50OiBcIiN7JGJyZWFkY3J1bWItZGl2aWRlcn1cIjtcbiAgfVxuXG4gIC8vIElFOS0xMSBoYWNrIHRvIHByb3Blcmx5IGhhbmRsZSBoeXBlcmxpbmsgdW5kZXJsaW5lcyBmb3IgYnJlYWRjcnVtYnMgYnVpbHRcbiAgLy8gd2l0aG91dCBgPHVsPmBzLiBUaGUgYDo6YmVmb3JlYCBwc2V1ZG8tZWxlbWVudCBnZW5lcmF0ZXMgYW4gZWxlbWVudFxuICAvLyAqd2l0aGluKiB0aGUgLmJyZWFkY3J1bWItaXRlbSBhbmQgdGhlcmVieSBpbmhlcml0cyB0aGUgYHRleHQtZGVjb3JhdGlvbmAuXG4gIC8vXG4gIC8vIFRvIHRyaWNrIElFIGludG8gc3VwcHJlc3NpbmcgdGhlIHVuZGVybGluZSwgd2UgZ2l2ZSB0aGUgcHNldWRvLWVsZW1lbnQgYW5cbiAgLy8gdW5kZXJsaW5lIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHJlbW92ZSBpdC5cbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLXBhZGRpbmcteSAkcGFnaW5hdGlvbi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgLnBhZ2UtbGluayBlbGVtZW50c1xuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLnBhZ2UtaXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgei1pbmRleDogMTtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAvLyBPcGluaW9uYXRlZDogcmVtb3ZlIHRoZSBcImhhbmRcIiBjdXJzb3Igc2V0IHByZXZpb3VzbHkgZm9yIC5wYWdlLWxpbmtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJGxpbmUtaGVpZ2h0LWxnLCAkYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkbGluZS1oZWlnaHQtc20sICRib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4vLyBQaWxsIGJhZGdlc1xuLy9cbi8vIE1ha2UgdGhlbSBleHRyYSByb3VuZGVkIHdpdGggYSBtb2RpZmllciB0byByZXBsYWNlIHYzJ3MgYmFkZ2VzLlxuXG4uYmFkZ2UtcGlsbCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgcGFkZGluZy1sZWZ0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENvbG9yc1xuLy9cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGJhZGdlcyBnZXQgZGFya2VyIG9uIDpob3ZlcikuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYmFkZ2UtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbiIsIi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAkanVtYm90cm9uLXBhZGRpbmcgKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAoJGNsb3NlLWZvbnQtc2l6ZSArICRhbGVydC1wYWRkaW5nLXggKiAyKTtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYWxlcnQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYm9yZGVyLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtY29sb3ItbGV2ZWwpKTtcbiAgfVxufVxuIiwiQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgZm9udC1zaXplOiAkcHJvZ3Jlc3MtZm9udC1zaXplO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwcm9ncmVzcy1ib3gtc2hhZG93KTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbik7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XG59XG5cbi5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICBhbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZztcbn1cbiIsIi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICAvLyBQbGFjZSB0aGUgYm9yZGVyIG9uIHRoZSBsaXN0IGl0ZW1zIGFuZCBuZWdhdGl2ZSBtYXJnaW4gdXAgZm9yIGJldHRlciBzdHlsaW5nXG4gIG1hcmdpbi1ib3R0b206IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAkY2xvc2UtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IC43NTtcbiAgfVxuXG4gIC8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCAuY2xvc2UgZWxlbWVudHNcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlXG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG5cbiAgLm1vZGFsLW9wZW4gJiB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAoI3skbW9kYWwtZGlhbG9nLW1hcmdpbn0gKiAyKSk7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nKSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZykgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiBzaG91bGQgdGhlcmUgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcblxuICAvLyBFYXNpbHkgcGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHsgbWFyZ2luLWxlZnQ6IC4yNXJlbTsgfVxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHsgbWFyZ2luLXJpZ2h0OiAuMjVyZW07IH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAoI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwfSAqIDIpKTtcbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cblxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyB7IG1heC13aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3Age1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXJpZ2h0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWxlZnQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCIucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIGZvbnQtc2l6ZTogJHBvcG92ZXItZm9udC1zaXplO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIG1hcmdpbjogMCAkYm9yZGVyLXJhZGl1cy1sZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgYm90dG9tOiBjYWxjKCgjeyRwb3BvdmVyLWFycm93LWhlaWdodH0gKyAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICogLTEpO1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogY2FsYygoI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9ICsgI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAqIC0xKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkYm9yZGVyLXJhZGl1cy1sZyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSxcbiAgLmFycm93OjphZnRlciB7XG4gICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlIHtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gIH1cblxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSxcbiAgLmFycm93OjphZnRlciB7XG4gICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgfVxuXG4gIC5hcnJvdzo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gIH1cblxuICAuYXJyb3c6OmFmdGVyIHtcbiAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIC0yKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJGJvcmRlci1yYWRpdXMtbGcgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuICB9XG5cbiAgLmFycm93OjpiZWZvcmUsXG4gIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gIH1cblxuICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICB9XG5cbiAgLmFycm93OjphZnRlciB7XG4gICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICAkb2Zmc2V0LWJvcmRlci13aWR0aDogY2FsYygjeyRib3JkZXItcmFkaXVzLWxnfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSk7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRvZmZzZXQtYm9yZGVyLXdpZHRoKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBXcmFwcGVyIGZvciB0aGUgc2xpZGUgY29udGFpbmVyIGFuZCBpbmRpY2F0b3JzXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcGVyc3BlY3RpdmU6IDEwMDBweDtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbn1cblxuLy8gQ1NTMyB0cmFuc2Zvcm1zIHdoZW4gc3VwcG9ydGVkIGJ5IHRoZSBicm93c2VyXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbi5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblxuICBAc3VwcG9ydHMgKHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG5cbiAgQHN1cHBvcnRzICh0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2LFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXG4gIEBzdXBwb3J0cyAodHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZCkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIC8vIFdlIGNhbid0IGhhdmUgYSB0cmFuc2l0aW9uIGhlcmUgYmVjYXVzZSBXZWJLaXQgY2FuY2VscyB0aGUgY2Fyb3VzZWxcbiAgLy8gYW5pbWF0aW9uIGlmIHlvdSB0cmlwIHRoaXMgd2hpbGUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIGFuaW1hdGlvbi5cblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6IC45O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMCwgMCwgLjI1KSwgcmdiYSgwLCAwLCAwLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDAsIDAsIDAsIC4yNSksIHJnYmEoMCwgMCwgMCwgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnLCAuNSk7XG5cbiAgICAvLyBVc2UgcHNldWRvIGNsYXNzZXMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTEwcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0xMHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyKTtcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAoKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyKTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCJAaW1wb3J0IFwidXRpbGl0aWVzL2FsaWduXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2JhY2tncm91bmRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYm9yZGVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9kaXNwbGF5XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2VtYmVkXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2ZsZXhcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZmxvYXRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2NyZWVucmVhZGVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zaXppbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc3BhY2luZ1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy90ZXh0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Zpc2liaWxpdHlcIjtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCIuY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZCN7JGluZml4fS1ub25lICAgICAgICAgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUgICAgICAgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWlubGluZS1ibG9jayB7IGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tYmxvY2sgICAgICAgIHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LXRhYmxlICAgICAgICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZS1yb3cgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LXRhYmxlLWNlbGwgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWZsZXggICAgICAgICB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWlubGluZS1mbGV4ICB7IGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxuLy9cblxuQG1lZGlhIHByaW50IHtcbiAgLmQtcHJpbnQtbm9uZSAgICAgICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWlubGluZSAgICAgICB7IGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWlubGluZS1ibG9jayB7IGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWJsb2NrICAgICAgICB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUgICAgICAgIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC10YWJsZS1yb3cgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC10YWJsZS1jZWxsICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtZmxleCAgICAgICAgIHsgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWlubGluZS1mbGV4ICB7IGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0yMWJ5OSB7XG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoOSAvIDIxKTtcbiAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoOSAvIDE2KTtcbiAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgzIC8gNCk7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMWJ5MSB7XG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoMSAvIDEpO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IEBpbmNsdWRlIGZsb2F0LWxlZnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBAaW5jbHVkZSBmbG9hdC1yaWdodDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IEBpbmNsdWRlIGZsb2F0LW5vbmU7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcblxuLy8gU2FzcyBsaXN0IG5vdCBpbiB2YXJpYWJsZXMgc2luY2UgaXQncyBub3QgaW50ZW5kZWQgZm9yIGN1c3RvbWl6YXRpb24uXG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreTtcblxuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gV2lkdGggYW5kIGhlaWdodFxuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAod2lkdGg6IHcsIGhlaWdodDogaCkge1xuICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc2l6ZXMge1xuICAgIC4jeyRhYmJyZXZ9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi5tdy0xMDAgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuLm1oLTEwMCB7IG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG5cbiAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fXIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1sI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFRleHRcbi8vXG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtbm93cmFwICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXRydW5jYXRlIHsgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LW5vcm1hbCB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSk7XG59XG5cbi50ZXh0LW11dGVkIHsgY29sb3I6ICR0ZXh0LW11dGVkICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCk7XG59XG4iLCIvL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgQGluY2x1ZGUgaW52aXNpYmxlKHZpc2libGUpO1xufVxuXG4uaW52aXNpYmxlIHtcbiAgQGluY2x1ZGUgaW52aXNpYmxlKGhpZGRlbik7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvbWFzdGVyL3NyYy9jc3MvbWFpbi5jc3NcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxuLy8gaHR0cDovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGh0dHA6Ly93d3cuc2FuYmVpamkuY29tL2FyY2hpdmVzLzk1M1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAjOTk5OyAgIC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgLy9cblxuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICMwMDA7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIiRwcmltYXJ5RGFya0NvbG9yOiAgICAgICAgIzE2NDA2MztcbiRwcmltYXJ5VWx0cmFEYXJrQ29sb3I6ICAgIzEwMzY1NztcbiRwcmltYXJ5TGlnaHRDb2xvcjogICAgICAgIzQyOTJCRTtcbiRwcmltYXJ5VWx0cmFMaWdodENvbG9yOiAgIzhkYzllYjtcbiRzZWNvbmRhcnlMaWdodENvbG9yOiByZ2JhKDEwNSwgMjIwLCA4NSwgMC42NCk7XG4kc2Vjb25kYXJ5RGFya0NvbG9yOiAgICAgICM3MGQ1NDk7XG4kc2Vjb25kYXJ5RGFya2VyQ29sb3I6ICM1NmEzMzk7XG4kdGVydGlhcnlDb2xvcjogICAgICAgICAgICNGRTlCMzk7XG5cbiRwcmltYXJ5QmFja2dyb3VuZENvbG9yOiAjRTdFN0U3O1xuXG4kZGlzYWJsZWRDb2xvcjogICAgICAgICM3OTc5Nzk7XG4kZGlzYWJsZWREYXJrZXJDb2xvcjogIGRhcmtlbiggJGRpc2FibGVkQ29sb3IsIDEwJSApO1xuJGRpc2FibGVkTGlnaHRlckNvbG9yOiAjQ0NDQ0NDO1xuXG4kc3VjY2Vzc0NvbG9yOiAgICAgICRzZWNvbmRhcnlMaWdodENvbG9yO1xuJHdhcm5pbmdDb2xvcjogICAgICAjRkZCMTQyO1xuJHdhcm5pbmdEYXJrQ29sb3I6ICAjZTY5MjJhO1xuJGVycm9yQ29sb3I6ICAgICAgICAjRDczMzMzO1xuJGVycm9yRGFya0NvbG9yOiAgICAjOTcwNDA0O1xuXG5cbiRmbG9Qcm90ZWN0R3JlZW46ICMxREQ0OTE7XG4kZmxvUHJvdGVjdERhcmtHcmVlbjogIzE2QUE3NDtcbiRmbG9Qcm90ZWN0RGFya2VyR3JlZW46ICMxNDhlNWQ7XG4iLCIucmMtc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBhZGRpbmc6IDVweCAwO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICAgICAgdG91Y2gtYWN0aW9uOiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ucmMtc2xpZGVyICoge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ucmMtc2xpZGVyLXJhaWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllOWU5O1xuICBoZWlnaHQ6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuLnJjLXNsaWRlci10cmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FiZTJmYjtcbn1cbi5yYy1zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogLTdweDtcbiAgbWFyZ2luLXRvcDogLTVweDtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogc29saWQgMnB4ICM5NmRiZmE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi14O1xuICAgICAgdG91Y2gtYWN0aW9uOiBwYW4teDtcbn1cbi5yYy1zbGlkZXItaGFuZGxlOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNTdjNWY3O1xufVxuLnJjLXNsaWRlci1oYW5kbGU6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjNTdjNWY3O1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICM1N2M1Zjc7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cbi5yYy1zbGlkZXItaGFuZGxlOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNTdjNWY3O1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggIzk2ZGJmYTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5yYy1zbGlkZXItbWFyayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxOHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuLnJjLXNsaWRlci1tYXJrLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjOTk5O1xufVxuLnJjLXNsaWRlci1tYXJrLXRleHQtYWN0aXZlIHtcbiAgY29sb3I6ICM2NjY7XG59XG4ucmMtc2xpZGVyLXN0ZXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4ucmMtc2xpZGVyLWRvdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMnB4O1xuICBtYXJnaW4tbGVmdDogLTRweDtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlOWU5ZTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnJjLXNsaWRlci1kb3QtYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTZkYmZhO1xufVxuLnJjLXNsaWRlci1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWU5ZTk7XG59XG4ucmMtc2xpZGVyLWRpc2FibGVkIC5yYy1zbGlkZXItdHJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xufVxuLnJjLXNsaWRlci1kaXNhYmxlZCAucmMtc2xpZGVyLWhhbmRsZSxcbi5yYy1zbGlkZXItZGlzYWJsZWQgLnJjLXNsaWRlci1kb3Qge1xuICBib3JkZXItY29sb3I6ICNjY2M7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4ucmMtc2xpZGVyLWRpc2FibGVkIC5yYy1zbGlkZXItbWFyay10ZXh0LFxuLnJjLXNsaWRlci1kaXNhYmxlZCAucmMtc2xpZGVyLWRvdCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQgIWltcG9ydGFudDtcbn1cbi5yYy1zbGlkZXItdmVydGljYWwge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwIDVweDtcbn1cbi5yYy1zbGlkZXItdmVydGljYWwgLnJjLXNsaWRlci1yYWlsIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNHB4O1xufVxuLnJjLXNsaWRlci12ZXJ0aWNhbCAucmMtc2xpZGVyLXRyYWNrIHtcbiAgbGVmdDogNXB4O1xuICBib3R0b206IDA7XG4gIHdpZHRoOiA0cHg7XG59XG4ucmMtc2xpZGVyLXZlcnRpY2FsIC5yYy1zbGlkZXItaGFuZGxlIHtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIG1hcmdpbi1ib3R0b206IC03cHg7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cbi5yYy1zbGlkZXItdmVydGljYWwgLnJjLXNsaWRlci1tYXJrIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxOHB4O1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ucmMtc2xpZGVyLXZlcnRpY2FsIC5yYy1zbGlkZXItc3RlcCB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDRweDtcbn1cbi5yYy1zbGlkZXItdmVydGljYWwgLnJjLXNsaWRlci1kb3Qge1xuICBsZWZ0OiAycHg7XG4gIG1hcmdpbi1ib3R0b206IC00cHg7XG59XG4ucmMtc2xpZGVyLXZlcnRpY2FsIC5yYy1zbGlkZXItZG90OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogLTRweDtcbn1cbi5yYy1zbGlkZXItdmVydGljYWwgLnJjLXNsaWRlci1kb3Q6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IC00cHg7XG59XG4ucmMtc2xpZGVyLXRvb2x0aXAtem9vbS1kb3duLWVudGVyLFxuLnJjLXNsaWRlci10b29sdGlwLXpvb20tZG93bi1hcHBlYXIge1xuICBhbmltYXRpb24tZHVyYXRpb246IC4zcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcbn1cbi5yYy1zbGlkZXItdG9vbHRpcC16b29tLWRvd24tbGVhdmUge1xuICBhbmltYXRpb24tZHVyYXRpb246IC4zcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcbn1cbi5yYy1zbGlkZXItdG9vbHRpcC16b29tLWRvd24tZW50ZXIucmMtc2xpZGVyLXRvb2x0aXAtem9vbS1kb3duLWVudGVyLWFjdGl2ZSxcbi5yYy1zbGlkZXItdG9vbHRpcC16b29tLWRvd24tYXBwZWFyLnJjLXNsaWRlci10b29sdGlwLXpvb20tZG93bi1hcHBlYXItYWN0aXZlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJjU2xpZGVyVG9vbHRpcFpvb21Eb3duSW47XG4gIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nO1xufVxuLnJjLXNsaWRlci10b29sdGlwLXpvb20tZG93bi1sZWF2ZS5yYy1zbGlkZXItdG9vbHRpcC16b29tLWRvd24tbGVhdmUtYWN0aXZlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJjU2xpZGVyVG9vbHRpcFpvb21Eb3duT3V0O1xuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZztcbn1cbi5yYy1zbGlkZXItdG9vbHRpcC16b29tLWRvd24tZW50ZXIsXG4ucmMtc2xpZGVyLXRvb2x0aXAtem9vbS1kb3duLWFwcGVhciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbn1cbi5yYy1zbGlkZXItdG9vbHRpcC16b29tLWRvd24tbGVhdmUge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcbn1cbkBrZXlmcmFtZXMgcmNTbGlkZXJUb29sdGlwWm9vbURvd25JbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTtcbiAgfVxufVxuQGtleWZyYW1lcyByY1NsaWRlclRvb2x0aXBab29tRG93bk91dCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDEpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgfVxufVxuLnJjLXNsaWRlci10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5OXB4O1xuICB0b3A6IC05OTk5cHg7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi5yYy1zbGlkZXItdG9vbHRpcCAqIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLnJjLXNsaWRlci10b29sdGlwLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucmMtc2xpZGVyLXRvb2x0aXAtcGxhY2VtZW50LXRvcCB7XG4gIHBhZGRpbmc6IDRweCAwIDhweCAwO1xufVxuLnJjLXNsaWRlci10b29sdGlwLWlubmVyIHtcbiAgcGFkZGluZzogNnB4IDJweDtcbiAgbWluLXdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNmM2YztcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBib3gtc2hhZG93OiAwIDAgNHB4ICNkOWQ5ZDk7XG59XG4ucmMtc2xpZGVyLXRvb2x0aXAtYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG4ucmMtc2xpZGVyLXRvb2x0aXAtcGxhY2VtZW50LXRvcCAucmMtc2xpZGVyLXRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IDRweDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTRweDtcbiAgYm9yZGVyLXdpZHRoOiA0cHggNHB4IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICM2YzZjNmM7XG59XG4iLCIuZm9vdGVyIHtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzNWE3ZjtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjhweDtcbiAgfVxuXG4gIC5mb290ZXItYmxvY2sge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbn1cblxuLmNvbXBhbnlEaXNjbG9zdXJlTGlua3Mge1xuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICAgICAgICAgICAjZmZmO1xuICAgIGxpbmUtaGVpZ2h0OiAgICAgMTAwJTtcbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogICAgIFwi4oiZXCI7XG4gICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAgICA2cHg7XG4gICAgfVxuICB9XG4gIHNwYW46bGFzdC1jaGlsZCBhOmFmdGVye1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29udGFjdEJsb2NrIHtcbiAgY29sb3I6IHdoaXRlO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMjBweDtcbiAgfVxuXG4gIC5pY29uIHtcbiAgICAmOmJlZm9yZXtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5jb250ZW50IGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4iLCJcbi5kaWFsb2ctd3JhcHBlcntcbiAgcG9zaXRpb246ICAgIGFic29sdXRlO1xuICB0b3A6ICAgICAgICAgMDtcbiAgbGVmdDogICAgICAgIDA7XG4gIHdpZHRoOiAgICAgICAxMDAlO1xuICBoZWlnaHQ6ICAgICAgMTAwJTtcbiAgYmFja2dyb3VuZDogIHJnYmEoMCwwLDAsMC4yNSk7XG4gIHRleHQtYWxpZ246ICBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxMDB2aDtcbiAgei1pbmRleDogICAgIDI7XG4gIHBhZGRpbmc6IDBweCAyMHB4O1xuXG4gIC5kaWFsb2d7XG4gICAgbWluLXdpZHRoOiAgIDIwMHB4O1xuICAgIG1heC13aWR0aDogICA1MDBweDtcbiAgICBiYWNrZ3JvdW5kOiAgd2hpdGU7XG4gICAgbWFyZ2luOiAgICAgIDAgYXV0bztcbiAgICBkaXNwbGF5OiAgICAgaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgLm1lc3NhZ2V7XG4gICAgICBmb250LXNpemU6ICAgICAgMS4ycmVtO1xuICAgICAgYm9yZGVyOiAgICAgICAgIDNweCBzb2xpZCAkcHJpbWFyeUxpZ2h0Q29sb3I7XG4gICAgICBwYWRkaW5nOiAgICAgICAgMTZweCAxNnB4IDEwcHggMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAmID4gc3BhbntcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBpbWd7XG4gICAgICAgIGhlaWdodDogMTI1cHg7XG4gICAgICB9XG4gICAgICAubWVzc2FnZS1ibG9ja3tcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBidXR0b257XG4gICAgZGlzcGxheTogICAgICAgIGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6ICAgICAgMTAwJTtcbiAgICBtaW4td2lkdGg6ICAgICAgNTAlO1xuICAgIGJvcmRlcjogICAgICAgICAzcHggc29saWQgJHByaW1hcnlMaWdodENvbG9yO1xuICAgIG1hcmdpbi10b3A6ICAgICAtM3B4O1xuICAgIGJhY2tncm91bmQ6ICAgICB3aGl0ZTtcbiAgICBjb2xvcjogICAgICAgICAgJHByaW1hcnlMaWdodENvbG9yO1xuICAgIGxpbmUtaGVpZ2h0OiAgICAycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAgICA2MDA7XG4gICAgcGFkZGluZy10b3A6ICAgIDZweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gIH1cbiAgJi5mb3VyLWJ1dHRvbnN7XG4gICAgYnV0dG9ue1xuICAgICAgbWluLXdpZHRoOiAyNSU7XG4gICAgfVxuICB9XG4gICYub2sgYnV0dG9ue1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICYuaW5mb3tcbiAgICAuZGlhbG9nIC5tZXNzYWdle1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeUxpZ2h0Q29sb3I7XG4gICAgfVxuICAgIGJ1dHRvbntcbiAgICAgIGNvbG9yOiAkcHJpbWFyeUxpZ2h0Q29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5TGlnaHRDb2xvcjtcbiAgICB9XG4gICAgLnNsaWRlLXNlbGVjdHsgZGlzcGxheTogbm9uZTsgfVxuICB9XG4gICYud2FybmluZ3tcbiAgICAuZGlhbG9nIC5tZXNzYWdle1xuICAgICAgYm9yZGVyLWNvbG9yOiAkd2FybmluZ0NvbG9yO1xuICAgICAgJjpiZWZvcmV7XG4gICAgICAgIGNvbnRlbnQ6ICAgICAgICBcIiFcIjtcbiAgICAgICAgd2lkdGg6ICAgICAgICAgIDM2cHg7XG4gICAgICAgIGhlaWdodDogICAgICAgICAzNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAgMThweDtcbiAgICAgICAgYm9yZGVyOiAgICAgICAgIDJweCBzb2xpZCAkd2FybmluZ0NvbG9yO1xuICAgICAgICBkaXNwbGF5OiAgICAgICAgaW5saW5lLWJsb2NrO1xuICAgICAgICBjb2xvcjogICAgICAgICAgJHdhcm5pbmdDb2xvcjtcbiAgICAgICAgdGV4dC1hbGlnbjogICAgIGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAgICAgIDJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAgICAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDogICAgNjAwO1xuICAgICAgICBtYXJnaW46ICAgICAgICAgNHB4IDE2cHggNHB4IDE2cHg7XG4gICAgICAgIHBhZGRpbmc6ICAgICAgICAwIDAgMCAxcHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG4gICAgfVxuICAgIGJ1dHRvbntcbiAgICAgIGNvbG9yOiAkd2FybmluZ0NvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkd2FybmluZ0NvbG9yO1xuICAgIH1cbiAgfVxuXHQmLmVycm9yLCAmLmNyaXRpY2Fse1xuXHRcdC5kaWFsb2cgLm1lc3NhZ2V7XG4gICAgICBib3JkZXItY29sb3I6ICRlcnJvckNvbG9yO1xuICAgICAgcGFkZGluZzogMTZweCAxNnB4IDEwcHggMTZweDtcbiAgICB9XG4gICAgYnV0dG9ue1xuICAgICAgY29sb3I6ICRlcnJvckNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3JDb2xvcjtcbiAgICB9XG5cdH1cblx0LmlucHV0LXdyYXBwZXJ7XG5cdFx0d2lkdGg6IDEwMHB4O1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdGlucHV0IHtcblx0XHRcdHdpZHRoOiAgICAgICAgIDEwMCU7XG5cdFx0XHRwYWRkaW5nOiAgICAgICAxMHB4IDAgNHB4IDA7XG5cdFx0XHRvdXRsaW5lOiAgICAgICBub25lO1xuXHRcdFx0Ym9yZGVyOiAgICAgICAgbm9uZTtcblx0XHRcdGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgJHByaW1hcnlMaWdodENvbG9yO1xuXHRcdFx0Zm9udC1zaXplOiAgICAgMS44cmVtO1xuXHRcdH1cblx0XHRsYWJlbCB7XG5cdFx0XHRwb3NpdGlvbjogICAgYWJzb2x1dGU7XG5cdFx0XHRjdXJzb3I6ICAgICAgdGV4dDtcblx0XHRcdGNvbG9yOiAgICAgICAkcHJpbWFyeUxpZ2h0Q29sb3I7XG5cdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdFx0Zm9udC1zaXplOiAgIDEuOHJlbTtcblx0XHRcdHRyYW5zaXRpb246ICAwLjNzIGVhc2Utb3V0O1xuXHRcdFx0YmFja2dyb3VuZDogIHRyYW5zcGFyZW50O1xuXHRcdH1cblx0XHQubGFiZWwtaW5wdXR7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXJnaW46ICAgMTBweCAwIDhweCAwO1xuXHRcdH1cblx0XHQubGFiZWwge1xuXHRcdFx0bGVmdDogICAgICAgICAwO1xuXHRcdFx0dG9wOiAgICAgICAgICAtOHB4O1xuXHRcdFx0Zm9udC1zaXplOiAgICAxLjRyZW07XG5cdFx0XHRjb2xvcjogICAgICAgICRwcmltYXJ5TGlnaHRDb2xvcjtcblx0XHRcdHRyYW5zaXRpb246ICAgMC4zcyBlYXNlLW91dDtcblx0XHRcdGZvbnQtd2VpZ2h0OiAgbm9ybWFsO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdH1cblx0XHQucGxhY2Vob2xkZXIge1xuXHRcdFx0bGVmdDogICAgICAgIDA7XG5cdFx0XHR0b3A6ICAgICAgICAgMTJweDtcblx0XHRcdHRyYW5zaXRpb246ICAwLjNzIGVhc2Utb3V0O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHR9XG5cdH1cbiAgLmlubmVyLXdyYXBwZXJ7XG4gICAgZGlzcGxheTogICAgaW5saW5lLWJsb2NrO1xuICAgIG1heC13aWR0aDogIDQwMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG5cbiAgICAudGl0bGV7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHRleHQtYWxpZ246ICBsZWZ0O1xuICAgICAgY29sb3I6ICAgICAgICRwcmltYXJ5RGFya0NvbG9yO1xuICAgIH1cbiAgICAubWVzc2FnZS1ibG9ja3tcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG4gICAgLnNsaWRlLXNlbGVjdHtcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIC5jb250cm9sTmFtZXtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgICYucXItY29kZXtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHN2Z3tcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmFsYXJtLWRpYWxvZ3tcbiAgICAmLndhcm5pbmcgLmRpYWxvZ3tcbiAgICAgIGJhY2tncm91bmQ6ICR3YXJuaW5nRGFya0NvbG9yO1xuICAgICAgLmJ1dHRvbnMgYXtcbiAgICAgICAgY29sb3I6ICR3YXJuaW5nRGFya0NvbG9yO1xuICAgICAgICBpOmJlZm9yZXtcbiAgICAgICAgICBjb2xvcjogJHdhcm5pbmdEYXJrQ29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5jcml0aWNhbCAuZGlhbG9ne1xuICAgICAgYmFja2dyb3VuZDogJGVycm9yRGFya0NvbG9yO1xuICAgICAgLmJ1dHRvbnMgYXtcbiAgICAgICAgY29sb3I6ICRlcnJvckRhcmtDb2xvcjtcbiAgICAgICAgaTpiZWZvcmV7XG4gICAgICAgICAgY29sb3I6ICRlcnJvckRhcmtDb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZGlhbG9ne1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogICAgMjBweCA1MHB4O1xuICAgICAgbWF4LXdpZHRoOiAgNDAwcHg7XG4gICAgICBwb3NpdGlvbjogICByZWxhdGl2ZTtcbiAgICAgIC5jbG9zZSB7XG4gICAgICAgIHBvc2l0aW9uOiAgICBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAgICAgICAgIDZweDtcbiAgICAgICAgcmlnaHQ6ICAgICAgIDEwcHg7XG4gICAgICAgIGN1cnNvcjogICAgICBwb2ludGVyO1xuICAgICAgICBvcGFjaXR5OiAgICAgMTtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAgICAgICAxOHB4O1xuICAgICAgICBoZWlnaHQ6ICAgICAgMjJweDtcbiAgICAgICAgaXtcbiAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgIGNvbG9yOiAgICAgd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5hbGFybS1iZWxse1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBGbG9JY29ucztcbiAgICAgICAgICBjb250ZW50OiAgICAgXCJcXGU5MDBcIjtcbiAgICAgICAgICBjb2xvcjogICAgICAgd2hpdGU7XG4gICAgICAgICAgZm9udC1zaXplOiAgIDNyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50aXRsZXtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6ICAycmVtO1xuICAgICAgICBjb2xvcjogICAgICB3aGl0ZTtcbiAgICAgIH1cbiAgICAgIC5tZXNzYWdle1xuICAgICAgICBib3JkZXI6ICAgICBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAgICAgIHdoaXRlO1xuICAgICAgICBmb250LXNpemU6ICAxLjRyZW07XG4gICAgICAgIHBhZGRpbmc6ICAgIDA7XG4gICAgICAgIG1hcmdpbjogICAgIDAgMCAxNnB4ICAwO1xuICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9ucyBhe1xuICAgICAgICBiYWNrZ3JvdW5kOiAgICB3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogICAgICAgaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogICAgICAgICAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAgICAgICA4cHggMTRweDtcbiAgICAgICAgY29sb3I6ICAgICAgICAgYmxhY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgZm9udC1zaXplOiAgICAgMS40cmVtO1xuICAgICAgICBtYXJnaW46ICAgICAgICA0cHggMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICAgNjAwO1xuICAgICAgICBjdXJzb3I6ICAgICAgICBwb2ludGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGl7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgfVxuICAgICAgICAgICYuaWNvbi1JbmZve1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmljb24tQ2hlY2t7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuZmxvLWdyb3VwLXRvZ2dsZWJveCB7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgaGVpZ2h0OiAxcmVtO1xuXG4gIC5kZXByZXNzZWQtYm94LmNoZWNrYm94IHtcbiAgICBib3JkZXItcmFkaXVzOiAyNSU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2JmYmZiZjtcbiAgICBib3gtc2hhZG93OiAgICBpbnNldCAwcHggMXB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJhY2tncm91bmQ6ICAgICNmZmY7XG4gICAgY3Vyc29yOiAgICAgICAgcG9pbnRlcjtcbiAgICB3aWR0aDogICAgICAgICAwLjlyZW07XG4gICAgaGVpZ2h0OiAgICAgICAgMC45cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLmRlcHJlc3NlZC1ib3gge1xuICAgIHBhZGRpbmctdG9wOiAxcHg7XG5cbiAgICAmW2RhdGEtYWN0aXZlPVwiYWxsXCJdLCAmW2RhdGEtYWN0aXZlPVwicGFydGlhbFwiXXtcbiAgICAgIGJhY2tncm91bmQ6ICM0MTliZjA7XG4gICAgICBib3JkZXItY29sb3I6ICM0MTliZjA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAgICAgICB3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAwLjZyZW07XG4gICAgICAgIHBhZGRpbmc6IDFweCAwIDAgMXB4O1xuICAgICAgICBkaXNwbGF5OiAgICAgYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgICYubGlnaHRbZGF0YS1hY3RpdmU9XCJhbGxcIl0sXG4gICAgJi5saWdodFtkYXRhLWFjdGl2ZT1cInBhcnRpYWxcIl17XG4gICAgICBiYWNrZ3JvdW5kOiAjNDE5YmYwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkIC5kZXByZXNzZWQtYm94IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzljOWM5O1xuXG4gICAgJltkYXRhLWFjdGl2ZT1cImFsbFwiXSwgJltkYXRhLWFjdGl2ZT1cInBhcnRpYWxcIl17XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2M5YzljOTtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAxcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAjN2I3YjdiO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmxpZ2h0W2RhdGEtYWN0aXZlPVwiYWxsXCJdLFxuICAgICYubGlnaHRbZGF0YS1hY3RpdmU9XCJwYXJ0aWFsXCJde1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAxcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIH1cbiAgfVxufVxuXG4uaWNvbi1JbmRldGVybWluYXRlQ2hlY2tCb3g6OmJlZm9yZSB7XG4gIGhlaWdodDogMnB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAwLjZyZW0gIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIG1hcmdpbi1sZWZ0OiAwLjFyZW07XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuIiwiLnBhZ2luYXRpb257XG5cdG1hcmdpbjogICAgICAgICAwIGF1dG87XG5cdGZvbnQtd2VpZ2h0OiAgICA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0LnByZXZpb3VzLCAubmV4dCwgLmZpcnN0IHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblxuICAucHJldmlvdXMge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxuXG4gIC5zaG93LXBhZ2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbn1cbiIsIi50ZWxlbWV0cnktd2lkZ2V0IHtcbiAgY3Vyc29yOiAgICAgICAgIGRlZmF1bHQ7XG5cbiAgLmNvbnRleHQge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cblxuICAudW5pdCB7XG4gICAgcGFkZGluZzogMCAwIDAgMnB4O1xuICB9XG5cbiAgLmNvbnRleHQsIC52YWx1ZSB7XG4gICAgdGV4dC1hbGlnbjogIGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS4ycmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIC53cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIH1cblxuICAgIC5jb250ZXh0LCAudmFsdWUge1xuICAgICAgdGV4dC1hbGlnbjogIGxlZnQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4ycmVtO1xuICAgIH1cbiAgfVxufVxuXG4udGVsZW1ldHJ5LXdpZGdldDo6YmVmb3JlIHtcbiAgY29sb3I6ICAgICAkZmxvLWdyZWVuO1xuICBmb250LXNpemU6IDIuMnJlbTtcbn1cblxuLm5vLWRldmljZSAudGVsZW1ldHJ5LXdpZGdldCB7XG4gIGNvbG9yOiAkZGlzYWJsZWRDb2xvcjtcbiAgJjpiZWZvcmUsIC5jb250ZXh0IHtcbiAgICBjb2xvcjogJGRpc2FibGVkQ29sb3I7XG4gIH1cbn1cbiIsIi53aGl0ZS1sb2dvIHtcbiAgcGFkZGluZzogNXB4IDBweDtcbn1cblxuLmJpZ2dlci1sb2dvIHtcbiAgaGVpZ2h0OiA0NXB4O1xuICBtYXJnaW46IDBweCA2cHggMHB4IDZweDtcbn1cblxuLmJpZy1sb2dvIHtcbiAgaGVpZ2h0OiAzNXB4O1xuICBtYXJnaW46IDBweCA2cHggMHB4IDZweDtcbn1cblxuLm1lZGl1bS1sb2dvIHtcbiAgaGVpZ2h0OiAyNXB4O1xuICBtYXJnaW46IDBweCA1cHggMHB4IDVweDtcbn1cblxuLnNtYWxsLWxvZ28ge1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbjogLTFweCA0cHggMHB4IDRweDtcbn1cbiIsIi5zbGlkZS1zZWxlY3QsIC50b2dnbGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICYuc3RhdGV7XG4gICAgLnBpbGxTbGlkZXIge1xuICAgICAgd2lkdGg6ICA3N3B4O1xuICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgIH1cbiAgICAucGlsbCB7XG4gICAgICB3aWR0aDogIDQwcHg7XG4gICAgICBoZWlnaHQ6IDIycHg7XG4gICAgfVxuICB9XG4gIC5waWxsU2xpZGVyIHtcbiAgICB3aWR0aDogIDE2MHB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgfVxuICAucGlsbCB7XG4gICAgd2lkdGg6ICA1OXB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgfVxuICAuY29udHJvbE5hbWUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogNHB4IDE1cHggMHB4IDBweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB9XG59XG4ucGlsbFNsaWRlciB7XG4gIGJvcmRlci1yYWRpdXM6ICAxNXB4O1xuICBiYWNrZ3JvdW5kOiAgICAgJHByaW1hcnlCYWNrZ3JvdW5kQ29sb3I7XG4gIHBvc2l0aW9uOiAgICAgICByZWxhdGl2ZTtcbiAgY3Vyc29yOiAgICAgICAgIHBvaW50ZXI7XG4gIGRpc3BsYXk6ICAgICAgICBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgLnN0YXRlc3tcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgc3BhbntcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogM3B4IDhweCAwcHggMTJweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICAgICAgICAgICRkaXNhYmxlZENvbG9yO1xuICAgICAgJi5hY3RpdmV7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeVVsdHJhRGFya0NvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucGlsbHtcbiAgICB6LWluZGV4OiAgICAgICAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgYmFja2dyb3VuZDogICAgJHNlY29uZGFyeURhcmtDb2xvcjtcbiAgICBwYWRkaW5nOiAgICAgICAycHggMDtcbiAgICBib3gtc2l6aW5nOiAgICBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiAgICAgIGFic29sdXRlO1xuICAgIHRvcDogICAgICAgICAgIDA7XG4gICAgbGVmdDogICAgICAgICAgMDtcbiAgICB0cmFuc2l0aW9uOiAgICBhbGwgLjI1cyBlYXNlLW91dDtcbiAgfVxuICAucGlsbC5kaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZDogI2MyYzVjMDtcbiAgfVxufVxuXG4ucGlsbFNsaWRlci50cmFuc2l0aW9uaW5nIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZWNlYmViLCAjY2NmZmMzKTtcbiAgYmFja2dyb3VuZC1zaXplOiA0MDAlIDQwMCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBQaWxsR3JhZGllbnQgMnMgZWFzZSBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IFBpbGxHcmFkaWVudCAycyBlYXNlIGluZmluaXRlO1xuICBhbmltYXRpb246IFBpbGxHcmFkaWVudCAycyBlYXNlIGluZmluaXRlO1xufVxuXG5ALW1vei1rZXlmcmFtZXMgUGlsbEdyYWRpZW50IHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJVxuICB9XG4gIDUwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCVcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCVcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIFBpbGxHcmFkaWVudCB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCVcbiAgfVxuICA1MCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlXG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlXG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIFBpbGxHcmFkaWVudCB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCVcbiAgfVxuICA1MCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlXG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlXG4gIH1cbn1cbiIsIi5zZWFyY2gtYmFyLWNvbXBvbmVudCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5lcnJvci1tZXNzYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDEwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuLnNlYXJjaC1iYXItY29udGFpbmVyIHtcbiAgLnNlYXJjaC1pbnB1dC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zZWFyY2gtaW5wdXQsXG4gIC5zZWFyY2gtaW5wdXQ6Zm9jdXMsXG4gIC5zZWFyY2gtaW5wdXQ6YWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwIDJweCAycHggMCByZ2JhKDAsMCwwLDAuMTYpLCAwIDAgMCAxcHggcmdiYSgwLDAsMCwwLjA4KTtcbiAgICBib3JkZXI6IGhvbmV5ZGV3O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLmNsZWFyLWJ1dHRvbixcbiAgLmNsZWFyLWJ1dHRvbjphY3RpdmUsXG4gIC5jbGVhci1idXR0b246Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTZweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzk5OTtcbiAgfVxuXG4gIC5hdXRvY29tcGxldGUtY29udGFpbmVyIHtcbiAgICBib3JkZXItYm90dG9tOiBob25leWRldztcbiAgICBib3JkZXItbGVmdDogaG9uZXlkZXc7XG4gICAgYm9yZGVyLXJpZ2h0OiBob25leWRldztcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLDAsMCwwLjIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KHhzKSB7IG1pbi13aWR0aDogNzUuOCU7IH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkoc20pIHsgbWluLXdpZHRoOiA2MC4zJTsgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seShtZCkgeyBtaW4td2lkdGg6IDYwLjMlOyB9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KGxnKSB7IG1pbi13aWR0aDogMzIuMyU7IH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkoeGwpIHsgbWluLXdpZHRoOiAzMC4zJTsgIH1cblxuICAgIC8qIFBvc2l0aW9uIHRoZSBzdWdnZXN0aW9ucyBhZnRlciB0aGUgc2VhcmNoIGlucHV0IGJ1dCBmbG9hdGluZyAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuXG4gIH1cblxuICAuc3VnZ2VzdGlvbi1pdGVtIHtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC5zdWdnZXN0aW9uLWl0ZW0tLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgfVxuXG4gIC5kcm9wZG93bi1mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllOWU5O1xuICAgIHBhZGRpbmc6IDRweDtcbiAgfVxuXG4gIC5kcm9wZG93bi1mb290ZXItaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTUwcHg7XG4gIH1cblxuICAuZXJyb3ItbWVzc2FnZSB7XG4gICAgY29sb3I6IHJlZDtcbiAgfVxufVxuIiwiLmRhdGEtZG93bmxvYWQge1xuICAuZmEtbG9jayB7XG4gICAgY29sb3I6IGJsYWNrO1xuICB9XG59XG4iLCIvKlxuICBBbmltYXRpb24gaXMgaGVyZSBzaW5jZSB3ZSBjYW4ndCBkbyB0aGlzIGluIEpTIHdpdGggaW5saW5lIHN0eWxlcyA6KFxuKi9cbkBrZXlmcmFtZXMgc2tlbGV0b25BbmltYXRpb24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC40O1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxufVxuXG4ucGVuZGluZy1kaXYge1xuICBjb2xvcjogZ3JleSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5ICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBza2VsZXRvbkFuaW1hdGlvbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xufVxuIiwiLmxvZ2lue1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgLmxvZ2luLWxvZ28ge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICBtYXgtd2lkdGg6IDE2MHB4O1xuICB9XG5cbiAgLmZsb0ljb24ge1xuICAgIG1hcmdpbjogMCAwIDI4cHggMDtcbiAgICAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeURhcmtDb2xvcjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMTRweCAwIDAgMTZweDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luOiA0cHggN3B4IDAgMDtcbiAgICAgIG1heC13aWR0aDogNjRweDtcbiAgICB9XG4gIH1cblxuICAuZm9ybSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICAgIC5tZXNzYWdlLWNvbnRhaW5lciB7XG4gICAgICB0ZXh0LWFsaWduOiAgICAgbGVmdDtcblxuICAgICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICBmb250LXNpemU6ICAgICAgMXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogICAgIGxlZnQ7XG4gICAgICAgIGNvbG9yOiAgICAgICAgICAkZXJyb3JDb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICAgIDYwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dC5pbnZhbGlke1xuICAgICAgY29sb3I6ICRlcnJvckNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3JDb2xvcjtcbiAgICB9XG5cbiAgICBpbnB1dC5pbnZhbGlkOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGVycm9yQ29sb3I7XG4gICAgfVxuXG4gICAgLmZsby1zdWJtaXQtYnRuLmRpc2FibGVke1xuICAgICAgYmFja2dyb3VuZDogJGRpc2FibGVkQ29sb3I7XG4gICAgfVxuICB9XG4gICYucGFzc3dvcmQtcmVzZXQgLmZsb0ljb24gLnRpdGxle1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG4gIC5mb3Jnb3QtcGFzc3dvcmR7XG4gICAgZm9udC1zaXplOiAgICAgICAxcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiAgdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAgICAgICAgICAgJGRpc2FibGVkQ29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY3Vyc29yOiAgICAgICAgICBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiAgICAgNjAwO1xuICAgIG1hcmdpbjogICAgICAgICAgMTRweCAwIDAgMDtcbiAgfVxuICA+ICNGbG9Nb2RhbCAubWVzc2FnZXtcbiAgICBwYWRkaW5nOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyLjJyZW07XG4gIH1cblxuICAuYnRuLWdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5RGFya0NvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeURhcmtDb2xvcjtcbiAgfVxuXG4gIC5idG4tZ3JlZW46aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnlEYXJrZXJDb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICM0OThGMzM7XG4gIH1cblxuICAuYnRuLWdyZWVuLmRpc2FibGVke1xuICAgIGJhY2tncm91bmQ6ICRkaXNhYmxlZENvbG9yO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAudGV4dC1kYW5nZXIge1xuICAgIGNvbG9yOiAjRTY0NzU5ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZm9vdGVyIHtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgcGFkZGluZzogNXB4IDBweCAyNXB4IDBweDtcbiAgfVxufVxuXG4udGstcXVlc3RyaWFsID4gI2FwcDpoYXMoLmxvZ2luKSB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbiIsIi5hbGVydHMtbG9ne1xuICAuaWNvbi1CZWxsOmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAuY3JpdGljYWwtYWxlcnRzLXN1YnRpdGxlLCAud2FybmluZy1hbGVydHMtc3VidGl0bGV7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAmICsgaHIge1xuICAgICAgbWFyZ2luOiAtMnB4IDAgMDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDJweDtcbiAgICB9XG4gIH1cbiAgLmNyaXRpY2FsLWFsZXJ0cy1zdWJ0aXRsZXtcbiAgICBjb2xvcjogJGVycm9yQ29sb3I7XG4gICAgJiArIGhyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRlcnJvckNvbG9yO1xuICAgIH1cbiAgfVxuICAud2FybmluZy1hbGVydHMtc3VidGl0bGV7XG4gICAgY29sb3I6ICR3YXJuaW5nQ29sb3I7XG5cdFx0JiArIGhyIHtcbiAgICAgIGJhY2tncm91bmQ6ICR3YXJuaW5nQ29sb3I7XG4gICAgfVxuICB9XG4gIC50YWJsZS1saXN0e1xuICAgIHRib2R5IHRye1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGQge1xuICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgICAgICB9XG4gICAgICAgICYuc3lzdGVtX21vZGVfdGV4dCwgJi5zZXZlcml0eXtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLndhcm5pbmctYWxlcnRze1xuICAgICAgdGhlYWQgdGh7XG4gICAgICAgIGNvbG9yOiAkd2FybmluZ0NvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmNyaXRpY2FsLWFsZXJ0c3tcbiAgICAgIHRoZWFkIHRoe1xuICAgICAgICBjb2xvcjogJGVycm9yQ29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jbGVhci1hbGVydHN7XG4gICAgdGV4dC10cmFuc2Zvcm06ICB1cHBlcmNhc2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY29sb3I6ICAgICAgICAgICAkZGlzYWJsZWRDb2xvcjtcbiAgICBjdXJzb3I6ICAgICAgICAgIHBvaW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6ICAgICA2MDA7XG4gICAgZGlzcGxheTogICAgICAgICBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogICAgICAxLjZyZW07XG4gIH1cbiAgLndhcm5pbmctYWxlcnRze1xuICAgIC5jb2x1bW4taGVhZHtcbiAgICAgIGNvbG9yOiAkd2FybmluZ0NvbG9yO1xuICAgIH1cbiAgfVxuICAuY3JpdGljYWwtYWxlcnRze1xuICAgIC5jb2x1bW4taGVhZHtcbiAgICAgIGNvbG9yOiAkZXJyb3JDb2xvcjtcbiAgICB9XG4gIH1cblxuICAuY29sdW1ue1xuICAgICYubWVzc2FnZXtcbiAgICAgIGNvbG9yOiAgICAgICAkcHJpbWFyeURhcmtDb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgICYudHlwZXtcbiAgICAgIG1heC13aWR0aDogODBweDtcbiAgICB9XG4gICAgJi5zZXZlcml0eXtcbiAgICAgICYud2FybmluZ3tcbiAgICAgICAgY29sb3I6ICR3YXJuaW5nQ29sb3I7XG4gICAgICB9XG4gICAgICAmLmNyaXRpY2Fse1xuICAgICAgICBjb2xvcjogJGVycm9yQ29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgICYuZGF0ZXRpbWV7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblBSSUNJTkcgU1RZTEVTXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5idG4tc3Vic2NyaWJlIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzk3OTc5NztcbiAgd2lkdGg6IDc1JTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC5idG4tc3Vic2NyaWJlIHtcbiAgICB3aWR0aDogOTAlO1xuICB9XG59XG5cbi5idG4tc3Vic2NyaWJlIC5mYS1jaGVjayB7XG4gIGNvbG9yOiAjNEE5MEUyO1xufVxuXG4uYnRuLXN1YnNjcmliZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEMkQyRDI7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4uYnRuLXN1YnNjcmliZS1wcm8ge1xuICBjb2xvcjogI2ZmZjtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZsb1Byb3RlY3RHcmVlbjtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uYnRuLXN1YnNjcmliZS1kZWxpbnF1ZW50IHtcbiAgY29sb3I6ICNmZmY7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRjk3MjA7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmJ0bi1zdWJzY3JpYmUtcHJvIC5mYS1jaGVjayB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnRuLXN1YnNjcmliZS1wcm86aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZsb1Byb3RlY3REYXJrR3JlZW47XG59XG5cbi5idG4tc3Vic2NyaWJlLXBybzpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NDI2Njtcbn1cblxuLnByaWNpbmcge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRDJEMkQyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5wcmljaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAucHJpY2luZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICB9XG59XG5cbi5wcmljaW5nIC5wbGFuLWRldGFpbHMge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW46IDE1cHggYXV0byAwO1xufVxuXG4ucHJpY2luZyAucGxhbi1kZXRhaWxzIHVsIHtcbiAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIHBhZGRpbmc6IDBweCA3JSAzMHB4IDclO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucHJpY2luZyAucGxhbi1kZXRhaWxzIHVsIGxpIGEge1xuICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbn1cblxuLnByaWNpbmcgLnBsYW4tZGV0YWlscyB1bCBsaSBhIGkge1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLnBybyB1bCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAucHJvIHVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWxlZnQ6IDQlIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcm8gdWwgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbjogMTBweCAwcHg7XG4gIH1cblxuICAucHJvIHVsIGxpOmJlZm9yZSB7XG4gICAgY29udGVudDogXCIrXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDRweDtcbiAgfVxufVxuXG4ucHJpY2luZyAucGxhbiB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFQkVCRUI7XG59XG5cbi5wcmljaW5nIC5kZXNjcmlwdGlvbiB7XG4gIHBhZGRpbmc6IDIwcHggMjBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnByaWNpbmcgLnByaWNpbmctZm9vdGVyIHtcbiAgcGFkZGluZzogMjBweDtcbn1cblxuLnByaWNpbmcgLnBsYW4gLmljb24tQ2lyY2xlLU90aGVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5hdHRhY2hlZCA+IC5jb2wtbGctNCxcbi5hdHRhY2hlZCA+IC5jb2wtbGctMyxcbi5hdHRhY2hlZCA+IC5jb2wtbWQtNCxcbi5hdHRhY2hlZCA+IC5jb2wtbWQtMyxcbi5hdHRhY2hlZCA+IC5jb2wtc20tNCxcbi5hdHRhY2hlZCA+IC5jb2wtc20tMyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnByaWNpbmcucHJvIHtcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgYm94LXNoYWRvdzogMHB4IDRweCA2MHB4IDAgcmdiYSgwLCAwLCAwLCAwLjMpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbn1cblxuLnByaWNpbmcuYmFzaWMge1xuICBjb2xvcjogIzZENkQ2RDtcbn1cblxuLnByaWNpbmcuYmFzaWMgLmRlc2NyaXB0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLnByaWNpbmcgLmJhc2ljLXBsYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGQUZGO1xuICBjb2xvcjogIzE5NDc2RDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLnByaWNpbmcgLnByby1wbGFuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NDI2Njtcbn1cblxuLnByaWNpbmcgLnByby1wbGFuIC5mYS1zaGllbGQtYWx0IHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gIG1hcmdpbi1yaWdodDogMSU7XG59XG5cbi5ob21lLXByb3RlY3QgLmNhcmQtaGVhZGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLmhvbWUtcHJvdGVjdCAuY2FyZC1oZWFkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmhvbWUtcHJvdGVjdCAuY2FyZC5ob21lLXByb3RlY3QtY29udGVudCB7XG4gICAgcGFkZGluZzogMjBweCAyMHB4IDBweCAyMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAuaG9tZS1wcm90ZWN0IC5jYXJkLmhvbWUtcHJvdGVjdC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5ob21lLXByb3RlY3QgaDEge1xuICBjb2xvcjogIzMzMzMzMztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaG9tZS1wcm90ZWN0IGgyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5ob21lLXByb3RlY3QgaDMge1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLmhvbWUtcHJvdGVjdCAuaG9tZS1wcm90ZWN0LWNvbnRlbnQgLndyYXBwZXIgLmNhcmQtYm9keSB7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xufVxuXG4uaG9tZS1wcm90ZWN0IC5zaG9ydC1kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbjogMTBweDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xufVxuXG4uaG9tZS1wcm90ZWN0IC5kcmlwLWxvZ28tY29udGFpbmVyIGltZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAvKiBTYWYzLjErLCBDaHJvbWUgKi9cbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDAuNik7XG4gIC8qIEZGMy41KyAqL1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAvKiBJRTkgKi9cbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAvKiBPcGVyYSAxMC41KyAqL1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNik7XG59XG5cbi5ob21lLXByb3RlY3QgLmFuc3dlciB7XG4gIGNvbG9yOiAjNzc3Nzc3O1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLmhvbWUtcHJvdGVjdCAucHJlc3MtbG9nb3Mge1xuICBwYWRkaW5nOiAyMHB4IDEyJTtcbn1cblxuLmhvbWUtcHJvdGVjdCAucGxhbnMtZmVhdHVyZXMtdGFibGUge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi5ob21lLXByb3RlY3QgLnBsYW5zLWZlYXR1cmVzLXRhYmxlIGJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaG9tZS1wcm90ZWN0IC5wbGFucy1mZWF0dXJlcy10YWJsZSB0aCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMTJweCAxMHB4O1xufVxuXG4uaG9tZS1wcm90ZWN0IC5wbGFucy1mZWF0dXJlcy10YWJsZSB0aDpudGgtb2YtdHlwZSgyKSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5ob21lLXByb3RlY3QgLnBsYW5zLWZlYXR1cmVzLXRhYmxlIHRoOmxhc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWM0ODZjO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmhvbWUtcHJvdGVjdCAucGxhbnMtZmVhdHVyZXMtdGFibGUgdHI6bnRoLW9mLXR5cGUob2RkKSB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQUZBRkE7XG59XG5cbi5ob21lLXByb3RlY3QgLnBsYW5zLWZlYXR1cmVzLXRhYmxlIHRyOmxhc3QtY2hpbGQgdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uaG9tZS1wcm90ZWN0IC5wbGFucy1mZWF0dXJlcy10YWJsZSB0ciwgLmhvbWUtcHJvdGVjdCAudGFibGUgdGgge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5ob21lLXByb3RlY3QgLnBsYW5zLWZlYXR1cmVzLXRhYmxlIHRkLCAuaG9tZS1wcm90ZWN0IC5wbGFucy1mZWF0dXJlcy10YWJsZSB0aCB7XG4gIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLmhvbWUtcHJvdGVjdCAucGxhbnMtZmVhdHVyZXMtdGFibGUgdGQ6bnRoLWNoaWxkKDIpLFxuLmhvbWUtcHJvdGVjdCAucGxhbnMtZmVhdHVyZXMtdGFibGUgdGQ6bnRoLWNoaWxkKDMpLFxuLmhvbWUtcHJvdGVjdCAucGxhbnMtZmVhdHVyZXMtdGFibGUgdGg6bnRoLWNoaWxkKDIpLFxuLmhvbWUtcHJvdGVjdCAucGxhbnMtZmVhdHVyZXMtdGFibGUgdGg6bnRoLWNoaWxkKDMpIHtcbiAgQGV4dGVuZCAudGV4dC1jZW50ZXI7XG59XG5cbi5jcmVkaXQtY2FyZC1wYXltZW50IHtcbiAgbWFyZ2luOiAxNXB4IDE1cHggMzBweCAxNXB4O1xuXG4gIC5jdXJyZW50LWNyZWRpdC1jYXJkIHtcbiAgICAuY2MtbnVtYmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICB9XG4gICAgLmNjLWV4cGlyYXRpb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIH1cbiAgfVxuICAudXBkYXRlLXBheW1lbnQtbGluayB7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgfVxuICAuY3JlZGl0LWNhcmQtaW5mbyB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5cbi5jcmVkaXQtY2FyZC1wYXltZW50IGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLmNyZWRpdC1jYXJkLXBheW1lbnQgLnJvdyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5jcmVkaXQtY2FyZC1wYXltZW50IC5wcmljZSB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBwYWRkaW5nOiA3cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmbG9Qcm90ZWN0R3JlZW47XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uY3JlZGl0LWNhcmQtcGF5bWVudCAucGxhbi1kZXRhaWxzIHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbn1cblxuLmNyZWRpdC1jYXJkLXBheW1lbnQgLnBsYW4tZGV0YWlscyB1bCBsaSB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jcmVkaXQtY2FyZC1wYXltZW50IC5wbGFuLWRldGFpbHMgdWwgbGkgLnBsYW4taWNvbiB7XG4gIGNvbG9yOiAjOUI5QjlCO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWJhc2lzOiAyMnB4O1xuICBtYXJnaW4tdG9wOiAycHg7XG59XG5cbi5jcmVkaXQtY2FyZC1wYXltZW50IC5wbGFuLWRldGFpbHMgdWwgbGkgLnBsYW4tdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLmNyZWRpdC1jYXJkLXBheW1lbnQgLmJ0bi1jaGVja291dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDMwcHggMHB4IDE1cHggMHB4O1xufVxuXG4uZ3JlZW4ge1xuICBjb2xvcjogcmdiYSgxMDUsIDIyMCwgODUsIDAuNjQpO1xufVxuXG4ucHJvLXBsYW4gLnByaWNpbmctdGl0bGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogNTBweDtcbn1cblxuLnBvcG92ZXItaWNvbiB7XG4gIGNvbG9yOiAjNkQ2RDZEO1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4ucHJvIC5hZGRpdGlvbmFsLWluZm8ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogMzAwO1xuICBwYWRkaW5nOiAwcHggMTYlIDAgOSU7XG4gIG1hcmdpbjogMjBweCAwcHggMHB4IDBweDtcbn1cblxuLmhvbWUtcHJvdGVjdC1iYW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGQUZGO1xufVxuXG4uaG9tZS1wcm90ZWN0LWJhbm5lciBpbWcge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uaG9tZS1wcm90ZWN0LWJhbm5lciBoMyB7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBmb250LWZhbWlseTogXCJQVCBTYW5zXCI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uaG9tZS1wcm90ZWN0LWJhbm5lciBwIHtcbiAgcGFkZGluZzogMCUgMTElO1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICBsaW5lLWhlaWdodDogMTlweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5ob21lLXByb3RlY3QtYmFubmVyIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC5ob21lLXByb3RlY3QtYmFubmVyIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgfVxuXG4gIC5ob21lLXByb3RlY3QtYmFubmVyIC5jb2wtbWQtNDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5TVFJJUEUgRUxFTUVOVFMgU1RZTEVTXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5TdHJpcGVFbGVtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMTBweCAxMnB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCAjZTZlYmYxO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMTUwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAxNTBtcyBlYXNlO1xufVxuXG4uU3RyaXBlRWxlbWVudC0tZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCAjY2ZkN2RmO1xufVxuXG4uU3RyaXBlRWxlbWVudC0taW52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogI2ZhNzU1YTtcbn1cblxuLlN0cmlwZUVsZW1lbnQtLXdlYmtpdC1hdXRvZmlsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZkZTUgIWltcG9ydGFudDtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblBBWU1FTlRTIFNVQ0NFU1MgU1RZTEVTXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8qKiBQYWdlLXNwZWNpZmljIHN0eWxlcyAqL1xuQGtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB2b2lkLWFuaW1hdGlvbi1vdXQge1xuICAwJSxcbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNoZWNrb3V0LnN1Ym1pdHRlZCAuc3VjY2Vzcyxcbi5jaGVja291dC5zdWJtaXR0aW5nIC5zdWNjZXNzIHtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cblxuLmNoZWNrb3V0LnN1Ym1pdHRpbmcgLnN1Y2Nlc3MgLmljb24ge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uY2hlY2tvdXQuc3VibWl0dGVkIC5zdWNjZXNzID4gKiB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uY2hlY2tvdXQuc3VibWl0dGVkIC5zdWNjZXNzID4gOm50aC1jaGlsZCgyKSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi5jaGVja291dC5zdWJtaXR0ZWQgLnN1Y2Nlc3MgPiA6bnRoLWNoaWxkKDMpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4ycztcbn1cblxuLmNoZWNrb3V0LnN1Ym1pdHRlZCAuc3VjY2VzcyA+IDpudGgtY2hpbGQoNCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xufVxuXG4uY2hlY2tvdXQuc3VibWl0dGVkIC5zdWNjZXNzIC5pY29uIC5ib3JkZXIsXG4uY2hlY2tvdXQuc3VibWl0dGVkIC5zdWNjZXNzIC5pY29uIC5jaGVja21hcmsge1xuICBvcGFjaXR5OiAxO1xuICBzdHJva2UtZGFzaG9mZnNldDogMCAhaW1wb3J0YW50O1xufVxuXG4uY2hlY2tvdXQuc3VibWl0dGVkIC5zdWNjZXNzIC5sZy10ZXh0IHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4uY2hlY2tvdXQuc3VibWl0dGVkIC5zdWNjZXNzIC5idG4tc3Vic2NyaWJlLXBybyB7XG4gbWFyZ2luLXRvcDogMThweDtcbn1cblxuLmNoZWNrb3V0IGZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMzVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbn1cblxuLmNoZWNrb3V0LnN1Ym1pdHRlZCAuY3JlZGl0LWNhcmQtcGF5bWVudCxcbi5jaGVja291dC5zdWJtaXR0aW5nIC5jcmVkaXQtY2FyZC1wYXltZW50IHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmNoZWNrb3V0IC5zdWNjZXNzIHtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNoZWNrb3V0IC5zdWNjZXNzID4gKiB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTBweCk7XG59XG5cbi5jaGVja291dCAuc3VjY2VzcyAuaWNvbiB7XG4gIG1hcmdpbjogMTVweCAwIDMwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MHB4KSBzY2FsZSgwLjc1KTtcbn1cblxuLmNoZWNrb3V0IC5zdWNjZXNzIC5pY29uIHN2ZyB7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG59XG5cbi5jaGVja291dCAuc3VjY2VzcyAuaWNvbiAuYm9yZGVyIHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMjUxO1xuICBzdHJva2UtZGFzaG9mZnNldDogNjIuNzU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIHRyYW5zaXRpb246IHN0cm9rZS1kYXNob2Zmc2V0IDAuMzVzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5jaGVja291dCAuc3VjY2VzcyAuaWNvbiAuY2hlY2ttYXJrIHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogNjA7XG4gIHN0cm9rZS1kYXNob2Zmc2V0OiA2MDtcbiAgdHJhbnNpdGlvbjogc3Ryb2tlLWRhc2hvZmZzZXQgMC4zNXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKSAwLjM1cztcbn1cblxuLmNoZWNrb3V0IC5zdWNjZXNzIC5yZXNldDphY3RpdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG5cbi5jaGVja291dCAuc3VjY2VzcyAucmVzZXQgc3ZnIHtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cblxuLmNoZWNrb3V0IC5zdWNjZXNzIC5pY29uIC5ib3JkZXIge1xuICBzdHJva2U6ICNhYmU5ZDI7XG59XG5cbi5jaGVja291dCAuc3VjY2VzcyAuaWNvbiAuY2hlY2ttYXJrIHtcbiAgc3Ryb2tlOiAjMjRiNDdlO1xufVxuXG4uY2hlY2tvdXQgLnN1Y2Nlc3MgLnJlc2V0IHBhdGgge1xuICBmaWxsOiAjMjRiNDdlO1xufVxuXG4uZmxvcHJvdGVjdC10ZXJtcyB7XG4gIGNvbG9yOiAjOWU5ZTllO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uY2FuY2VsLXN1YnNjcmlwdGlvbi1tb2RhbCB7XG4gIG1pbi1oZWlnaHQ6IDQ2MnB4O1xufVxuXG4uY2FuY2VsLXN1YnNjcmlwdGlvbiB7XG4gIG1hcmdpbjogMTVweCAhaW1wb3J0YW50O1xuXG4gIC5yZWFzb24tZm9ybSB7XG4gICAgLnJlYXNvbi10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0YwRjBGMjtcbiAgICAgIGJvcmRlci1jb2xvcjogI0YwRjBGMjtcbiAgICB9XG5cbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA5cHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuYmVuZWZpdHMtc2NyZWVuIHtcbiAgICBjb2xvcjogIzZENkQ2RDtcbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAxMHB4IDAgMCAxNXB4O1xuICAgIH1cblxuICAgIHVsLmRhc2hlZCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgfVxuXG4gICAgdWwuZGFzaGVkID4gbGkge1xuICAgICAgdGV4dC1pbmRlbnQ6IC01cHg7XG4gICAgfVxuXG4gICAgdWwuZGFzaGVkID4gbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiLSBcIjtcbiAgICAgIHRleHQtaW5kZW50OiAtNXB4O1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIH1cblxuICAgIC5mb290ZXItdGV4dCB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfSAgICAgIFxuICAgIH1cblxuICAgIC53YXJuaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2FuY2VsLXN1YnNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDQ3JTtcbiAgICBtYXJnaW46IDMwcHggMHB4IDE1cHggMHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuXG4gIC5idG4tY29udGludWUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5idG4tYmFjayB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMURENDkxO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFERDQ5MTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhvbWUtcHJvdGVjdCAuY2FyZC5ob21lLXByb3RlY3QtY29udGVudCAub3JkZXItbWQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG59XG5cbi5mbG8tcHJvdGVjdC1iYW5uZXIge1xuICBtYXJnaW46IDQwcHggMDtcbiAgLnJvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgIC5pbWFnZS13cmFwcGVyIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgaW1nIHsgbWF4LWhlaWdodDogNzBweDsgfVxuICAgICAgYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgcmdiKDE2OSwgMTkwLCAyMDApO1xuICAgIH1cblxuICAgIC5iYW5uZXItZGV0YWlscyB7XG4gICAgICBjb2xvcjogcmdiKDExLCA1MCwgODYpO1xuICAgICAgaDUge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mbG8tcHJvdGVjdC1iYW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogMTEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTEwcHg7XG5cbiAgICAuaW1hZ2Utd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5iYW5uZXItZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi5zZXR0aW5ncy1ub3RpZmljYXRpb25zIHtcblxuICB0ci50aXRsZS1yb3cge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItd2lkdGg6IDNweDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICYuY3JpdGljYWx7XG4gICAgICBib3JkZXItY29sb3I6ICRlcnJvckNvbG9yO1xuICAgICAgY29sb3I6ICRlcnJvckNvbG9yO1xuICAgIH1cbiAgICAmLndhcm5pbmd7XG4gICAgICBib3JkZXItY29sb3I6ICR3YXJuaW5nQ29sb3I7XG4gICAgICBjb2xvcjogJHdhcm5pbmdDb2xvcjtcbiAgICB9XG4gICAgJi5pbmZve1xuICAgICAgYm9yZGVyLWNvbG9yOiAkc3VjY2Vzc0NvbG9yO1xuICAgICAgY29sb3I6ICRzdWNjZXNzQ29sb3I7XG4gICAgfVxuICAgIHRkIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQ6YmVmb3Jle1xuICAgICAgICBjb250ZW50OiBcIj5cIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjFzIGVhc2Utb3V0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgICYub3BlbiB0ZDpmaXJzdC1jaGlsZDpiZWZvcmV7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSggOTBkZWcgKTtcbiAgICB9XG4gIH1cblxuICB0ZCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICAmLmFsYXJtLW5hbWUge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHBhZGRpbmc6IDZweCAwIDZweCAyMHB4O1xuICAgIH1cbiAgICAmLndhdGVyLXNodXRvZmYge1xuICAgICAgcGFkZGluZzogNnB4IDAgNnB4IDQwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nOiA2cHggMTBweCA2cHggMThweDtcbiAgICB9XG4gIH1cblxuICAuY2FyZCB7XG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICB9XG4gICAgICAuZGV2aWNlLWRyb3Bkb3duIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jYXJkLWhlYWRlcjphZnRlciB7XG4gICAgbWFyZ2luLXRvcDogMy4zcmVtO1xuICB9XG59XG5cblxuLm5vLWRldmljZXtcbiAgLnNldHRpbmdzLW5vdGlmaWNhdGlvbnMgLndyYXBwZXIgdHIudGl0bGUtcm93IHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbiAgLmZsby1ncm91cC10b2dnbGVib3ggLmRlcHJlc3NlZC1ib3h7XG4gICAgYmFja2dyb3VuZDogJGRpc2FibGVkQ29sb3IhaW1wb3J0YW50O1xuICAgIGN1cnNvcjogICAgIGRlZmF1bHQ7XG4gIH1cbn1cbiIsIi5mbG8tZGV0ZWN0e1xuXG4gIC5hbGVydCB7XG4gICAgd2lkdGg6IDEwMCVcbiAgfVxuICAuc2VsZWN0LWRldmljZS1jb250YWluZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgcGFkZGluZzoge1xuICAgICAgdG9wOiAxNXB4O1xuICAgICAgYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIHRoLCB0ZCB7XG4gICAgICBAZXh0ZW5kIC50ZXh0LWNlbnRlclxuICAgIH1cblxuICAgIC5maXh0dXJlLXR5cGUtY29sdW1uIHtcbiAgICAgIHdpZHRoOiAyMDBweDtcbiAgICB9XG5cbiAgICAuc2VsZWN0LWRldmljZS1sYWJlbCB7XG5cbiAgICAgIG1hcmdpbjoge1xuICAgICAgICByaWdodDogMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9va3MtZ29vZC1jb2x1bW4ge1xuXG4gICAgICAudG9nZ2xlLWNvbnRhaW5lciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAuZmVlZGJhY2stZHJvcGRvd24tY29udGFpbmVyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3VibWl0LWJ1dHRvbi1jb250YWluZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlclxuICB9XG5cblxuXG59XG4iLCIuYWNjb3VudC1jcmVhdGlvbi1sYW5kaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAubWFpbi1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNTBweDtcbiAgfVxuXG4gIC5tdWx0aS1zdGVwLWluZGljYXRvciB7XG4gICAgbWFyZ2luOiAzMHB4O1xuICB9XG5cbiAgLmJ1dHRvbnMge1xuICAgIC5idG4tbGFuZGluZyB7XG4gICAgICBtYXJnaW46IDBweCA1cHg7XG4gICAgfVxuICB9XG5cbiAgLmFkZHJlc3Mge1xuICAgIHdpZHRoOiAzMDVweDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luOiAyNXB4IGF1dG8gMTBweCBhdXRvO1xuICB9XG5cbiAgLmNvbmZpcm1hdGlvbi1xdWVzdGlvbiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgIGNvbG9yOiAjODQ4MDgwO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cblxuICAuaGVhZGVyLWxvZ28ge1xuICAgIG1hcmdpbjogMHB4IDIwcHg7XG4gICAgd2lkdGg6IDU1cHg7XG4gIH1cblxuICAuaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gIH1cblxuICAuaGVhZGVyLXRleHQge1xuICAgIGNvbG9yOiAjNzc4NjlCO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cblxuICAuanVtYm90cm9uIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9iYWNrZ3JvdW5kLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuXG4gICAgaDEge1xuICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCI7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIH1cblxuICAgIC5zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDU4OHB4O1xuICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4xcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIG1hcmdpbjogMTVweCAwcHg7XG4gICAgfVxuXG4gICAgLmZvcm0tcGxhY2VzLXNlYXJjaCB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDBweCA4MHB4IDBweDtcblxuICAgICAgICAuZm9ybS1ncm91cC1zZWFyY2gge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICB3aWR0aDogMzUlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICBtYXJnaW46IDMwcHggMHB4IDMwcHggMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAuZm9ybS1ncm91cC1zZWFyY2gge1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2VhcmNoLWJhci1jb21wb25lbnQge1xuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzMzMzMzMztcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDQwcHg7XG5cbiAgICAgICAgICAvLyBBZGQgbWFya2VyIGljb25cbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvbWFya2VyQDJ4LnBuZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTJweCAxNHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogI0JCQkJCQjtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCI7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY2xlYXItYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuc2VhcmNoLWJhci1jb21wb25lbnQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG5cbiAgICAgICAgICAuZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDk1JTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBidXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxREQ0OTE7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJlc3MtbG9nb3Mge1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICB9XG4gIH1cblxuICAubGlnaHQtYnVsYiB7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgbWFyZ2luOiAtNXB4IDEwcHggMHB4IDEwcHg7XG4gIH1cblxuICAuZGlkLXlvdS1rbm93IHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICM3Nzg2OUI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RkFGRTtcbiAgfVxuXG4gIC5ob3ctaXQtd29ya3Mge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgbWFyZ2luOiAwcHggNDBweCA0MHB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAjNzc4NjlCO1xuICAgICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMS4yNXB4O1xuICAgICAgbWFyZ2luOiAyNXB4IDBweDtcbiAgICB9XG5cbiAgICAuc3RlcCB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDM2cHg7XG4gICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICBwYWRkaW5nOiAycHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxOTQ3NkQ7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICAuc3RlcC1kZXNjcmlwdGlvbiB7XG4gICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgbWFyZ2luOiAyNXB4IDBweCAzNXB4IDBweDtcbiAgICB9XG5cbiAgICAuaG93LWl0LXdvcmtzLW5vdGUge1xuICAgICAgbWF4LXdpZHRoOiA1ODBweDtcbiAgICAgIGNvbG9yOiAjQkJCQkJCO1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5ob21lLXByb3RlY3QtZmVhdHVyZXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGOEZBRkU7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgIG1hcmdpbjogNDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgbWFyZ2luOiAyMHB4IDBweCAwcHggMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIjtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwcHg7XG4gICAgfTtcblxuICAgIC5zaGllbGQge1xuICAgICAgd2lkdGg6IDIycHg7XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG5cbiAgICAuaG9tZS1Qcm90ZWN0LWZlYXR1cmUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICAgICAgaDQge1xuICAgICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjI1cHg7XG4gICAgICAgIG1hcmdpbjogMTJweCAwcHg7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDBweCA0MHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tYWluLXJldmlldyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICBtYXJnaW46IDQwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICBtYXJnaW46IDIwcHggMHB4IDBweCAwcHg7XG4gICAgfVxuXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAjNzc4NjlCO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAzOHB4O1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIjtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgbWFyZ2luOiAyMHB4IDBweDtcbiAgICB9XG5cbiAgICBzdHJvbmcge1xuICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCI7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICBoMywgcCwgc3Ryb25nIHtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5yZXZpZXdzIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgIG1hcmdpbjogNDBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIG1hcmdpbjogMjBweCAwcHggMHB4IDBweDtcbiAgICB9XG5cbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXgtd2lkdGg6IDYwM3B4O1xuICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCI7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC53aGF0LWluY2x1ZGVzIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgIG1hcmdpbjogNDBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIG1hcmdpbjogMjBweCAwcHggMHB4IDBweDtcbiAgICB9XG5cbiAgICAuaW1hZ2Uge1xuICAgICAgcGFkZGluZzogMHB4O1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzg2OUI7XG5cbiAgICAgIGRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDI4JTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDI4JTtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmVudGlyZS1ob21lLXByb3RlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RkFGRTtcblxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAjNzc4NjlCO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogMS4yNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgfVxuXG4gICAgLnByaWNlIHtcbiAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgIG1hcmdpbjogMjBweCAwcHggN3B4IDBweDtcblxuICAgICAgc3Ryb25nIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjlyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmluc3RhbGxhdGlvbi1jb3N0IHtcbiAgICAgIGNvbG9yOiAjNzc4NjlCO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kZXRhaWxzIHtcbiAgICAgIGNvbG9yOiAjNzc4NjlCO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuXG4gICAgICAgIC5mYS1jaGVjayB7XG4gICAgICAgICAgbWFyZ2luOiAwcHggMTBweDtcbiAgICAgICAgICBjb2xvcjogIzFERDQ5MTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zYXZlcy1pbiB7XG4gICAgcGFkZGluZzogMzBweCAwcHggNzBweCAwcHg7XG5cbiAgICBoNCB7XG4gICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCI7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIG1hcmdpbjogMTBweCBhdXRvIDA7XG4gICAgfVxuICB9XG5cbiAgLnNlYXJjaC1iYXItY29udGFpbmVyIHtcbiAgICAuc2VhcmNoLWlucHV0LFxuICAgIC5zZWFyY2gtaW5wdXQ6Zm9jdXMsXG4gICAgLnNlYXJjaC1pbnB1dDphY3RpdmUge1xuICAgICAgQGV4dGVuZCAuZm9ybS1jb250cm9sLWxnO1xuICAgIH1cbiAgfVxuXG4gIC5mYS1jaXJjbGUge1xuICAgIGNvbG9yOiBkYXJrZ3JheTtcbiAgICBtYXJnaW46IDBweCAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICB9XG5cbiAgLmZhLWNpcmNsZS5hY3RpdmUge1xuICAgIGNvbG9yOiBibGFjaztcbiAgfVxuXG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmc6IDIwcHggMHB4IDMwcHggMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxOTQ3NkQ7XG5cbiAgICAuZm9vdGVyLWJsb2NrIHtcbiAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiA2NXB4O1xuICAgICAgfVxuXG4gICAgICAudGV4dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5sYW5kaW5nLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCA2cHggLTVweCAjZDlkOWQ5O1xuICAtbW96LWJveC1zaGFkb3c6IDAgNXB4IDZweCAtNXB4ICNkOWQ5ZDk7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDZweCAtNXB4ICNkOWQ5ZDk7XG59XG5cbi5idG4tbGFuZGluZyB7XG4gIEBleHRlbmQgLmJ0bjtcblxuICBwYWRkaW5nOiAxMnB4IDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICBmb250LXNpemU6IDE1cHg7XG4gIG1pbi13aWR0aDogMjAwcHg7XG59XG5cbi5idG4tcHJpbWFyeS1sYW5kaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFERDQ5MTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi5idG4tc2Vjb25kYXJ5LWxhbmRpbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzVmNWY1ZjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk4OTg5ODtcbn1cblxuLmJ0bi1saWdodC1ibHVlLWxhbmRpbmcge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEwQTNFODtcbn1cblxuLm1vZGFsIHtcbiAgLmJ0bi1sYW5kaW5nIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4uYWNjb3VudC1jcmVhdGlvbi1sYW5kaW5nLnVzZXItY3JlYXRpb24ge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luOiAzMHB4IDBweCA1cHggMHB4O1xuICB9XG5cbiAgaDIge1xuICAgIGNvbG9yOiAjNzE4MDk0O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cblxuICBzbWFsbCB7XG4gICAgY29sb3I6ICM3Nzg2OUI7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcblxuICAgIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB9XG4gIH1cblxuICAuZm9ybSB7XG4gICAgbWFyZ2luOiAzMHB4IDBweCAyMHB4IDBweDtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1yYWRpdXM6IDByZW07XG4gICAgcGFkZGluZzogN3B4IDE3cHg7XG4gIH1cblxuICAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNCOEI4Qjg7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG5cbiAgLmZhLWNoZWNrLWNpcmNsZSB7XG4gICAgY29sb3I6ICMxREQ0OTE7XG4gIH1cblxuICAuYnRuLWxhbmRpbmcge1xuICAgIHBhZGRpbmc6IDdweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG59XG5cbi5hY2NvdW50LWNyZWF0aW9uLWxhbmRpbmcuZW1haWwtY29uZmlybWF0aW9uIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbjogMzBweCAwcHggMTBweCAwcHg7XG4gIH1cblxuICBoMiB7XG4gICAgd2lkdGg6IDYxMC41cHg7XG4gICAgY29sb3I6ICM3Nzg2OUI7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC5lbnZlbG9wZSB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cblxuICAuYnRuLWxhbmRpbmcge1xuICAgIHBhZGRpbmc6IDdweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbjogMzBweCBhdXRvIDBweCBhdXRvO1xuICB9XG59XG5cbi5hY2NvdW50LWNyZWF0aW9uLWxhbmRpbmcuZW1haWwtY29uZmlybWVkIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbjogMzBweCAwcHggNXB4IDBweDtcbiAgfVxuXG4gIGgyIHtcbiAgICBjb2xvcjogIzc3ODY5QjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLmZhLWNoZWNrLWNpcmNsZSB7XG4gICAgY29sb3I6ICMxREQ0OTE7XG4gIH1cbn1cblxuXG4iLCIuYXV0aG9yaXphdGlvbiB7XG4gIC5yb3cge1xuICAgIG1hcmdpbjogMHB4IDIwcHg7XG4gIH1cblxuICAuY2FyZC1jb250YWluZXIge1xuICAgIG1hcmdpbjogMzBweCBhdXRvIDEwMHB4IGF1dG87XG4gIH1cblxuICAuZmxvSWNvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgY29sb3I6ICAgICAgICAgJHByaW1hcnlEYXJrQ29sb3I7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgY29sb3I6ICRwcmltYXJ5RGFya0NvbG9yO1xuICB9XG5cbiAgaDQge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5RGFya0NvbG9yO1xuICB9XG5cbiAgLmRldGFpbHMge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIHVsLmRldGFpbHMtbGlzdCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICB9XG5cbiAgLmJ1dHRvbnMge1xuICAgIEBleHRlbmQgLnRleHQtY2VudGVyO1xuXG4gICAgLmJ0biB7XG4gICAgICBtYXJnaW46IDBweCA1cHg7XG4gICAgfVxuICB9XG59XG4iLCIuZW1haWwtdW5zdWJzY3JpYmUge1xuICAucm93IHtcbiAgICBtYXJnaW46IDBweCAyMHB4O1xuICB9XG5cbiAgLmNhcmQtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgfVxuXG4gIC5mbG9JY29uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICBjb2xvcjogICAgICAgICAkcHJpbWFyeURhcmtDb2xvcjtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMzAlO1xuICAgIH1cbiAgfVxuXG4gIGgzIHtcbiAgICBjb2xvcjogJHByaW1hcnlEYXJrQ29sb3I7XG4gIH1cblxuICAuZGV0YWlscyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgdWwuZGV0YWlscy1saXN0IHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gIH1cblxuICAuYnV0dG9ucyB7XG4gICAgQGV4dGVuZCAudGV4dC1jZW50ZXI7XG5cbiAgICAuYnRuIHtcbiAgICAgIG1hcmdpbjogMHB4IDVweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5pbnN1cmFuY2UtbGV0dGVyIHtcbiAgLmJ0bi1wcmltYXJ5LCAuYnRuLXByaW1hcnk6ZGlzYWJsZWQsIC5idG4tcHJpbWFyeS5kaXNhYmxlZCAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmbG9Qcm90ZWN0R3JlZW47XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmxvUHJvdGVjdERhcmtHcmVlbjtcbiAgfVxuXG4gIC5idG4tcHJpbWFyeTphY3RpdmUsIC5idG4tcHJpbWFyeTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZsb1Byb3RlY3REYXJrZXJHcmVlbiFpbXBvcnRhbnQ7XG4gIH1cblxuICAubm9uLXN1Yi5sZXR0ZXIge1xuICAgIC5iYW5uZXIge1xuICAgICAgb3BhY2l0eTogMC44NTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmbG8tYmx1ZTtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkZmxvUHJvdGVjdEdyZWVuO1xuXG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cbiIsIi5kZWR1Y3RpYmxlLWd1YXJhbnRlZSB7XG5cbiAgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5zdWJ0aXRsZSB7XG4gICAgYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gIC5jYXJkIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuXG4gICAgLnN0YXR1c3tcbiAgICAgIHBhZGRpbmc6IDBweCAwIDE0cHggMDtcblxuICAgICAgLnN0YXR1cy1iYWRnZXtcbiAgICAgICAgZm9udC1zaXplOiA5NSU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNENzMzMzM7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDlweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA5cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICB9XG5cbiAgICAgIC5zdGF0dXMtYmFkZ2UuYmFkZ2Utb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODlDRjY0O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB9XG5cbiAgICAgIC5zdGF0dXMtYmFkZ2UuYmFkZ2Utd2FybmluZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkIxNDE7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgLnN0YXR1cy10aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAycHggMTVweCAwcHggMHB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pbm5lci1jYXJkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0ODY0N0Y7XG4gICAgICBwYWRkaW5nOiAzNnB4O1xuICAgICAgY29sb3I6IHdoaXRlO1xuXG4gICAgICAudGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIH1cbiAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgfVxuICAgICAgLmZsby1wcm90ZWN0LWxpbmsge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjNjBEMDk2O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlubmVyLWNhcmQuc3Vic2NyaWJlZC1hbGVydHMge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICBcbiAgICAgICAgICAuYm9yZGVyIHtcbiAgICAgICAgICAgIHN0cm9rZTogI2FiZTlkMjtcbiAgICAgICAgICB9XG4gIFxuICAgICAgICAgIC5jaGVja21hcmsge1xuICAgICAgICAgICAgc3Ryb2tlOiAjMjRiNDdlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGFiZWwge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuICAgICAgICAubGFiZWwud2l0aC1hbGVydHMge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hbGVydHMge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcblxuICAgICAgICAgIC5hbGVydHMtY291bnQge1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAud2FybmluZywgLmluZm8ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGQjE0MiAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY3JpdGljYWwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Q5MUMxRCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnNlZS1hbGwge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudmlldy1hbGVydHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAyOHB4O1xuXG4gICAgICAgIC5hbGVydHMtYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjtcbiAgICAgICAgICBwYWRkaW5nOiAxMXB4IDQ2cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0EzQjJCRjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5sb2NhdGlvbi1zZWxlY3RvciB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIG1pbi1oZWlnaHQ6IDM0cHg7XG5cbiAgLmxvY2F0aW9uLWRyb3Bkb3duIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtaW4td2lkdGg6IDMwMHB4O1xuXG4gICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBvdXRsaW5lLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuc3lzdGVtLW1vZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAubG9jYXRpb24tZHJvcGRvd24ge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIC5zeXN0ZW0tbW9kZSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbjogMTBweCAwIDEwcHggMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAuc2luZ2xlLWxvY2F0aW9uIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgcGFkZGluZy10b3A6IDdweDtcbiAgfVxuXG4gIC5sb2FkZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcblxuICAgIC5sb2FkZXIge1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgI2YzZjNmMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAjMzQ5OGRiO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7IC8qIFNhZmFyaSAqL1xuICAgICAgYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB9XG4gIH1cbn0iLCIuZGV0ZWN0b3ItdGVsZW1ldHJ5LXN0YXRzIHtcbiAgbWFyZ2luOiAzMnB4IDE0MHB4O1xuXG4gIC5kZXRlY3Rvci10ZWxlbWV0cnktd2lkZ2V0IHtcblxuICAgIC5kZXRlY3Rvci1pY29uIHtcbiAgICAgIGhlaWdodDogMTE2cHg7XG4gICAgfVxuXG4gICAgLmljb24tYmF0dGVyeV8xMiB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9iYXR0ZXJ5X2ljb25fMTIucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDcwcHg7XG4gICAgfVxuXG4gICAgLmljb24tYmF0dGVyeV8yNSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9iYXR0ZXJ5X2ljb25fMjUucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDcwcHg7XG4gICAgfVxuXG4gICAgLmljb24tYmF0dGVyeV81MCB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9iYXR0ZXJ5X2ljb25fNTAucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDcwcHg7XG4gICAgfVxuXG4gICAgLmljb24tYmF0dGVyeV83NSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9iYXR0ZXJ5X2ljb25fNzUucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDcwcHg7XG4gICAgfVxuXG4gICAgLmljb24tYmF0dGVyeV8xMDAge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvYmF0dGVyeV9pY29uXzEwMC5wbmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNzBweDtcbiAgICB9XG5cbiAgICAuaWNvbi1odW1pZGl0eSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9odW1pZGl0eV9pY29uLnBuZ1wiKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA3MHB4O1xuICAgIH1cbiAgICAuaWNvbi10ZW1wZXJhdHVyZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy90ZW1wZXJhdHVyZV9pY29uLnBuZ1wiKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA3MHB4O1xuICAgIH1cblxuICAgIC5kZXRlY3Rvci1uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG5cbiAgICAuZGV0ZWN0b3ItdmFsdWUge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgIC5kZXRlY3Rvci1uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICAuZGV0ZWN0b3ItdmFsdWUge1xuICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAuZGV0ZWN0b3ItbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIH1cblxuICAgICAgLmRldGVjdG9yLXZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgLmRldGVjdG9yLXRlbGVtZXRyeS1zdGF0cyB7XG4gICAgbWFyZ2luOiAzMnB4IDBweDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5yb3cudmVydGljYWwtZGl2aWRlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAucm93LnZlcnRpY2FsLWRpdmlkZXIgPiBkaXZbY2xhc3NePVwiY29sLVwiXSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMTAwcHg7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRTJFMkUyO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNFMkUyRTI7XG4gIH1cbiAgLnJvdy52ZXJ0aWNhbC1kaXZpZGVyIGRpdltjbGFzc149XCJjb2wtXCJdOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgfVxuICAucm93LnZlcnRpY2FsLWRpdmlkZXIgZGl2W2NsYXNzXj1cImNvbC1cIl06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB9XG59XG4iLCIuYWRkLXNodXRvZmYtZGV2aWNlLWJhbm5lciB7XG4gIGJhY2tncm91bmQ6IHVybCgnL2Fzc2V0cy9pbWFnZXMvdXBzZWxsX3NodXRvZmZfYmFubmVyX2JnX3B4LnBuZycpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQThDM0NGO1xuICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICB3aWR0aDogMTAwJTtcblxuICAuYmFja2dyb3VuZC1ib3gge1xuICAgIGJhY2tncm91bmQ6IHVybCgnL2Fzc2V0cy9pbWFnZXMvdXBzZWxsX3NodXRvZmZfYmFubmVyX2JnLnBuZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWluLWhlaWdodDogMTQwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuaGVhZGVyLXNlY3Rpb24ge1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgICAuY2xvc2UtaWNvbi13cmFwcGVyIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW46IDNweCAzcHggMCAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudC1zZWN0aW9uIHtcbiAgICAgIG1hcmdpbjogMHB4IDEwcHggMTBweCAxODBweDtcblxuICAgICAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuc2h1dG9mZi10ZXh0IHtcbiAgICAgICAgICBtYXJnaW46IDEzcHggMCAwIDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkobGcpIHsgLnNodXRvZmYtdGV4dCB7IHBhZGRpbmctbGVmdDogNDJweDsgfSB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seShzbSkgeyAuc2h1dG9mZi10ZXh0IHsgcGFkZGluZy1sZWZ0OiA2NnB4OyBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkoeHMpIHsgLnNodXRvZmYtdGV4dCB7IHBhZGRpbmctbGVmdDogNjZweDsgZm9udC1zaXplOiAxM3B4OyB9IH1cblxuICAgICAgICAuZHJvcC1pY29uIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbi13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luOiAxNnB4IDAgMCAwO1xuXG4gICAgICAgIC5hZGQtc2h1dG9mZi1idXR0b24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgICAgIHBhZGRpbmc6IDhweCA0MHB4O1xuICAgICAgICAgIGNvbG9yOiAjNUM2RTg1O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkobGcpIHsgLmFkZC1zaHV0b2ZmLWJ1dHRvbiB7IGZvbnQtc2l6ZTogMTRweDsgcGFkZGluZzogOHB4IDI1cHg7IH0gfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkoeHMpIHsgLmFkZC1zaHV0b2ZmLWJ1dHRvbiB7IGZvbnQtc2l6ZTogMTRweCB9IH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7IC5idXR0b24td3JhcHBlciB7IG1hcmdpbjogNHB4IDAgMTJweCAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seSh4bCkgeyAuYmFja2dyb3VuZC1ib3ggeyBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgfSB9XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seShsZykgeyAuYmFja2dyb3VuZC1ib3ggeyBiYWNrZ3JvdW5kLXNpemU6IDExMDBweCB9IH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KG1kKSB7IC5iYWNrZ3JvdW5kLWJveCB7IGJhY2tncm91bmQtc2l6ZTogMTU0MnB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IC0yOHB4OyB9IH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KHNtKSB7IC5iYWNrZ3JvdW5kLWJveCB7IGJhY2tncm91bmQtc2l6ZTogMTYwMHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IC01OHB4OyB9IH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KHhzKSB7IC5iYWNrZ3JvdW5kLWJveCB7IGJhY2tncm91bmQtc2l6ZTogMTU0NHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IC01OHB4OyB9IH1cbn0iLCJcbi5lbWFpbC1jb25maXJtYXRpb24ge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luOiAzMHB4IDBweCA0MHB4IDBweDtcbiAgfVxuXG4gIGgyIHtcbiAgICBjb2xvcjogIzc3ODY5QjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLmVudmVsb3BlIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuXG4gIC5idG4tbGFuZGluZyB7XG4gICAgcGFkZGluZzogN3B4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG8gMHB4IGF1dG87XG4gIH1cblxuICAuY29uZmlybWF0aW9uLW1lc3NhZ2Uge1xuICAgIG1hcmdpbi10b3A6IDU1cHg7XG5cbiAgICAudGl0bGUtZXJyb3Ige1xuICAgICAgY29sb3I6ICNmZjAwMDBjNztcbiAgICB9XG4gICAgLnRpdGxlLXN1Y2Nlc3Mge1xuICAgICAgY29sb3I6ICM2MEQwOTY7XG4gICAgfVxuICB9XG5cbiAgLmxvYWRlci13cmFwcGVyIHtcbiAgICBtaW4taGVpZ2h0OiAxOTBweDtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG5cbiAgICAubG9hZGVyIHtcbiAgICAgIGJvcmRlcjogNXB4IHNvbGlkICNmM2YzZjM7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBib3JkZXItdG9wOiA1cHggc29saWQgIzM0OThkYjtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlOyAvKiBTYWZhcmkgKi9cbiAgICAgIGFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7XG4gICAgfVxuICB9XG5cbiAgLm1haW4tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxufVxuIiwiLmFjY291bnQtY29uZmlybWF0aW9uIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbjogMzBweCAwcHggNDBweCAwcHg7XG4gIH1cblxuICBoMiB7XG4gICAgY29sb3I6ICM3Nzg2OUI7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC5mbG8tbG9nbyB7XG4gICAgbWFyZ2luLXRvcDogMThweDtcbiAgICBtYXgtd2lkdGg6IDY4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE3cHg7XG4gIH1cblxuICAuZW52ZWxvcGUge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG5cbiAgLmJ0bi1sYW5kaW5nIHtcbiAgICBwYWRkaW5nOiA3cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW46IDMwcHggYXV0byAwcHggYXV0bztcbiAgfVxuXG4gIC5jb25maXJtYXRpb24tbWVzc2FnZSB7XG4gICAgbWFyZ2luLXRvcDogNTVweDtcblxuICAgIC50aXRsZS1lcnJvciB7XG4gICAgICBjb2xvcjogI2ZmMDAwMGM3O1xuICAgIH1cbiAgICAudGl0bGUtc3VjY2VzcyB7XG4gICAgICBjb2xvcjogIzYwRDA5NjtcbiAgICB9XG4gIH1cblxuICAubG9hZGVyLXdyYXBwZXIge1xuICAgIG1pbi1oZWlnaHQ6IDE5MHB4O1xuICAgIHBhZGRpbmctdG9wOiAxMjBweDtcblxuICAgIC5sb2FkZXIge1xuICAgICAgYm9yZGVyOiA1cHggc29saWQgI2YzZjNmMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAjMzQ5OGRiO1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7IC8qIFNhZmFyaSAqL1xuICAgICAgYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB9XG4gIH1cblxuICAubWFpbi1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgfVxuXG59Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFHQSxBQUFBLElBQUksQ0FBQztFQUNILFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFdBQVcsRUFBRSxXQUFXO0VBQ3hCLFdBQVcsRUFBRSxHQUFHLEdBQ2pCOztBRVJELFVBQVU7RUFDUixXQUFXLEVBQUUsVUFBVTtFQUN2QixHQUFHLEVBQUcsaUNBQWlDO0VBQ3ZDLEdBQUcsRUFBRyx1Q0FBdUMsQ0FBQywyQkFBMkIsRUFDdkUsaUNBQWlDLENBQUMsa0JBQWtCLEVBQ3BELGtDQUFrQyxDQUFDLGNBQWM7RUFDbkQsV0FBVyxFQUFFLE1BQU07RUFDbkIsVUFBVSxFQUFFLE1BQU07O0NBR3BCLEFBQUEsQUFBQSxLQUFDLEVBQU8sT0FBTyxBQUFkLElBQWlCLEFBQUEsS0FBQyxFQUFPLFFBQVEsQUFBZixFQUFpQjtFQUNsQyxxRkFBcUYsRUFjdEY7R0FmRCxBQUFBLEFBRUUsS0FGRCxFQUFPLE9BQU8sQUFBZCxDQUVFLE9BQU8sR0FGVixBQUFBLEtBQUMsRUFBTyxPQUFPLEFBQWQsQ0FFWSxNQUFNLEdBRkQsQUFBQSxLQUFDLEVBQU8s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LElBQUksR0FDaEI7RUFDRCxBQUFBLFlBQVksQ0FBTztJQUNqQixJQUFJLEVBQUUsUUFBUTtJQUNkLEtBQUssRUFBRSxJQUFJO0lBQ1gsU0FBUyxFQUFFLElBQUksR0FDaEI7RUFHQyxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUE0QjtJQUl0QyxTQUFTLEVBQUUsUUFBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUE0QjtJQUl0QyxTQUFTLEVBQUUsU0FBNEIsR0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FB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 */
