@charset "UTF-8";

/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */

html {
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

figcaption,
figure,
main {
  display: block;
}

figure {
  margin: 1em 40px;
}

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

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

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

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

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: inherit;
}

b,
strong {
  font-weight: bolder;
}

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

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

audio,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

img {
  border-style: none;
}

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

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

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 {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

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

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

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

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

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

details,
menu {
  display: block;
}

summary {
  display: list-item;
}

canvas {
  display: inline-block;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

@media print {
  *,
  *::before,
  *::after,
  p::first-letter,
  div::first-letter,
  blockquote::first-letter,
  li::first-letter,
  p::first-line,
  div::first-line,
  blockquote::first-line,
  li::first-line {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a,
  a:visited {
    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;
  }

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

html {
  box-sizing: border-box;
}

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

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

html {
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body {
  font-family: "Roboto", sans-serif;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #707070;
  background-color: #f3f3f3;
}

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

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

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

abbr[title],
abbr[data-original-title] {
  cursor: help;
}

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

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

blockquote {
  margin: 0 0 1rem;
}

a {
  color: #03A9F4;
  text-decoration: none;
}

a:focus,
a:hover {
  color: #0275a8;
  text-decoration: none;
}

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

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

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

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

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
}

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

a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

table {
  border-collapse: collapse;
  background-color: transparent;
}

caption {
  padding-top: 1rem 1.5rem;
  padding-bottom: 1rem 1.5rem;
  color: #4f5861;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: left;
}

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

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

input,
button,
select,
textarea {
  line-height: inherit;
}

input[type="radio"]:disabled,
input[type="checkbox"]:disabled {
  cursor: not-allowed;
}

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

textarea {
  resize: vertical;
}

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

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

input[type="search"] {
  -webkit-appearance: none;
}

output {
  display: inline-block;
}

[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.1;
  color: #333;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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: 5px;
}

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

.blockquote {
  padding: 0.5rem 1rem;
  margin-bottom: 1rem;
  font-size: 1.25rem;
  border-left: 0.25rem solid #f6f6f6;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #636c72;
}

.blockquote-footer::before {
  content: "\2014 \00A0";
}

.blockquote-reverse {
  padding-right: 1rem;
  padding-left: 0;
  text-align: right;
  border-right: 0.25rem solid #f6f6f6;
  border-left: 0;
}

.blockquote-reverse .blockquote-footer::before {
  content: "";
}

.blockquote-reverse .blockquote-footer::after {
  content: "\00A0 \2014";
}

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: #f3f3f3;
  border: 1px solid #ddd;
  border-radius: 2px;
  transition: all 0.2s ease-in-out;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

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

.figure-caption {
  font-size: 90%;
  color: #636c72;
}

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

code {
  padding: 0.2rem 0.4rem;
  font-size: 90%;
  color: #bd4147;
  background-color: #f7f7f9;
  border-radius: 2px;
}

a > code {
  padding: 0;
  color: inherit;
  background-color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 90%;
  color: #FFFFFF;
  background-color: #292b2c;
  border-radius: 2px;
  box-shadow: inset 0 -0.1rem 0 rgba(0, 0, 0, 0.25);
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 500;
  box-shadow: none;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 90%;
  color: #FFFFFF;
}

pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
  border-radius: 0;
}

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

.container {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 576px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 768px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 992px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 1200px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

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

@media (min-width: 768px) {
  .container {
    width: 720px;
    max-width: 100%;
  }
}

@media (min-width: 992px) {
  .container {
    width: 960px;
    max-width: 100%;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 1140px;
    max-width: 100%;
  }
}

.container-fluid {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 576px) {
  .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 768px) {
  .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 992px) {
  .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 1200px) {
  .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
  }
}

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

@media (min-width: 576px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

@media (min-width: 768px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

@media (min-width: 992px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

@media (min-width: 1200px) {
  .row {
    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-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-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-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-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 {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 576px) {
  .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-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-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-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-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 {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 768px) {
  .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-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-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-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-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 {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 992px) {
  .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-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-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-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-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 {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 1200px) {
  .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-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-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-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-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 {
    padding-right: 15px;
    padding-left: 15px;
  }
}

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

.col-auto {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  width: auto;
}

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

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

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

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

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

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

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

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

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

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

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

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

.pull-0 {
  right: auto;
}

.pull-1 {
  right: 8.33333333%;
}

.pull-2 {
  right: 16.66666667%;
}

.pull-3 {
  right: 25%;
}

.pull-4 {
  right: 33.33333333%;
}

.pull-5 {
  right: 41.66666667%;
}

.pull-6 {
  right: 50%;
}

.pull-7 {
  right: 58.33333333%;
}

.pull-8 {
  right: 66.66666667%;
}

.pull-9 {
  right: 75%;
}

.pull-10 {
  right: 83.33333333%;
}

.pull-11 {
  right: 91.66666667%;
}

.pull-12 {
  right: 100%;
}

.push-0 {
  left: auto;
}

.push-1 {
  left: 8.33333333%;
}

.push-2 {
  left: 16.66666667%;
}

.push-3 {
  left: 25%;
}

.push-4 {
  left: 33.33333333%;
}

.push-5 {
  left: 41.66666667%;
}

.push-6 {
  left: 50%;
}

.push-7 {
  left: 58.33333333%;
}

.push-8 {
  left: 66.66666667%;
}

.push-9 {
  left: 75%;
}

.push-10 {
  left: 83.33333333%;
}

.push-11 {
  left: 91.66666667%;
}

.push-12 {
  left: 100%;
}

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-positive: 1;
        flex-grow: 1;
    max-width: 100%;
  }

  .col-sm-auto {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    width: auto;
  }

  .col-sm-1 {
    -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-sm-2 {
    -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

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

  .col-sm-4 {
    -ms-flex: 0 0 33.33333333%;
        flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-sm-5 {
    -ms-flex: 0 0 41.66666667%;
        flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

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

  .col-sm-7 {
    -ms-flex: 0 0 58.33333333%;
        flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-sm-8 {
    -ms-flex: 0 0 66.66666667%;
        flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

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

  .col-sm-10 {
    -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-sm-11 {
    -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

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

  .pull-sm-0 {
    right: auto;
  }

  .pull-sm-1 {
    right: 8.33333333%;
  }

  .pull-sm-2 {
    right: 16.66666667%;
  }

  .pull-sm-3 {
    right: 25%;
  }

  .pull-sm-4 {
    right: 33.33333333%;
  }

  .pull-sm-5 {
    right: 41.66666667%;
  }

  .pull-sm-6 {
    right: 50%;
  }

  .pull-sm-7 {
    right: 58.33333333%;
  }

  .pull-sm-8 {
    right: 66.66666667%;
  }

  .pull-sm-9 {
    right: 75%;
  }

  .pull-sm-10 {
    right: 83.33333333%;
  }

  .pull-sm-11 {
    right: 91.66666667%;
  }

  .pull-sm-12 {
    right: 100%;
  }

  .push-sm-0 {
    left: auto;
  }

  .push-sm-1 {
    left: 8.33333333%;
  }

  .push-sm-2 {
    left: 16.66666667%;
  }

  .push-sm-3 {
    left: 25%;
  }

  .push-sm-4 {
    left: 33.33333333%;
  }

  .push-sm-5 {
    left: 41.66666667%;
  }

  .push-sm-6 {
    left: 50%;
  }

  .push-sm-7 {
    left: 58.33333333%;
  }

  .push-sm-8 {
    left: 66.66666667%;
  }

  .push-sm-9 {
    left: 75%;
  }

  .push-sm-10 {
    left: 83.33333333%;
  }

  .push-sm-11 {
    left: 91.66666667%;
  }

  .push-sm-12 {
    left: 100%;
  }

  .offset-sm-0 {
    margin-left: 0%;
  }

  .offset-sm-1 {
    margin-left: 8.33333333%;
  }

  .offset-sm-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-sm-4 {
    margin-left: 33.33333333%;
  }

  .offset-sm-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-sm-7 {
    margin-left: 58.33333333%;
  }

  .offset-sm-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-sm-10 {
    margin-left: 83.33333333%;
  }

  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
}

@media (min-width: 768px) {
  .col-md {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-positive: 1;
        flex-grow: 1;
    max-width: 100%;
  }

  .col-md-auto {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    width: auto;
  }

  .col-md-1 {
    -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-md-2 {
    -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

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

  .col-md-4 {
    -ms-flex: 0 0 33.33333333%;
        flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-md-5 {
    -ms-flex: 0 0 41.66666667%;
        flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

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

  .col-md-7 {
    -ms-flex: 0 0 58.33333333%;
        flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-md-8 {
    -ms-flex: 0 0 66.66666667%;
        flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

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

  .col-md-10 {
    -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-md-11 {
    -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

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

  .pull-md-0 {
    right: auto;
  }

  .pull-md-1 {
    right: 8.33333333%;
  }

  .pull-md-2 {
    right: 16.66666667%;
  }

  .pull-md-3 {
    right: 25%;
  }

  .pull-md-4 {
    right: 33.33333333%;
  }

  .pull-md-5 {
    right: 41.66666667%;
  }

  .pull-md-6 {
    right: 50%;
  }

  .pull-md-7 {
    right: 58.33333333%;
  }

  .pull-md-8 {
    right: 66.66666667%;
  }

  .pull-md-9 {
    right: 75%;
  }

  .pull-md-10 {
    right: 83.33333333%;
  }

  .pull-md-11 {
    right: 91.66666667%;
  }

  .pull-md-12 {
    right: 100%;
  }

  .push-md-0 {
    left: auto;
  }

  .push-md-1 {
    left: 8.33333333%;
  }

  .push-md-2 {
    left: 16.66666667%;
  }

  .push-md-3 {
    left: 25%;
  }

  .push-md-4 {
    left: 33.33333333%;
  }

  .push-md-5 {
    left: 41.66666667%;
  }

  .push-md-6 {
    left: 50%;
  }

  .push-md-7 {
    left: 58.33333333%;
  }

  .push-md-8 {
    left: 66.66666667%;
  }

  .push-md-9 {
    left: 75%;
  }

  .push-md-10 {
    left: 83.33333333%;
  }

  .push-md-11 {
    left: 91.66666667%;
  }

  .push-md-12 {
    left: 100%;
  }

  .offset-md-0 {
    margin-left: 0%;
  }

  .offset-md-1 {
    margin-left: 8.33333333%;
  }

  .offset-md-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-md-4 {
    margin-left: 33.33333333%;
  }

  .offset-md-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-md-7 {
    margin-left: 58.33333333%;
  }

  .offset-md-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-md-10 {
    margin-left: 83.33333333%;
  }

  .offset-md-11 {
    margin-left: 91.66666667%;
  }
}

@media (min-width: 992px) {
  .col-lg {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-positive: 1;
        flex-grow: 1;
    max-width: 100%;
  }

  .col-lg-auto {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    width: auto;
  }

  .col-lg-1 {
    -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-lg-2 {
    -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

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

  .col-lg-4 {
    -ms-flex: 0 0 33.33333333%;
        flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-lg-5 {
    -ms-flex: 0 0 41.66666667%;
        flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

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

  .col-lg-7 {
    -ms-flex: 0 0 58.33333333%;
        flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-lg-8 {
    -ms-flex: 0 0 66.66666667%;
        flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

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

  .col-lg-10 {
    -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-lg-11 {
    -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

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

  .pull-lg-0 {
    right: auto;
  }

  .pull-lg-1 {
    right: 8.33333333%;
  }

  .pull-lg-2 {
    right: 16.66666667%;
  }

  .pull-lg-3 {
    right: 25%;
  }

  .pull-lg-4 {
    right: 33.33333333%;
  }

  .pull-lg-5 {
    right: 41.66666667%;
  }

  .pull-lg-6 {
    right: 50%;
  }

  .pull-lg-7 {
    right: 58.33333333%;
  }

  .pull-lg-8 {
    right: 66.66666667%;
  }

  .pull-lg-9 {
    right: 75%;
  }

  .pull-lg-10 {
    right: 83.33333333%;
  }

  .pull-lg-11 {
    right: 91.66666667%;
  }

  .pull-lg-12 {
    right: 100%;
  }

  .push-lg-0 {
    left: auto;
  }

  .push-lg-1 {
    left: 8.33333333%;
  }

  .push-lg-2 {
    left: 16.66666667%;
  }

  .push-lg-3 {
    left: 25%;
  }

  .push-lg-4 {
    left: 33.33333333%;
  }

  .push-lg-5 {
    left: 41.66666667%;
  }

  .push-lg-6 {
    left: 50%;
  }

  .push-lg-7 {
    left: 58.33333333%;
  }

  .push-lg-8 {
    left: 66.66666667%;
  }

  .push-lg-9 {
    left: 75%;
  }

  .push-lg-10 {
    left: 83.33333333%;
  }

  .push-lg-11 {
    left: 91.66666667%;
  }

  .push-lg-12 {
    left: 100%;
  }

  .offset-lg-0 {
    margin-left: 0%;
  }

  .offset-lg-1 {
    margin-left: 8.33333333%;
  }

  .offset-lg-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-lg-4 {
    margin-left: 33.33333333%;
  }

  .offset-lg-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-lg-7 {
    margin-left: 58.33333333%;
  }

  .offset-lg-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-lg-10 {
    margin-left: 83.33333333%;
  }

  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-positive: 1;
        flex-grow: 1;
    max-width: 100%;
  }

  .col-xl-auto {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    width: auto;
  }

  .col-xl-1 {
    -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-xl-2 {
    -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

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

  .col-xl-4 {
    -ms-flex: 0 0 33.33333333%;
        flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-xl-5 {
    -ms-flex: 0 0 41.66666667%;
        flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

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

  .col-xl-7 {
    -ms-flex: 0 0 58.33333333%;
        flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-xl-8 {
    -ms-flex: 0 0 66.66666667%;
        flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

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

  .col-xl-10 {
    -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-xl-11 {
    -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

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

  .pull-xl-0 {
    right: auto;
  }

  .pull-xl-1 {
    right: 8.33333333%;
  }

  .pull-xl-2 {
    right: 16.66666667%;
  }

  .pull-xl-3 {
    right: 25%;
  }

  .pull-xl-4 {
    right: 33.33333333%;
  }

  .pull-xl-5 {
    right: 41.66666667%;
  }

  .pull-xl-6 {
    right: 50%;
  }

  .pull-xl-7 {
    right: 58.33333333%;
  }

  .pull-xl-8 {
    right: 66.66666667%;
  }

  .pull-xl-9 {
    right: 75%;
  }

  .pull-xl-10 {
    right: 83.33333333%;
  }

  .pull-xl-11 {
    right: 91.66666667%;
  }

  .pull-xl-12 {
    right: 100%;
  }

  .push-xl-0 {
    left: auto;
  }

  .push-xl-1 {
    left: 8.33333333%;
  }

  .push-xl-2 {
    left: 16.66666667%;
  }

  .push-xl-3 {
    left: 25%;
  }

  .push-xl-4 {
    left: 33.33333333%;
  }

  .push-xl-5 {
    left: 41.66666667%;
  }

  .push-xl-6 {
    left: 50%;
  }

  .push-xl-7 {
    left: 58.33333333%;
  }

  .push-xl-8 {
    left: 66.66666667%;
  }

  .push-xl-9 {
    left: 75%;
  }

  .push-xl-10 {
    left: 83.33333333%;
  }

  .push-xl-11 {
    left: 91.66666667%;
  }

  .push-xl-12 {
    left: 100%;
  }

  .offset-xl-0 {
    margin-left: 0%;
  }

  .offset-xl-1 {
    margin-left: 8.33333333%;
  }

  .offset-xl-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-xl-4 {
    margin-left: 33.33333333%;
  }

  .offset-xl-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-xl-7 {
    margin-left: 58.33333333%;
  }

  .offset-xl-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-xl-10 {
    margin-left: 83.33333333%;
  }

  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
}

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1rem;
}

.table th,
.table td {
  padding: 1rem 1.5rem;
  vertical-align: top;
  border-top: 1px solid #f2f2f2;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #f2f2f2;
}

.table tbody + tbody {
  border-top: 2px solid #f2f2f2;
}

.table .table {
  background-color: #f3f3f3;
}

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

.table-bordered {
  border: 1px solid #f2f2f2;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #f2f2f2;
}

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

.table-striped tbody tr:nth-of-type(odd) {
  background-color: #f2f2f2;
}

.table-hover tbody tr:hover {
  background-color: #f2f2f2;
}

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

.table-hover .table-active:hover {
  background-color: #e5e5e5;
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: #e5e5e5;
}

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

.table-hover .table-success:hover {
  background-color: #43d093;
}

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

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

.table-hover .table-info:hover {
  background-color: #14b4fc;
}

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

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

.table-hover .table-warning:hover {
  background-color: #ffc107;
}

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

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

.table-hover .table-danger:hover {
  background-color: #ff5652;
}

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

.thead-inverse th {
  color: #f3f3f3;
  background-color: #404c54;
}

.thead-default th {
  color: #464a4c;
  background-color: #fbfbfb;
}

.table-inverse {
  color: #f3f3f3;
  background-color: #404c54;
}

.table-inverse th,
.table-inverse td,
.table-inverse thead th {
  border-color: #f3f3f3;
}

.table-inverse.table-bordered {
  border: 0;
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.table-responsive.table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.65rem 0.1rem;
  font-size: 1rem;
  line-height: 1.25;
  color: #464a4c;
  background-color: transparent;
  background-image: none;
  background-clip: padding-box;
  border: 1px solid #f1f1f1;
  border-radius: 0;
  box-shadow: rgba(0, 0, 0, 0);
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:focus {
  color: #464a4c;
  background-color: transparent;
  border-color: #f1f1f1;
  outline: none;
  box-shadow: rgba(0, 0, 0, 0), rgba(241, 241, 241, 0.6);
}

.form-control:-ms-input-placeholder {
  color: #636c72;
  opacity: 1;
}

.form-control::placeholder {
  color: #636c72;
  opacity: 1;
}

.form-control:disabled,
.form-control[readonly] {
  background-color: transparent;
  opacity: 1;
}

.form-control:disabled {
  cursor: not-allowed;
}

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

select.form-control:focus::-ms-value {
  color: #464a4c;
  background-color: transparent;
}

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

.col-form-label {
  padding-top: calc(0.65rem - 1px * 2);
  padding-bottom: calc(0.65rem - 1px * 2);
  margin-bottom: 0;
}

.col-form-label-lg {
  padding-top: calc(0.75rem - 1px * 2);
  padding-bottom: calc(0.75rem - 1px * 2);
  font-size: 1.25rem;
}

.col-form-label-sm {
  padding-top: calc(0.5rem - 1px * 2);
  padding-bottom: calc(0.5rem - 1px * 2);
  font-size: 0.875rem;
}

.col-form-legend {
  padding-top: 0.65rem;
  padding-bottom: 0.65rem;
  margin-bottom: 0;
  font-size: 1rem;
}

.form-control-static {
  padding-top: 0.65rem;
  padding-bottom: 0.65rem;
  margin-bottom: 0;
  line-height: 1.25;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-static.form-control-sm,
.input-group-sm > .form-control-static.form-control,
.input-group-sm > .form-control-static.input-group-addon,
.input-group-sm > .input-group-btn > .form-control-static.btn,
.form-control-static.form-control-lg,
.input-group-lg > .form-control-static.form-control,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm,
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  padding: 0.5rem 0.1rem;
  font-size: 0.875rem;
  border-radius: 0;
}

select.form-control-sm:not([size]):not([multiple]),
.input-group-sm > select.form-control:not([size]):not([multiple]),
.input-group-sm > select.input-group-addon:not([size]):not([multiple]),
.input-group-sm > .input-group-btn > select.btn:not([size]):not([multiple]) {
  height: 2.3125rem;
}

.form-control-lg,
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  padding: 0.75rem 0.1rem;
  font-size: 1.25rem;
  border-radius: 0;
}

select.form-control-lg:not([size]):not([multiple]),
.input-group-lg > select.form-control:not([size]):not([multiple]),
.input-group-lg > select.input-group-addon:not([size]):not([multiple]),
.input-group-lg > .input-group-btn > select.btn:not([size]):not([multiple]) {
  height: 3.16666667rem;
}

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

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

.form-check {
  position: relative;
  display: block;
  margin-bottom: 0.5rem;
}

.form-check.disabled .form-check-label {
  color: #4f5861;
  cursor: not-allowed;
}

.form-check-label {
  padding-left: 1.25rem;
  margin-bottom: 0;
  cursor: pointer;
}

.form-check-input {
  position: absolute;
  margin-top: 0.25rem;
  margin-left: -1.25rem;
}

.form-check-input:only-child {
  position: static;
}

.form-check-inline {
  display: inline-block;
}

.form-check-inline .form-check-label {
  vertical-align: middle;
}

.form-check-inline + .form-check-inline {
  margin-left: 0.75rem;
}

.form-control-feedback {
  margin-top: 0.25rem;
}

.form-control-success,
.form-control-warning,
.form-control-danger {
  padding-right: 0.3rem;
  background-repeat: no-repeat;
  background-position: center right 0.6375rem;
  background-size: 1.275rem 1.275rem;
}

.has-success .form-control-feedback,
.has-success .form-control-label,
.has-success .col-form-label,
.has-success .form-check-label,
.has-success .custom-control {
  color: #32c787;
}

.has-success .form-control {
  border-color: #32c787;
}

.has-success .form-control:focus {
  box-shadow: rgba(0, 0, 0, 0), 0 0 6px #80dfb6;
}

.has-success .input-group-addon {
  color: #32c787;
  border-color: #32c787;
  background-color: #d1f4e5;
}

.has-success .form-control-success {
  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='%2332c787' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");
}

.has-warning .form-control-feedback,
.has-warning .form-control-label,
.has-warning .col-form-label,
.has-warning .form-check-label,
.has-warning .custom-control {
  color: #ffc107;
}

.has-warning .form-control {
  border-color: #ffc107;
}

.has-warning .form-control:focus {
  box-shadow: rgba(0, 0, 0, 0), 0 0 6px #ffdb6d;
}

.has-warning .input-group-addon {
  color: #ffc107;
  border-color: #ffc107;
  background-color: #fff4d3;
}

.has-warning .form-control-warning {
  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='%23ffc107' d='M4.4 5.324h-.8v-2.46h.8zm0 1.42h-.8V5.89h.8zM3.76.63L.04 7.075c-.115.2.016.425.26.426h7.397c.242 0 .372-.226.258-.426C6.726 4.924 5.47 2.79 4.253.63c-.113-.174-.39-.174-.494 0z'/%3E%3C/svg%3E");
}

.has-danger .form-control-feedback,
.has-danger .form-control-label,
.has-danger .col-form-label,
.has-danger .form-check-label,
.has-danger .custom-control {
  color: #ff5652;
}

.has-danger .form-control {
  border-color: #ff5652;
}

.has-danger .form-control:focus {
  box-shadow: rgba(0, 0, 0, 0), 0 0 6px #ffbab8;
}

.has-danger .input-group-addon {
  color: #ff5652;
  border-color: #ff5652;
  background-color: white;
}

.has-danger .form-control-danger {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23ff5652' viewBox='-2 -2 7 7'%3E%3Cpath stroke='%23d9534f' d='M0 0l3 3m0-3L0 3'/%3E%3Ccircle r='.5'/%3E%3Ccircle cx='3' r='.5'/%3E%3Ccircle cy='3' r='.5'/%3E%3Ccircle cx='3' cy='3' r='.5'/%3E%3C/svg%3E");
}

.form-inline {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-align: center;
      align-items: center;
}

.form-inline .form-check {
  width: 100%;
}

@media (min-width: 576px) {
  .form-inline label {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    margin-bottom: 0;
  }

  .form-inline .form-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-align: center;
        align-items: center;
    margin-bottom: 0;
  }

  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }

  .form-inline .form-control-static {
    display: inline-block;
  }

  .form-inline .input-group {
    width: auto;
  }

  .form-inline .form-control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }

  .form-inline .form-check {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    width: auto;
    margin-top: 0;
    margin-bottom: 0;
  }

  .form-inline .form-check-label {
    padding-left: 0;
  }

  .form-inline .form-check-input {
    position: relative;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }

  .form-inline .custom-control {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    padding-left: 0;
  }

  .form-inline .custom-control-indicator {
    position: static;
    display: inline-block;
    margin-right: 0.25rem;
    vertical-align: text-bottom;
  }

  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: normal;
  line-height: 100%;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border: 1px solid transparent;
  padding: 0.6rem 1rem;
  font-size: 1rem;
  border-radius: 2px;
  transition: all 0.2s ease-in-out;
}

.btn:focus,
.btn:hover {
  text-decoration: none;
}

.btn:focus,
.btn.focus {
  outline: 0;
  box-shadow: none;
}

.btn.disabled,
.btn:disabled {
  cursor: not-allowed;
  opacity: .65;
  box-shadow: none;
}

.btn:active,
.btn.active {
  background-image: none;
  box-shadow: none, none;
}

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

.btn-primary {
  background-color: #2196F3;
  border-color: #2196F3;
}

.btn-primary,
.btn-primary:focus {
  color: #FFFFFF;
}

.btn-primary:hover {
  color: #FFFFFF;
  background-color: #128ff2;
  border-color: #128ff2;
}

.btn-primary.disabled,
.btn-primary:disabled {
  background-color: #2196F3;
  border-color: #2196F3;
}

.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  color: #FFFFFF;
  background-color: #128ff2;
  background-image: none;
  border-color: #128ff2;
}

.btn-secondary {
  background-color: #FFFFFF;
  border-color: #efefef;
}

.btn-secondary,
.btn-secondary:focus {
  color: #292b2c;
}

.btn-secondary:hover {
  color: #292b2c;
  background-color: #f7f7f7;
  border-color: #e7e7e7;
}

.btn-secondary.disabled,
.btn-secondary:disabled {
  background-color: #FFFFFF;
  border-color: #efefef;
}

.btn-secondary:active,
.btn-secondary.active,
.show > .btn-secondary.dropdown-toggle {
  color: #292b2c;
  background-color: #f7f7f7;
  background-image: none;
  border-color: #e7e7e7;
}

.btn-info {
  background-color: #00BCD4;
  border-color: #00BCD4;
}

.btn-info,
.btn-info:focus {
  color: #FFFFFF;
}

.btn-info:hover {
  color: #FFFFFF;
  background-color: #00aec5;
  border-color: #00aec5;
}

.btn-info.disabled,
.btn-info:disabled {
  background-color: #00BCD4;
  border-color: #00BCD4;
}

.btn-info:active,
.btn-info.active,
.show > .btn-info.dropdown-toggle {
  color: #FFFFFF;
  background-color: #00aec5;
  background-image: none;
  border-color: #00aec5;
}

.btn-success {
  background-color: #32c787;
  border-color: #32c787;
}

.btn-success,
.btn-success:focus {
  color: #FFFFFF;
}

.btn-success:hover {
  color: #FFFFFF;
  background-color: #2fbb7f;
  border-color: #2fbb7f;
}

.btn-success.disabled,
.btn-success:disabled {
  background-color: #32c787;
  border-color: #32c787;
}

.btn-success:active,
.btn-success.active,
.show > .btn-success.dropdown-toggle {
  color: #FFFFFF;
  background-color: #2fbb7f;
  background-image: none;
  border-color: #2fbb7f;
}

.btn-warning {
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning,
.btn-warning:focus {
  color: #FFFFFF;
}

.btn-warning:hover {
  color: #FFFFFF;
  background-color: #f7b900;
  border-color: #f7b900;
}

.btn-warning.disabled,
.btn-warning:disabled {
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:active,
.btn-warning.active,
.show > .btn-warning.dropdown-toggle {
  color: #FFFFFF;
  background-color: #f7b900;
  background-image: none;
  border-color: #f7b900;
}

.btn-danger {
  background-color: #ff5652;
  border-color: #ff5652;
}

.btn-danger,
.btn-danger:focus {
  color: #FFFFFF;
}

.btn-danger:hover {
  color: #FFFFFF;
  background-color: #ff4743;
  border-color: #ff4743;
}

.btn-danger.disabled,
.btn-danger:disabled {
  background-color: #ff5652;
  border-color: #ff5652;
}

.btn-danger:active,
.btn-danger.active,
.show > .btn-danger.dropdown-toggle {
  color: #FFFFFF;
  background-color: #ff4743;
  background-image: none;
  border-color: #ff4743;
}

.btn-outline-primary {
  color: #2196F3;
  background-image: none;
  background-color: transparent;
  border-color: #2196F3;
}

.btn-outline-primary:hover {
  color: #FFFFFF;
  background-color: #2196F3;
  border-color: #2196F3;
}

.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
  color: #2196F3;
  background-color: transparent;
}

.btn-outline-primary:active,
.btn-outline-primary.active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #FFFFFF;
  background-color: #2196F3;
  border-color: #2196F3;
}

.btn-outline-secondary {
  color: #efefef;
  background-image: none;
  background-color: transparent;
  border-color: #efefef;
}

.btn-outline-secondary:hover {
  color: #FFFFFF;
  background-color: #efefef;
  border-color: #efefef;
}

.btn-outline-secondary.disabled,
.btn-outline-secondary:disabled {
  color: #efefef;
  background-color: transparent;
}

.btn-outline-secondary:active,
.btn-outline-secondary.active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #FFFFFF;
  background-color: #efefef;
  border-color: #efefef;
}

.btn-outline-info {
  color: #00BCD4;
  background-image: none;
  background-color: transparent;
  border-color: #00BCD4;
}

.btn-outline-info:hover {
  color: #FFFFFF;
  background-color: #00BCD4;
  border-color: #00BCD4;
}

.btn-outline-info.disabled,
.btn-outline-info:disabled {
  color: #00BCD4;
  background-color: transparent;
}

.btn-outline-info:active,
.btn-outline-info.active,
.show > .btn-outline-info.dropdown-toggle {
  color: #FFFFFF;
  background-color: #00BCD4;
  border-color: #00BCD4;
}

.btn-outline-success {
  color: #32c787;
  background-image: none;
  background-color: transparent;
  border-color: #32c787;
}

.btn-outline-success:hover {
  color: #FFFFFF;
  background-color: #32c787;
  border-color: #32c787;
}

.btn-outline-success.disabled,
.btn-outline-success:disabled {
  color: #32c787;
  background-color: transparent;
}

.btn-outline-success:active,
.btn-outline-success.active,
.show > .btn-outline-success.dropdown-toggle {
  color: #FFFFFF;
  background-color: #32c787;
  border-color: #32c787;
}

.btn-outline-warning {
  color: #ffc107;
  background-image: none;
  background-color: transparent;
  border-color: #ffc107;
}

.btn-outline-warning:hover {
  color: #FFFFFF;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning.disabled,
.btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-warning:active,
.btn-outline-warning.active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #FFFFFF;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-danger {
  color: #ff5652;
  background-image: none;
  background-color: transparent;
  border-color: #ff5652;
}

.btn-outline-danger:hover {
  color: #FFFFFF;
  background-color: #ff5652;
  border-color: #ff5652;
}

.btn-outline-danger.disabled,
.btn-outline-danger:disabled {
  color: #ff5652;
  background-color: transparent;
}

.btn-outline-danger:active,
.btn-outline-danger.active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #FFFFFF;
  background-color: #ff5652;
  border-color: #ff5652;
}

.btn-link {
  font-weight: normal;
  color: #03A9F4;
  border-radius: 0;
}

.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link:disabled {
  background-color: transparent;
  box-shadow: none;
}

.btn-link,
.btn-link:focus,
.btn-link:active {
  border-color: transparent;
}

.btn-link:hover {
  border-color: transparent;
}

.btn-link:focus,
.btn-link:hover {
  color: #0275a8;
  text-decoration: none;
  background-color: transparent;
}

.btn-link:disabled {
  color: #636c72;
}

.btn-link:disabled:focus,
.btn-link:disabled:hover {
  text-decoration: none;
}

.btn-lg,
.btn-group-lg > .btn {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  border-radius: 2px;
}

.btn-sm,
.btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 2px;
}

.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.3em;
  vertical-align: middle;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-left: 0.3em solid transparent;
}

.dropdown-toggle:focus {
  outline: 0;
}

.dropup .dropdown-toggle::after {
  border-top: 0;
  border-bottom: 0.3em solid;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.8rem 0;
  margin: 0 0 0;
  font-size: 1rem;
  color: #707070;
  text-align: left;
  list-style: none;
  background-color: #FFFFFF;
  background-clip: padding-box;
  border: 0 solid transparent;
  border-radius: 2px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.075);
}

.dropdown-divider {
  height: 1px;
  margin: 0.5rem 0;
  overflow: hidden;
  background-color: #f6f6f6;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 3px 1.5rem;
  clear: both;
  font-weight: normal;
  color: #4C4C4C;
  text-align: inherit;
  white-space: nowrap;
  background: none;
  border: 0;
}

.dropdown-item:focus,
.dropdown-item:hover {
  color: #1d1e1f;
  text-decoration: none;
  background-color: #f7f7f9;
}

.dropdown-item.active,
.dropdown-item:active {
  color: #4C4C4C;
  text-decoration: none;
  background-color: #eeeeee;
}

.dropdown-item.disabled,
.dropdown-item:disabled {
  color: #636c72;
  cursor: not-allowed;
  background-color: transparent;
}

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

.show > a {
  outline: 0;
}

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

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

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

.dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990;
}

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

.btn-group,
.btn-group-vertical {
  position: relative;
  display: -ms-inline-flexbox;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  -ms-flex: 0 1 auto;
      flex: 0 1 auto;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 2;
}

.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group,
.btn-group-vertical .btn + .btn,
.btn-group-vertical .btn + .btn-group,
.btn-group-vertical .btn-group + .btn,
.btn-group-vertical .btn-group + .btn-group {
  margin-left: -1px;
}

.btn-toolbar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}

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

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

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

.btn-group > .btn-group {
  float: left;
}

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

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

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

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}

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

.btn + .dropdown-toggle-split::after {
  margin-left: 0;
}

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

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

.btn-group.open .dropdown-toggle {
  box-shadow: none;
}

.btn-group.open .dropdown-toggle.btn-link {
  box-shadow: none;
}

.btn-group-vertical {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: center;
      justify-content: center;
}

.btn-group-vertical .btn,
.btn-group-vertical .btn-group {
  width: 100%;
}

.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

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

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

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

.input-group {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.input-group .form-control {
  position: relative;
  z-index: 2;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}

.input-group .form-control:focus,
.input-group .form-control:active,
.input-group .form-control:hover {
  z-index: 3;
}

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
}

.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.input-group-addon,
.input-group-btn {
  white-space: nowrap;
  vertical-align: middle;
}

.input-group-addon {
  padding: 0.65rem 0.1rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.25;
  color: #464a4c;
  text-align: center;
  background-color: transparent;
  border: 1px solid #f1f1f1;
  border-radius: 0;
}

.input-group-addon.form-control-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
  padding: 0.5rem 0.1rem;
  font-size: 0.875rem;
  border-radius: 0;
}

.input-group-addon.form-control-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
  padding: 0.75rem 0.1rem;
  font-size: 1.25rem;
  border-radius: 0;
}

.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}

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

.input-group-addon:not(:last-child) {
  border-right: 0;
}

.input-group .form-control:not(:first-child),
.input-group-addon:not(:first-child),
.input-group-btn:not(:first-child) > .btn,
.input-group-btn:not(:first-child) > .btn-group > .btn,
.input-group-btn:not(:first-child) > .dropdown-toggle,
.input-group-btn:not(:last-child) > .btn:not(:first-child),
.input-group-btn:not(:last-child) > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.form-control + .input-group-addon:not(:first-child) {
  border-left: 0;
}

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}

.input-group-btn > .btn {
  position: relative;
  -ms-flex: 1;
      flex: 1;
}

.input-group-btn > .btn + .btn {
  margin-left: -1px;
}

.input-group-btn > .btn:focus,
.input-group-btn > .btn:active,
.input-group-btn > .btn:hover {
  z-index: 3;
}

.input-group-btn:not(:last-child) > .btn,
.input-group-btn:not(:last-child) > .btn-group {
  margin-right: -1px;
}

.input-group-btn:not(:first-child) > .btn,
.input-group-btn:not(:first-child) > .btn-group {
  z-index: 2;
  margin-left: -1px;
}

.input-group-btn:not(:first-child) > .btn:focus,
.input-group-btn:not(:first-child) > .btn:active,
.input-group-btn:not(:first-child) > .btn:hover,
.input-group-btn:not(:first-child) > .btn-group:focus,
.input-group-btn:not(:first-child) > .btn-group:active,
.input-group-btn:not(:first-child) > .btn-group:hover {
  z-index: 3;
}

.custom-control {
  position: relative;
  display: -ms-inline-flexbox;
  display: inline-flex;
  min-height: 1.5rem;
  padding-left: 2rem;
  margin-right: 1rem;
  cursor: pointer;
}

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-indicator {
  color: #FFFFFF;
  background-color: transparent;
  box-shadow: none;
}

.custom-control-input:focus ~ .custom-control-indicator {
  box-shadow: none;
}

.custom-control-input:active ~ .custom-control-indicator {
  color: #FFFFFF;
  background-color: transparent;
  box-shadow: none;
}

.custom-control-input:disabled ~ .custom-control-indicator {
  cursor: not-allowed;
  background-color: transparent;
}

.custom-control-input:disabled ~ .custom-control-description {
  color: #636c72;
  cursor: not-allowed;
}

.custom-control-indicator {
  position: absolute;
  top: 0.096rem;
  left: 0;
  display: block;
  width: 1.308rem;
  height: 1.308rem;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50% 50%;
  box-shadow: none;
}

.custom-checkbox .custom-control-indicator {
  border-radius: 2px;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-indicator {
  background-image: none;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-indicator {
  background-color: #2196F3;
  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='%23FFFFFF' d='M0 2h4'/%3E%3C/svg%3E");
  box-shadow: none;
}

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

.custom-radio .custom-control-input:checked ~ .custom-control-indicator {
  background-image: none;
}

.custom-controls-stacked {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

.custom-controls-stacked .custom-control {
  margin-bottom: 0.25rem;
}

.custom-controls-stacked .custom-control + .custom-control {
  margin-left: 0;
}

.custom-select {
  display: inline-block;
  max-width: 100%;
  height: calc(2.55rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  line-height: 1.25;
  color: #464a4c;
  vertical-align: middle;
  background: #FFFFFF url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23333' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center;
  background-size: 8px 10px;
  border: 1px solid #f1f1f1;
  border-radius: 2px;
  -moz-appearance: none;
  -webkit-appearance: none;
}

.custom-select:focus {
  border-color: #9acffa;
  outline: none;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075), 0 0 5px rgba(154, 207, 250, 0.5);
}

.custom-select:focus::-ms-value {
  color: #464a4c;
  background-color: transparent;
}

.custom-select:disabled {
  color: #636c72;
  cursor: not-allowed;
  background-color: #f6f6f6;
}

.custom-select::-ms-expand {
  opacity: 0;
}

.custom-select-sm {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  font-size: 75%;
}

.custom-file {
  position: relative;
  display: inline-block;
  max-width: 100%;
  height: 2.5rem;
  margin-bottom: 0;
  cursor: pointer;
}

.custom-file-input {
  min-width: 14rem;
  max-width: 100%;
  height: 2.5rem;
  margin: 0;
  filter: alpha(opacity=0);
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-control {
  box-shadow: 0 0 0 0.075rem #FFFFFF, 0 0 0 0.2rem #2196F3;
}

.custom-file-control {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 5;
  height: 2.5rem;
  padding: 0.5rem 1rem;
  line-height: 1.5;
  color: #464a4c;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: #FFFFFF;
  border: 1px solid #f1f1f1;
  border-radius: 2px;
  box-shadow: inset 0 0.2rem 0.4rem rgba(0, 0, 0, 0.05);
}

.custom-file-control:lang(en)::after {
  content: "Choose file...";
}

.custom-file-control::before {
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  z-index: 6;
  display: block;
  height: 2.5rem;
  padding: 0.5rem 1rem;
  line-height: 1.5;
  color: #464a4c;
  background-color: #f6f6f6;
  border: 1px solid #f1f1f1;
  border-radius: 0 2px 2px 0;
}

.custom-file-control:lang(en)::before {
  content: "Browse";
}

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

.nav-link {
  display: block;
  padding: 1rem 1.2rem;
}

.nav-link:focus,
.nav-link:hover {
  text-decoration: none;
}

.nav-link.disabled {
  color: #636c72;
  cursor: not-allowed;
}

.nav-tabs {
  border-bottom: 2px solid #eee;
}

.nav-tabs .nav-item {
  margin-bottom: -2px;
}

.nav-tabs .nav-link {
  border: 2px solid transparent;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover {
  border-color: #f6f6f6 #f6f6f6 #eee;
}

.nav-tabs .nav-link.disabled {
  color: #636c72;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #333;
  background-color: transparent;
  border-color: #ddd #ddd transparent;
}

.nav-tabs .dropdown-menu {
  margin-top: -2px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.nav-pills .nav-link {
  border-radius: 2px;
}

.nav-pills .nav-link.active,
.nav-pills .nav-item.show .nav-link {
  color: #FFFFFF;
  cursor: default;
  background-color: #2196F3;
}

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

.nav-justified .nav-item {
  -ms-flex: 1 1 100%;
      flex: 1 1 100%;
  text-align: center;
}

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

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

.navbar {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  padding: 0.5rem 1rem;
}

.navbar-brand {
  display: inline-block;
  padding-top: .25rem;
  padding-bottom: .25rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}

.navbar-brand:focus,
.navbar-brand:hover {
  text-decoration: none;
}

.navbar-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}

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

.navbar-toggler {
  -ms-flex-item-align: start;
      align-self: flex-start;
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 2px;
}

.navbar-toggler:focus,
.navbar-toggler:hover {
  text-decoration: none;
}

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

.navbar-toggler-left {
  position: absolute;
  left: 1rem;
}

.navbar-toggler-right {
  position: absolute;
  right: 1rem;
}

@media (max-width: 575px) {
  .navbar-toggleable .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }

  .navbar-toggleable > .container {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 576px) {
  .navbar-toggleable {
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
  }

  .navbar-toggleable .navbar-nav {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .navbar-toggleable .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .navbar-toggleable > .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
  }

  .navbar-toggleable .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    width: 100%;
  }

  .navbar-toggleable .navbar-toggler {
    display: none;
  }
}

@media (max-width: 767px) {
  .navbar-toggleable-sm .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }

  .navbar-toggleable-sm > .container {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .navbar-toggleable-sm {
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
  }

  .navbar-toggleable-sm .navbar-nav {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .navbar-toggleable-sm .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .navbar-toggleable-sm > .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
  }

  .navbar-toggleable-sm .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    width: 100%;
  }

  .navbar-toggleable-sm .navbar-toggler {
    display: none;
  }
}

@media (max-width: 991px) {
  .navbar-toggleable-md .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }

  .navbar-toggleable-md > .container {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 992px) {
  .navbar-toggleable-md {
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
  }

  .navbar-toggleable-md .navbar-nav {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .navbar-toggleable-md .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .navbar-toggleable-md > .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
  }

  .navbar-toggleable-md .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    width: 100%;
  }

  .navbar-toggleable-md .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1199px) {
  .navbar-toggleable-lg .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }

  .navbar-toggleable-lg > .container {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1200px) {
  .navbar-toggleable-lg {
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
  }

  .navbar-toggleable-lg .navbar-nav {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .navbar-toggleable-lg .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .navbar-toggleable-lg > .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
  }

  .navbar-toggleable-lg .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    width: 100%;
  }

  .navbar-toggleable-lg .navbar-toggler {
    display: none;
  }
}

.navbar-toggleable-xl {
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: center;
      align-items: center;
}

.navbar-toggleable-xl .navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-toggleable-xl > .container {
  padding-right: 0;
  padding-left: 0;
}

.navbar-toggleable-xl .navbar-nav {
  -ms-flex-direction: row;
      flex-direction: row;
}

.navbar-toggleable-xl .navbar-nav .nav-link {
  padding-right: .5rem;
  padding-left: .5rem;
}

.navbar-toggleable-xl > .container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: center;
      align-items: center;
}

.navbar-toggleable-xl .navbar-collapse {
  display: -ms-flexbox !important;
  display: flex !important;
  width: 100%;
}

.navbar-toggleable-xl .navbar-toggler {
  display: none;
}

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

.navbar-light .navbar-brand:focus,
.navbar-light .navbar-brand:hover,
.navbar-light .navbar-toggler:focus,
.navbar-light .navbar-toggler:hover {
  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:focus,
.navbar-light .navbar-nav .nav-link:hover {
  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 .open > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.open,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  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 32 32' 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 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

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

.navbar-inverse .navbar-brand,
.navbar-inverse .navbar-toggler {
  color: white;
}

.navbar-inverse .navbar-brand:focus,
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-toggler:focus,
.navbar-inverse .navbar-toggler:hover {
  color: white;
}

.navbar-inverse .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-inverse .navbar-nav .nav-link:focus,
.navbar-inverse .navbar-nav .nav-link:hover {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-inverse .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}

.navbar-inverse .navbar-nav .open > .nav-link,
.navbar-inverse .navbar-nav .active > .nav-link,
.navbar-inverse .navbar-nav .nav-link.open,
.navbar-inverse .navbar-nav .nav-link.active {
  color: white;
}

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

.navbar-inverse .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' 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 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

.navbar-inverse .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}

.card {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  background-color: #FFFFFF;
  border: 1px solid transparent;
  border-radius: 2px;
}

.card-block {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  padding: 2.1rem;
}

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

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

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

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

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

.card > .list-group:first-child .list-group-item:first-child {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
}

.card > .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}

.card-header {
  padding: 2rem 2.1rem;
  margin-bottom: 0;
  background-color: transparent;
  border-bottom: 1px solid transparent;
}

.card-header:first-child {
  border-radius: 2px 2px 0 0;
}

.card-footer {
  padding: 2rem 2.1rem;
  background-color: transparent;
  border-top: 1px solid transparent;
}

.card-footer:last-child {
  border-radius: 0 0 2px 2px;
}

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

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

.card-primary {
  background-color: #2196F3;
  border-color: #2196F3;
}

.card-primary .card-header,
.card-primary .card-footer {
  background-color: transparent;
}

.card-success {
  background-color: #32c787;
  border-color: #32c787;
}

.card-success .card-header,
.card-success .card-footer {
  background-color: transparent;
}

.card-info {
  background-color: #00BCD4;
  border-color: #00BCD4;
}

.card-info .card-header,
.card-info .card-footer {
  background-color: transparent;
}

.card-warning {
  background-color: #ffc107;
  border-color: #ffc107;
}

.card-warning .card-header,
.card-warning .card-footer {
  background-color: transparent;
}

.card-danger {
  background-color: #ff5652;
  border-color: #ff5652;
}

.card-danger .card-header,
.card-danger .card-footer {
  background-color: transparent;
}

.card-outline-primary {
  background-color: transparent;
  border-color: #2196F3;
}

.card-outline-secondary {
  background-color: transparent;
  border-color: #efefef;
}

.card-outline-info {
  background-color: transparent;
  border-color: #00BCD4;
}

.card-outline-success {
  background-color: transparent;
  border-color: #32c787;
}

.card-outline-warning {
  background-color: transparent;
  border-color: #ffc107;
}

.card-outline-danger {
  background-color: transparent;
  border-color: #ff5652;
}

.card-inverse {
  color: rgba(255, 255, 255, 0.65);
}

.card-inverse .card-header,
.card-inverse .card-footer {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.2);
}

.card-inverse .card-header,
.card-inverse .card-footer,
.card-inverse .card-title,
.card-inverse .card-blockquote {
  color: #fff;
}

.card-inverse .card-link,
.card-inverse .card-text,
.card-inverse .card-subtitle,
.card-inverse .card-blockquote .blockquote-footer {
  color: rgba(255, 255, 255, 0.65);
}

.card-inverse .card-link:focus,
.card-inverse .card-link:hover {
  color: #FFFFFF;
}

.card-blockquote {
  padding: 0;
  margin-bottom: 0;
  border-left: 0;
}

.card-img {
  border-radius: 2px;
}

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

.card-img-top {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
}

.card-img-bottom {
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}

@media (min-width: 576px) {
  .card-deck {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
  }

  .card-deck .card {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 1 0 0px;
        flex: 1 0 0;
    -ms-flex-direction: column;
        flex-direction: column;
  }

  .card-deck .card:not(:first-child) {
    margin-left: 15px;
  }

  .card-deck .card:not(:last-child) {
    margin-right: 15px;
  }
}

@media (min-width: 576px) {
  .card-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
  }

  .card-group .card {
    -ms-flex: 1 0 0px;
        flex: 1 0 0;
  }

  .card-group .card + .card {
    margin-left: 0;
    border-left: 0;
  }

  .card-group .card:first-child {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
  }

  .card-group .card:first-child .card-img-top {
    border-top-right-radius: 0;
  }

  .card-group .card:first-child .card-img-bottom {
    border-bottom-right-radius: 0;
  }

  .card-group .card:last-child {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
  }

  .card-group .card:last-child .card-img-top {
    border-top-left-radius: 0;
  }

  .card-group .card:last-child .card-img-bottom {
    border-bottom-left-radius: 0;
  }

  .card-group .card:not(:first-child):not(:last-child) {
    border-radius: 0;
  }

  .card-group .card:not(:first-child):not(:last-child) .card-img-top,
  .card-group .card:not(:first-child):not(:last-child) .card-img-bottom {
    border-radius: 0;
  }
}

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

  .card-columns .card {
    display: inline-block;
    width: 100%;
    margin-bottom: 2rem;
  }
}

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

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

.breadcrumb-item {
  float: left;
}

.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  color: #636c72;
  content: "";
}

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

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

.breadcrumb-item.active {
  color: #4f5861;
}

.pagination {
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 2px;
}

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

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

.page-item.active .page-link {
  z-index: 2;
  color: #FFFFFF;
  background-color: #2ebcfc;
  border-color: #2196F3;
}

.page-item.disabled .page-link {
  color: #8a8989;
  pointer-events: none;
  cursor: not-allowed;
  background-color: #efefef;
  border-color: #ddd;
}

.page-link {
  position: relative;
  display: block;
  padding: 0 0;
  margin-left: -1px;
  line-height: 1.25;
  color: #8a8989;
  background-color: #efefef;
  border: 0 solid #ddd;
}

.page-link:focus,
.page-link:hover {
  color: #7d7d7d;
  text-decoration: none;
  background-color: #e2e2e2;
  border-color: #ddd;
}

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

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

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

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

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

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

.badge {
  display: inline-block;
  padding: 0.4rem 0.55rem;
  font-size: 85%;
  font-weight: 500;
  line-height: 1;
  color: #FFFFFF;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 2px;
}

.badge:empty {
  display: none;
}

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

a.badge:focus,
a.badge:hover {
  color: #FFFFFF;
  text-decoration: none;
  cursor: pointer;
}

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

.badge-default {
  background-color: #636c72;
}

.badge-default[href]:focus,
.badge-default[href]:hover {
  background-color: #4b5257;
}

.badge-primary {
  background-color: #2196F3;
}

.badge-primary[href]:focus,
.badge-primary[href]:hover {
  background-color: #0c7cd5;
}

.badge-success {
  background-color: #32c787;
}

.badge-success[href]:focus,
.badge-success[href]:hover {
  background-color: #289e6b;
}

.badge-info {
  background-color: #00BCD4;
}

.badge-info[href]:focus,
.badge-info[href]:hover {
  background-color: #008fa1;
}

.badge-warning {
  background-color: #ffc107;
}

.badge-warning[href]:focus,
.badge-warning[href]:hover {
  background-color: #d39e00;
}

.badge-danger {
  background-color: #ff5652;
}

.badge-danger[href]:focus,
.badge-danger[href]:hover {
  background-color: #ff241f;
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #f6f6f6;
  border-radius: 2px;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-hr {
  border-top-color: #dddcdc;
}

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

.alert {
  padding: 18px 24px;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 2px;
}

.alert-heading {
  color: inherit;
}

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

.alert-dismissible .close {
  position: relative;
  top: -18px;
  right: -24px;
  padding: 18px 24px;
  color: inherit;
}

.alert-success {
  background-color: #57d59f;
  border-color: #57d59f;
  color: #FFFFFF;
}

.alert-success hr {
  border-top-color: #43d093;
}

.alert-success .alert-link {
  color: #e6e5e5;
}

.alert-info {
  background-color: #2ebcfc;
  border-color: #2ebcfc;
  color: #FFFFFF;
}

.alert-info hr {
  border-top-color: #14b4fc;
}

.alert-info .alert-link {
  color: #e6e5e5;
}

.alert-warning {
  background-color: #ffc721;
  border-color: #ffc721;
  color: #FFFFFF;
}

.alert-warning hr {
  border-top-color: #ffc107;
}

.alert-warning .alert-link {
  color: #e6e5e5;
}

.alert-danger {
  background-color: #ff6f6c;
  border-color: #ff6f6c;
  color: #FFFFFF;
}

.alert-danger hr {
  border-top-color: #ff5652;
}

.alert-danger .alert-link {
  color: #e6e5e5;
}

@keyframes progress-bar-stripes {
  from {
    background-position: 3px 0;
  }

  to {
    background-position: 0 0;
  }
}

.progress {
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  font-size: 0.75rem;
  line-height: 3px;
  text-align: center;
  background-color: #eee;
  border-radius: 2px;
}

.progress-bar {
  height: 3px;
  color: #2196F3;
  background-color: #2196F3;
}

.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: 3px 3px;
}

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

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

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

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

.list-group-item-action {
  width: 100%;
  color: #4f5861;
  text-align: inherit;
}

.list-group-item-action .list-group-item-heading {
  color: #000000;
}

.list-group-item-action:focus,
.list-group-item-action:hover {
  color: #4f5861;
  text-decoration: none;
  background-color: #f9f9f9;
}

.list-group-item-action:active {
  color: #707070;
  background-color: #f6f6f6;
}

.list-group-item {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-align: center;
      align-items: center;
  padding: 1rem 2rem;
  margin-bottom: 0;
  background-color: transparent;
  border: 0 solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
}

.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}

.list-group-item:focus,
.list-group-item:hover {
  text-decoration: none;
}

.list-group-item.disabled,
.list-group-item:disabled {
  color: #636c72;
  cursor: not-allowed;
  background-color: transparent;
}

.list-group-item.disabled .list-group-item-heading,
.list-group-item:disabled .list-group-item-heading {
  color: inherit;
}

.list-group-item.disabled .list-group-item-text,
.list-group-item:disabled .list-group-item-text {
  color: #636c72;
}

.list-group-item.active {
  z-index: 2;
  color: #FFFFFF;
  background-color: #03A9F4;
  border-color: #03A9F4;
}

.list-group-item.active .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small {
  color: inherit;
}

.list-group-item.active .list-group-item-text {
  color: #f7fcff;
}

.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-success {
  color: #FFFFFF;
  background-color: #57d59f;
}

a.list-group-item-success,
button.list-group-item-success {
  color: #FFFFFF;
}

a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}

a.list-group-item-success:focus,
a.list-group-item-success:hover,
button.list-group-item-success:focus,
button.list-group-item-success:hover {
  color: #FFFFFF;
  background-color: #43d093;
}

a.list-group-item-success.active,
button.list-group-item-success.active {
  color: #fff;
  background-color: #FFFFFF;
  border-color: #FFFFFF;
}

.list-group-item-info {
  color: #FFFFFF;
  background-color: #2ebcfc;
}

a.list-group-item-info,
button.list-group-item-info {
  color: #FFFFFF;
}

a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}

a.list-group-item-info:focus,
a.list-group-item-info:hover,
button.list-group-item-info:focus,
button.list-group-item-info:hover {
  color: #FFFFFF;
  background-color: #14b4fc;
}

a.list-group-item-info.active,
button.list-group-item-info.active {
  color: #fff;
  background-color: #FFFFFF;
  border-color: #FFFFFF;
}

.list-group-item-warning {
  color: #FFFFFF;
  background-color: #ffc721;
}

a.list-group-item-warning,
button.list-group-item-warning {
  color: #FFFFFF;
}

a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}

a.list-group-item-warning:focus,
a.list-group-item-warning:hover,
button.list-group-item-warning:focus,
button.list-group-item-warning:hover {
  color: #FFFFFF;
  background-color: #ffc107;
}

a.list-group-item-warning.active,
button.list-group-item-warning.active {
  color: #fff;
  background-color: #FFFFFF;
  border-color: #FFFFFF;
}

.list-group-item-danger {
  color: #FFFFFF;
  background-color: #ff6f6c;
}

a.list-group-item-danger,
button.list-group-item-danger {
  color: #FFFFFF;
}

a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}

a.list-group-item-danger:focus,
a.list-group-item-danger:hover,
button.list-group-item-danger:focus,
button.list-group-item-danger:hover {
  color: #FFFFFF;
  background-color: #ff5652;
}

a.list-group-item-danger.active,
button.list-group-item-danger.active {
  color: #fff;
  background-color: #FFFFFF;
  border-color: #FFFFFF;
}

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

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

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

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

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: normal;
  line-height: 1;
  color: #000000;
  text-shadow: none;
  opacity: .5;
}

.close:focus,
.close:hover {
  color: #000000;
  text-decoration: none;
  cursor: pointer;
  opacity: .75;
}

button.close {
  padding: 0;
  cursor: pointer;
  background: 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.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -25%);
}

.modal.show .modal-dialog {
  transform: translate(0, 0);
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}

.modal-content {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  background-color: #FFFFFF;
  background-clip: padding-box;
  border: 0 solid rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.07);
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.2;
}

.modal-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 25px 30px 0;
  border-bottom: 0 solid #f6f6f6;
}

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

.modal-body {
  position: relative;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  padding: 25px 30px;
}

.modal-footer {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: end;
      justify-content: flex-end;
  padding: 25px 30px;
  border-top: 0 solid #f6f6f6;
}

.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: 30px auto;
  }

  .modal-content {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.07);
  }

  .modal-sm {
    max-width: 300px;
  }
}

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

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 1;
}

.tooltip.tooltip-top,
.tooltip.bs-tether-element-attached-bottom {
  padding: 5px 0;
  margin-top: -3px;
}

.tooltip.tooltip-top .tooltip-inner::before,
.tooltip.bs-tether-element-attached-bottom .tooltip-inner::before {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  content: "";
  border-width: 5px 5px 0;
  border-top-color: #676767;
}

.tooltip.tooltip-right,
.tooltip.bs-tether-element-attached-left {
  padding: 0 5px;
  margin-left: 3px;
}

.tooltip.tooltip-right .tooltip-inner::before,
.tooltip.bs-tether-element-attached-left .tooltip-inner::before {
  top: 50%;
  left: 0;
  margin-top: -5px;
  content: "";
  border-width: 5px 5px 5px 0;
  border-right-color: #676767;
}

.tooltip.tooltip-bottom,
.tooltip.bs-tether-element-attached-top {
  padding: 5px 0;
  margin-top: 3px;
}

.tooltip.tooltip-bottom .tooltip-inner::before,
.tooltip.bs-tether-element-attached-top .tooltip-inner::before {
  top: 0;
  left: 50%;
  margin-left: -5px;
  content: "";
  border-width: 0 5px 5px;
  border-bottom-color: #676767;
}

.tooltip.tooltip-left,
.tooltip.bs-tether-element-attached-right {
  padding: 0 5px;
  margin-left: -3px;
}

.tooltip.tooltip-left .tooltip-inner::before,
.tooltip.bs-tether-element-attached-right .tooltip-inner::before {
  top: 50%;
  right: 0;
  margin-top: -5px;
  content: "";
  border-width: 5px 0 5px 5px;
  border-left-color: #676767;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.7rem 1.1rem;
  color: #FFFFFF;
  text-align: center;
  background-color: #676767;
  border-radius: 2px;
}

.tooltip-inner::before {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  padding: 15px 10px;
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #FFFFFF;
  background-clip: padding-box;
  border: 0 solid rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 2px 30px rgba(0, 0, 0, 0.15);
}

.popover.popover-top,
.popover.bs-tether-element-attached-bottom {
  margin-top: -10px;
}

.popover.popover-top::before,
.popover.popover-top::after,
.popover.bs-tether-element-attached-bottom::before,
.popover.bs-tether-element-attached-bottom::after {
  left: 50%;
  border-bottom-width: 0;
}

.popover.popover-top::before,
.popover.bs-tether-element-attached-bottom::before {
  bottom: -11px;
  margin-left: -11px;
  border-top-color: transparent;
}

.popover.popover-top::after,
.popover.bs-tether-element-attached-bottom::after {
  bottom: -10px;
  margin-left: -10px;
  border-top-color: #FFFFFF;
}

.popover.popover-right,
.popover.bs-tether-element-attached-left {
  margin-left: 10px;
}

.popover.popover-right::before,
.popover.popover-right::after,
.popover.bs-tether-element-attached-left::before,
.popover.bs-tether-element-attached-left::after {
  top: 50%;
  border-left-width: 0;
}

.popover.popover-right::before,
.popover.bs-tether-element-attached-left::before {
  left: -11px;
  margin-top: -11px;
  border-right-color: transparent;
}

.popover.popover-right::after,
.popover.bs-tether-element-attached-left::after {
  left: -10px;
  margin-top: -10px;
  border-right-color: #FFFFFF;
}

.popover.popover-bottom,
.popover.bs-tether-element-attached-top {
  margin-top: 10px;
}

.popover.popover-bottom::before,
.popover.popover-bottom::after,
.popover.bs-tether-element-attached-top::before,
.popover.bs-tether-element-attached-top::after {
  left: 50%;
  border-top-width: 0;
}

.popover.popover-bottom::before,
.popover.bs-tether-element-attached-top::before {
  top: -11px;
  margin-left: -11px;
  border-bottom-color: transparent;
}

.popover.popover-bottom::after,
.popover.bs-tether-element-attached-top::after {
  top: -10px;
  margin-left: -10px;
  border-bottom-color: #FFFFFF;
}

.popover.popover-bottom .popover-title::before,
.popover.bs-tether-element-attached-top .popover-title::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 20px;
  margin-left: -10px;
  content: "";
  border-bottom: 1px solid #FFFFFF;
}

.popover.popover-left,
.popover.bs-tether-element-attached-right {
  margin-left: -10px;
}

.popover.popover-left::before,
.popover.popover-left::after,
.popover.bs-tether-element-attached-right::before,
.popover.bs-tether-element-attached-right::after {
  top: 50%;
  border-right-width: 0;
}

.popover.popover-left::before,
.popover.bs-tether-element-attached-right::before {
  right: -11px;
  margin-top: -11px;
  border-left-color: transparent;
}

.popover.popover-left::after,
.popover.bs-tether-element-attached-right::after {
  right: -10px;
  margin-top: -10px;
  border-left-color: #FFFFFF;
}

.popover-title {
  padding: 8px 14px;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #FFFFFF;
  border-bottom: 0 solid #f2f2f2;
  border-top-right-radius: calc(2px - 0);
  border-top-left-radius: calc(2px - 0);
}

.popover-title:empty {
  display: none;
}

.popover-content {
  padding: 9px 14px;
}

.popover::before,
.popover::after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.popover::before {
  content: "";
  border-width: 11px;
}

.popover::after {
  content: "";
  border-width: 10px;
}

.carousel {
  position: relative;
}

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

.carousel-item {
  position: relative;
  display: none;
  width: 100%;
}

@media (-webkit-transform-3d) {
  .carousel-item {
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    perspective: 1000px;
  }
}

@supports (transform: translate3d(0, 0, 0)) {
  .carousel-item {
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    perspective: 1000px;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: -ms-flexbox;
  display: flex;
}

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

@media (-webkit-transform-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: translate3d(100%, 0, 0);
  }

  .carousel-item-prev,
  .active.carousel-item-left {
    transform: translate3d(-100%, 0, 0);
  }
}

@supports (transform: translate3d(0, 0, 0)) {
  .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: translate3d(100%, 0, 0);
  }

  .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: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 15%;
  color: #FFFFFF;
  text-align: center;
  opacity: 0.8;
}

.carousel-control-prev:focus,
.carousel-control-prev:hover,
.carousel-control-next:focus,
.carousel-control-next:hover {
  color: #FFFFFF;
  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: 40px;
  height: 40px;
  background: transparent no-repeat center center;
  background-size: 100% 100%;
}

.carousel-control-prev-icon {
  background-image: none;
}

.carousel-control-next-icon {
  background-image: none;
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  z-index: 15;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel-indicators li {
  position: relative;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  max-width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.5);
}

.carousel-indicators li::before {
  position: absolute;
  top: -10px;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 10px;
  content: "";
}

.carousel-indicators li::after {
  position: absolute;
  bottom: -10px;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 10px;
  content: "";
}

.carousel-indicators .active {
  background-color: #FFFFFF;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: rgba(255, 255, 255, 0.9);
  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-faded {
  background-color: #ebebeb;
}

.bg-primary {
  background-color: #2196F3 !important;
}

a.bg-primary:focus,
a.bg-primary:hover {
  background-color: #0c7cd5 !important;
}

.bg-success {
  background-color: #32c787 !important;
}

a.bg-success:focus,
a.bg-success:hover {
  background-color: #289e6b !important;
}

.bg-info {
  background-color: #00BCD4 !important;
}

a.bg-info:focus,
a.bg-info:hover {
  background-color: #008fa1 !important;
}

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

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

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

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

.bg-inverse {
  background-color: #292b2c !important;
}

a.bg-inverse:focus,
a.bg-inverse:hover {
  background-color: #101112 !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;
}

.rounded {
  border-radius: 2px;
}

.rounded-top {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
}

.rounded-right {
  border-bottom-right-radius: 2px;
  border-top-right-radius: 2px;
}

.rounded-bottom {
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}

.rounded-left {
  border-bottom-left-radius: 2px;
  border-top-left-radius: 2px;
}

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

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

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

.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-cell {
  display: table-cell !important;
}

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

.d-inline-flex {
  display: -ms-inline-flexbox !important;
  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-cell {
    display: table-cell !important;
  }

  .d-sm-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    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-cell {
    display: table-cell !important;
  }

  .d-md-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-md-inline-flex {
    display: -ms-inline-flexbox !important;
    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-cell {
    display: table-cell !important;
  }

  .d-lg-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-lg-inline-flex {
    display: -ms-inline-flexbox !important;
    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-cell {
    display: table-cell !important;
  }

  .d-xl-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }

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

.flex-first {
  -ms-flex-order: -1;
      order: -1;
}

.flex-last {
  -ms-flex-order: 1;
      order: 1;
}

.flex-unordered {
  -ms-flex-order: 0;
      order: 0;
}

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

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

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

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

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

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

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

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

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

.justify-content-center {
  -ms-flex-pack: center !important;
      justify-content: center !important;
}

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

.justify-content-around {
  -ms-flex-pack: distribute !important;
      justify-content: space-around !important;
}

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

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

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

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

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

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

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

.align-content-center {
  -ms-flex-line-pack: center !important;
      align-content: center !important;
}

.align-content-between {
  -ms-flex-line-pack: justify !important;
      align-content: space-between !important;
}

.align-content-around {
  -ms-flex-line-pack: distribute !important;
      align-content: space-around !important;
}

.align-content-stretch {
  -ms-flex-line-pack: stretch !important;
      align-content: stretch !important;
}

.align-self-auto {
  -ms-flex-item-align: auto !important;
      -ms-grid-row-align: auto !important;
      align-self: auto !important;
}

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

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

.align-self-center {
  -ms-flex-item-align: center !important;
      -ms-grid-row-align: center !important;
      align-self: center !important;
}

.align-self-baseline {
  -ms-flex-item-align: baseline !important;
      align-self: baseline !important;
}

.align-self-stretch {
  -ms-flex-item-align: stretch !important;
      -ms-grid-row-align: stretch !important;
      align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .flex-sm-last {
    -ms-flex-order: 1;
        order: 1;
  }

  .flex-sm-unordered {
    -ms-flex-order: 0;
        order: 0;
  }

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

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

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

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

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

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

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

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

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

  .justify-content-sm-center {
    -ms-flex-pack: center !important;
        justify-content: center !important;
  }

  .justify-content-sm-between {
    -ms-flex-pack: justify !important;
        justify-content: space-between !important;
  }

  .justify-content-sm-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
  }

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

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

  .align-items-sm-center {
    -ms-flex-align: center !important;
        align-items: center !important;
  }

  .align-items-sm-baseline {
    -ms-flex-align: baseline !important;
        align-items: baseline !important;
  }

  .align-items-sm-stretch {
    -ms-flex-align: stretch !important;
        align-items: stretch !important;
  }

  .align-content-sm-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
  }

  .align-content-sm-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
  }

  .align-content-sm-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important;
  }

  .align-content-sm-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
  }

  .align-content-sm-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
  }

  .align-content-sm-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
  }

  .align-self-sm-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important;
  }

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

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

  .align-self-sm-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important;
  }

  .align-self-sm-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
  }

  .align-self-sm-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

@media (min-width: 768px) {
  .flex-md-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .flex-md-last {
    -ms-flex-order: 1;
        order: 1;
  }

  .flex-md-unordered {
    -ms-flex-order: 0;
        order: 0;
  }

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

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

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

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

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

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

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

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

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

  .justify-content-md-center {
    -ms-flex-pack: center !important;
        justify-content: center !important;
  }

  .justify-content-md-between {
    -ms-flex-pack: justify !important;
        justify-content: space-between !important;
  }

  .justify-content-md-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
  }

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

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

  .align-items-md-center {
    -ms-flex-align: center !important;
        align-items: center !important;
  }

  .align-items-md-baseline {
    -ms-flex-align: baseline !important;
        align-items: baseline !important;
  }

  .align-items-md-stretch {
    -ms-flex-align: stretch !important;
        align-items: stretch !important;
  }

  .align-content-md-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
  }

  .align-content-md-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
  }

  .align-content-md-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important;
  }

  .align-content-md-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
  }

  .align-content-md-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
  }

  .align-content-md-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
  }

  .align-self-md-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important;
  }

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

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

  .align-self-md-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important;
  }

  .align-self-md-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
  }

  .align-self-md-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

@media (min-width: 992px) {
  .flex-lg-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .flex-lg-last {
    -ms-flex-order: 1;
        order: 1;
  }

  .flex-lg-unordered {
    -ms-flex-order: 0;
        order: 0;
  }

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

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

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

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

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

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

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

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

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

  .justify-content-lg-center {
    -ms-flex-pack: center !important;
        justify-content: center !important;
  }

  .justify-content-lg-between {
    -ms-flex-pack: justify !important;
        justify-content: space-between !important;
  }

  .justify-content-lg-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
  }

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

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

  .align-items-lg-center {
    -ms-flex-align: center !important;
        align-items: center !important;
  }

  .align-items-lg-baseline {
    -ms-flex-align: baseline !important;
        align-items: baseline !important;
  }

  .align-items-lg-stretch {
    -ms-flex-align: stretch !important;
        align-items: stretch !important;
  }

  .align-content-lg-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
  }

  .align-content-lg-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
  }

  .align-content-lg-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important;
  }

  .align-content-lg-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
  }

  .align-content-lg-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
  }

  .align-content-lg-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
  }

  .align-self-lg-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important;
  }

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

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

  .align-self-lg-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important;
  }

  .align-self-lg-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
  }

  .align-self-lg-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

@media (min-width: 1200px) {
  .flex-xl-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .flex-xl-last {
    -ms-flex-order: 1;
        order: 1;
  }

  .flex-xl-unordered {
    -ms-flex-order: 0;
        order: 0;
  }

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

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

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

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

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

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

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

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

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

  .justify-content-xl-center {
    -ms-flex-pack: center !important;
        justify-content: center !important;
  }

  .justify-content-xl-between {
    -ms-flex-pack: justify !important;
        justify-content: space-between !important;
  }

  .justify-content-xl-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
  }

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

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

  .align-items-xl-center {
    -ms-flex-align: center !important;
        align-items: center !important;
  }

  .align-items-xl-baseline {
    -ms-flex-align: baseline !important;
        align-items: baseline !important;
  }

  .align-items-xl-stretch {
    -ms-flex-align: stretch !important;
        align-items: stretch !important;
  }

  .align-content-xl-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
  }

  .align-content-xl-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
  }

  .align-content-xl-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important;
  }

  .align-content-xl-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
  }

  .align-content-xl-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
  }

  .align-content-xl-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
  }

  .align-self-xl-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important;
  }

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

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

  .align-self-xl-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important;
  }

  .align-self-xl-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
  }

  .align-self-xl-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        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;
  }
}

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

.sticky-top {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1030;
}

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

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

.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 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 0 !important;
  }

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

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

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

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

  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

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

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

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

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

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

  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

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

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

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

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

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

  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

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

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

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

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

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

  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

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

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

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

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

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

  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

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

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

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

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

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

  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

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

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

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

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

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

  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

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

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

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

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

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

  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

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

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

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

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

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

  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

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

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

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

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

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

  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

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

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

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

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

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

  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

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

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

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

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

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

  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

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

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

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

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

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

  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 0 !important;
  }

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

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

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

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

  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

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

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

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

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

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

  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

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

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

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

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

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

  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

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

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

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

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

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

  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

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

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

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

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

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

  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

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

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

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

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

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

  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

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

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

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

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

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

  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

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

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

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

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

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

  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

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

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

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

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

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

  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

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

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

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

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

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

  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

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

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

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

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

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

  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

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

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

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

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

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

  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

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

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

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

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

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

  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 0 !important;
  }

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

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

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

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

  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

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

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

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

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

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

  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

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

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

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

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

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

  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

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

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

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

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

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

  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

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

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

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

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

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

  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

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

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

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

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

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

  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

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

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

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

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

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

  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

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

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

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

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

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

  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

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

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

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

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

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

  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

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

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

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

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

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

  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

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

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

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

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

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

  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

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

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

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

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

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

  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

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

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

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

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

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

  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 0 !important;
  }

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

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

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

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

  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

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

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

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

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

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

  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

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

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

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

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

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

  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

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

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

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

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

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

  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

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

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

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

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

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

  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

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

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

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

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

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

  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

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

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

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

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

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

  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

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

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

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

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

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

  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

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

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

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

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

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

  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

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

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

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

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

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

  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

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

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

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

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

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

  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

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

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

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

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

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

  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

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

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

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

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

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

  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.font-weight-normal {
  font-weight: normal;
}

.font-weight-bold {
  font-weight: 500;
}

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

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

.text-muted {
  color: #4f5861 !important;
}

a.text-muted:focus,
a.text-muted:hover {
  color: #383f45 !important;
}

.text-primary {
  color: #2196F3 !important;
}

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

.text-success {
  color: #32c787 !important;
}

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

.text-info {
  color: #00BCD4 !important;
}

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

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

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

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

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

.text-gray-dark {
  color: #292b2c !important;
}

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

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

.invisible {
  visibility: hidden !important;
}

.hidden-xs-up {
  display: none !important;
}

@media (max-width: 575px) {
  .hidden-xs-down {
    display: none !important;
  }
}

@media (min-width: 576px) {
  .hidden-sm-up {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .hidden-sm-down {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .hidden-md-up {
    display: none !important;
  }
}

@media (max-width: 991px) {
  .hidden-md-down {
    display: none !important;
  }
}

@media (min-width: 992px) {
  .hidden-lg-up {
    display: none !important;
  }
}

@media (max-width: 1199px) {
  .hidden-lg-down {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hidden-xl-up {
    display: none !important;
  }
}

.hidden-xl-down {
  display: none !important;
}

.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

.dropdown,
.dropup {
  position: relative;
}

.dropdown-item {
  padding: 0.5rem 1.5rem;
  cursor: pointer;
  transition: background-color 300ms, color 300ms;
}

.dropdown-menu {
  top: 0;
  animation-name: fadeIn;
  animation-duration: 300ms;
  animation-fill-mode: both;
}

.dropdown-menu--alt {
  padding: 0;
}

.dropdown-menu--block {
  width: 320px;
}

@media (max-width: 575px) {
  .dropdown-menu--block {
    width: 100%;
  }
}

.dropdown-menu--icon .dropdown-item > i {
  line-height: 100%;
  vertical-align: top;
  font-size: 1.4rem;
  width: 2rem;
}

.dropup .dropdown-menu {
  bottom: 0;
}

.caret:before {
  font-family: "Material-Design-Iconic-Font";
  content: '\f2f2';
  font-size: 1.5rem;
  font-style: normal;
  line-height: 5px;
  position: relative;
  top: 3px;
}

.dropdown-toggle-split {
  border-radius: 0 2px 2px !important;
}

.progress {
  margin-top: 0.2rem;
  margin-bottom: 0;
  width: 100%;
}

progress::-webkit-progress-bar {
  background-color: #eee;
}

.card {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
  margin-bottom: 30px;
}

.card:not([class*="card-outline-"]) {
  border: 0;
}

[class*="card-outline-"] {
  background-color: #FFFFFF;
}

.card-title {
  font-size: 1.25rem;
  font-weight: normal;
  margin-bottom: 0;
}

.card-subtitle {
  color: #4f5861;
  display: block;
  font-size: 1rem;
  margin-top: 0.5rem;
}

.card-header {
  position: relative;
}

.card-header + .card-block {
  padding-top: 0;
}

.card-header .btn--action {
  position: absolute;
  right: 25px;
  bottom: -25px;
}

.card > .actions,
.card-header .actions {
  position: absolute;
  right: 15px;
  z-index: 2;
  top: 18px;
}

[class*="card-img"] {
  width: 100%;
}

.card-inverse .card-link,
.card-inverse .card-text,
.card-inverse .card-subtitle,
.card-inverse .card-blockquote .blockquote-footer {
  color: rgba(255, 255, 255, 0.85);
}

.card-inverse .card-header,
.card-inverse .card-footer {
  border-color: transparent;
}

.card-link {
  text-transform: uppercase;
  font-size: 0.98rem;
  color: #333;
  font-weight: 500;
}

.card-link:hover {
  color: #4d4c4c;
}

.card-footer:not(.card-footer--highlight) {
  padding-top: 0;
}

.card-footer--highlight {
  background-color: #f9f9f9;
}

.card-block p:only-child {
  margin-bottom: 0;
}

.card-block__title {
  font-size: 1.1rem;
  color: #333;
  margin-bottom: 0.6rem;
  font-weight: normal;
}

.card--fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9;
  padding-top: 72px;
  overflow: auto;
}

.card-block__nav {
  margin-bottom: 1.8rem;
  padding: 0 1px;
}

.card-block__nav > a {
  font-weight: 500;
  text-transform: uppercase;
  color: #b0b0b0;
  transition: color 300ms;
}

.card-block__nav > a + a {
  padding-left: 1rem;
}

.card-block__nav > a.active,
.card-block__nav > a:hover {
  color: #707070;
}

.btn {
  cursor: pointer;
}

.btn:not(.btn-secondary):not([class*="btn-outline-"]):not(.btn-link) {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12);
  border: 0;
}

.btn-secondary,
.btn-secondary:focus {
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.05);
}

.btn--white,
.btn--white:hover,
.btn--white:focus {
  background-color: #FFFFFF;
  color: #707070;
}

.btn--icon {
  border-radius: 50%;
  width: 3rem;
  height: 3rem;
  line-height: 2.9rem;
  padding: 0;
  font-size: 1.2rem;
  text-align: center;
}

.btn--icon-text > .zmdi {
  display: inline-block;
  vertical-align: top;
  margin: 1px 5px 0 0;
  line-height: 100%;
}

.btn--action {
  z-index: 2;
  height: 50px;
  width: 50px;
  padding: 0;
  line-height: 50px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  border-radius: 50%;
  font-size: 20px;
  cursor: pointer;
  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.15);
}

.btn--action,
.btn--action:hover,
.btn--action:focus {
  color: #FFFFFF;
}

.btn--fixed {
  position: fixed !important;
  bottom: 30px;
  right: 30px;
}

.btn-group-justified {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.btn-group-justified .btn,
.btn-group-justified .btn-group {
  -ms-flex: 1;
      flex: 1;
}

.btn-group-justified .btn .btn,
.btn-group-justified .btn-group .btn {
  width: 100%;
}

[data-toggle="buttons"]:not(.btn-group--colors) > .btn {
  background-color: #ebebeb;
  color: #707070;
  cursor: pointer;
  box-shadow: none !important;
  border: 0 !important;
  margin: 0;
}

[data-toggle="buttons"]:not(.btn-group--colors) > .btn.active {
  background-color: #03A9F4;
  color: #FFFFFF;
}

.btn-group--colors > .btn {
  box-shadow: none !important;
  border-radius: 50% !important;
  width: 30px;
  height: 30px;
  margin-right: 3px;
  cursor: pointer;
  position: relative;
}

.btn-group--colors > .btn:before {
  font-family: "Material-Design-Iconic-Font";
  content: "";
  font-size: 16px;
  transition: transform 200ms, opacity 200ms;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  line-height: 28px;
  padding-right: 3px;
  color: #FFFFFF;
  font-style: italic;
  transform: scale(0);
  opacity: 0;
}

.btn-group--colors > .btn.btn:not([class*="bg-"]) {
  border: 1px solid #e4e4e4;
}

.btn-group--colors > .btn.btn:not([class*="bg-"]):before {
  color: #707070;
}

.btn-group--colors > .btn.active:before {
  transform: scale(1);
  opacity: 1;
}

.table thead th {
  border-bottom-width: 1px;
}

.table tr[class*="table-"] td,
.table tr[class*="table-"] th,
.table tr[class*="table-"] + tr td,
.table tr[class*="table-"] + tr th {
  border: 0;
}

.table th {
  font-weight: 500;
}

.table:not(.table-bordered) > thead:first-child th,
.table:not(.table-bordered) > thead:first-child td,
.table:not(.table-bordered) > tbody:first-child th,
.table:not(.table-bordered) > tbody:first-child td {
  border-top: 0;
}

.table-inverse {
  background-color: #404c54;
}

.table-inverse th,
.table-inverse td,
.table-inverse thead th {
  border-color: #505b63;
}

.thead-inverse th {
  background-color: #404c54;
}

.data-table table th {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
  position: relative;
}

.data-table table th > i.fa {
  position: absolute;
  font-style: normal;
  right: 0.3rem;
  bottom: 0.6rem;
  font-size: 1.4rem;
}

.data-table table th > i.fa:before {
  font-family: "Material-Design-Iconic-Font";
}

.data-table table th > i.fa.fa-chevron-up:before {
  content: '\f1ce';
}

.data-table table th > i.fa.fa-chevron-down:before {
  content: '\f1cd';
}

.data-table tr > td:first-child,
.data-table tr > th:first-child {
  padding-left: 2.1rem;
}

.data-table tr > td:last-child,
.data-table tr > th:last-child {
  padding-right: 2.1rem;
}

.data-table__header {
  padding: 0 2.1rem 2rem;
}

.data-table__filter {
  max-width: 500px;
}

.data-table__filter .form-control {
  padding-left: 2rem;
}

.data-table__filter:before {
  content: '\f1c3';
  font-family: "Material-Design-Iconic-Font";
  font-size: 1.5rem;
  position: absolute;
  left: 0;
  bottom: 0.263rem;
}

.data-table__footer {
  text-align: center;
  padding: 2rem 2.1rem;
}

label {
  font-weight: 500;
}

.form-control {
  border-left: 0;
  border-right: 0;
  border-top: 0;
  resize: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -ms-overflow-style: none;
}

.form-control:focus ~ .form-group__bar:before,
.form-control:focus ~ .form-group__bar:after {
  width: 50%;
}

.form-control:disabled,
.form-control[readonly] {
  opacity: 0.6;
}

.form-group {
  position: relative;
}

.form-group > label {
  font-weight: normal;
}

.form-group:not(.form-group--float) > label {
  font-size: 0.9rem;
}

.form-group__bar {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
  width: 100%;
}

.form-group__bar:before,
.form-group__bar:after {
  content: '';
  position: absolute;
  height: 2px;
  width: 0;
  bottom: 0;
  transition: all 200ms;
  transition-timing-function: ease;
  background-color: #03A9F4;
}

.form-group__bar:before {
  left: 50%;
}

.form-group__bar:after {
  right: 50%;
}

select::-ms-expand {
  display: none;
}

.select:before {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 1;
  right: 0;
  bottom: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 8px 8px;
  border-color: transparent transparent #d1d1d1 transparent;
}

.form-group--float {
  margin-top: 2rem;
}

.form-group--float .form-control:focus ~ label,
.form-group--float .form-control.form-control--active ~ label {
  bottom: 2.6rem;
  font-size: 0.875rem;
}

.form-group--float .form-control ~ label {
  font-size: 1rem;
  bottom: 0.65rem;
  width: 100%;
}

.form-group--float .form-control-sm:focus ~ label,
.form-group--float .input-group-sm > .form-control:focus ~ label,
.form-group--float .input-group-sm > .input-group-addon:focus ~ label,
.form-group--float .input-group-sm > .input-group-btn > .btn:focus ~ label,
.form-group--float .form-control-sm.form-control--active ~ label,
.form-group--float .input-group-sm > .form-control--active.form-control ~ label,
.form-group--float .input-group-sm > .form-control--active.input-group-addon ~ label,
.form-group--float .input-group-sm > .input-group-btn > .form-control--active.btn ~ label {
  bottom: 2rem;
  font-size: 0.875rem;
}

.form-group--float .form-control-sm ~ label,
.form-group--float .input-group-sm > .form-control ~ label,
.form-group--float .input-group-sm > .input-group-addon ~ label,
.form-group--float .input-group-sm > .input-group-btn > .btn ~ label {
  font-size: 0.875rem;
  bottom: 0.5rem;
}

.form-group--float .form-control-lg:focus ~ label,
.form-group--float .input-group-lg > .form-control:focus ~ label,
.form-group--float .input-group-lg > .input-group-addon:focus ~ label,
.form-group--float .input-group-lg > .input-group-btn > .btn:focus ~ label,
.form-group--float .form-control-lg.form-control--active ~ label,
.form-group--float .input-group-lg > .form-control--active.form-control ~ label,
.form-group--float .input-group-lg > .form-control--active.input-group-addon ~ label,
.form-group--float .input-group-lg > .input-group-btn > .form-control--active.btn ~ label {
  bottom: 3rem;
  font-size: 1rem;
}

.form-group--float .form-control-lg ~ label,
.form-group--float .input-group-lg > .form-control ~ label,
.form-group--float .input-group-lg > .input-group-addon ~ label,
.form-group--float .input-group-lg > .input-group-btn > .btn ~ label {
  font-size: 1.25rem;
  bottom: 0.75rem;
}

.form-group--float > label {
  color: #636c72;
  pointer-events: none;
  left: 0.1rem;
  position: absolute;
  margin: 0;
  transition: bottom 150ms ease, color 150ms, font-size 150ms ease;
}

.form-group--centered,
.form-group--centered .form-control {
  text-align: center;
}

.input-group .form-group {
  -ms-flex: 2;
      flex: 2;
  margin: 0;
}

.input-group .form-group .form-control {
  width: 100%;
}

.input-group .form-group .form-group__bar {
  z-index: 3;
}

.input-group .form-group--float > label {
  z-index: 3;
}

.input-group-addon {
  padding: 0 1rem !important;
}

.input-group-addon + .form-group .form-control {
  padding-right: 1rem;
  padding-left: 1rem;
  border-left: 1px solid #f1f1f1;
}

.custom-control {
  margin-bottom: 0;
  min-height: 1.3rem;
}

.custom-control-indicator {
  border: 2px solid #7a7a7a;
  color: #FFFFFF;
  top: 0.01rem;
  transition: border 200ms;
}

.custom-checkbox .custom-control-indicator:before {
  content: '\f26b';
  font-family: "Material-Design-Iconic-Font";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #39bbb0;
  z-index: 1;
  opacity: 0;
  transition: background-color 200ms;
  line-height: 1rem;
  text-align: center;
  font-size: 0.9rem;
  font-weight: bold;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-indicator:before {
  opacity: 1;
}

.custom-radio .custom-control-indicator:before {
  content: '';
  position: absolute;
  left: 2px;
  top: 2px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background-color: #39bbb0;
  z-index: 1;
  transform: scale(0);
  transition: transform 200ms;
}

.custom-radio .custom-control-input:checked ~ .custom-control-indicator:before {
  transform: scale(1);
}

.custom-control-input:checked ~ .custom-control-indicator {
  border-color: #39bbb0;
}

.custom-control-input:disabled ~ .custom-control-indicator {
  opacity: 0.5;
}

.custom-control--light {
  color: #FFFFFF;
}

.custom-control--light .custom-control-indicator:before {
  border-color: #FFFFFF;
  background-color: #FFFFFF;
  color: #404040;
}

.custom-control--char {
  margin: 0;
  font-weight: normal;
}

.custom-control--char .custom-control-input {
  width: 3rem;
  height: 3rem;
  z-index: 3;
}

.custom-control--char .custom-control-input:checked + .custom-control--char__helper:after {
  opacity: 1;
}

.custom-control--char .custom-control-input:checked + .custom-control--char__helper:before {
  opacity: 0;
}

.custom-control--char .custom-control-input:checked + .custom-control--char__helper > i {
  font-size: 0;
}

.custom-control--char:hover .custom-control--char__helper:before {
  opacity: 1;
}

.custom-control--char:hover .custom-control--char__helper > i {
  font-size: 0;
}

.custom-control--char__helper {
  position: absolute;
  font-style: normal;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  left: 0;
  top: 0;
}

.custom-control--char__helper:before,
.custom-control--char__helper:after,
.custom-control--char__helper > i {
  position: absolute;
  text-align: center;
  left: 0;
  width: 100%;
  height: 100%;
  top: 1px;
  line-height: 3rem;
  color: #FFFFFF;
}

.custom-control--char__helper:before,
.custom-control--char__helper:after {
  font-family: "Material-Design-Iconic-Font";
  font-size: 1.5rem;
  opacity: 0;
  transition: opacity 300ms;
}

.custom-control--char__helper:before {
  content: '\f279';
  z-index: 1;
}

.custom-control--char__helper:after {
  content: '\f26b';
  z-index: 2;
}

.custom-control--char__helper > i {
  font-style: normal;
  border-radius: 50%;
  font-size: 1.2rem;
  font-weight: 500;
  transition: font-size 200ms, background-color 300ms;
}

.page-item.disabled {
  opacity: 0.6;
}

.page-link {
  border-radius: 50% !important;
  width: 2.5rem;
  height: 2.5rem;
  line-height: 2.5rem;
  text-align: center;
  z-index: 1;
  cursor: pointer;
  transition: background-color 300ms, color 300ms;
  margin: 0 1px;
}

.page-link > .zmdi {
  font-size: 1.5rem;
}

.pagination-next .page-link,
.pagination-prev .page-link,
.pagination-first .page-link,
.pagination-last .page-link {
  font-size: 0;
}

.pagination-next .page-link:before,
.pagination-prev .page-link:before,
.pagination-first .page-link:before,
.pagination-last .page-link:before {
  font-family: "Material-Design-Iconic-Font";
  font-size: 1rem;
  line-height: 2.55rem;
}

.pagination-prev .page-link:before {
  content: '\f2ff';
}

.pagination-next .page-link:before {
  content: '\f301';
}

.pagination-first .page-link:before,
.pagination-last .page-link:before {
  content: '\f302';
}

.pagination-first .page-link:before {
  transform: rotate(180deg);
  display: inline-block;
}

.alert {
  font-weight: 500;
}

[class*="alert-"] .alert-link {
  color: #FFFFFF;
  border-bottom: 1px dotted rgba(255, 255, 255, 0.5);
}

.alert-heading {
  font-weight: 500;
  font-size: 1.3rem;
  margin-top: 0.15rem;
}

.alert-dismissible .close > span:not(.sr-only) {
  background-color: rgba(255, 255, 255, 0.2);
  line-height: 19px;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  font-size: 1.1rem;
  display: block;
}

.alert-dismissible .close:hover,
.alert-dismissible .close:focus {
  color: #FFFFFF;
}

.alert-dismissible .close:hover span:not(.sr-only),
.alert-dismissible .close:focus span:not(.sr-only) {
  background-color: rgba(255, 255, 255, 0.3);
}

.alert-inverse {
  background-color: #2c2c2c;
  border-color: #2c2c2c;
  color: #FFFFFF;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
}

.alert-inverse hr {
  border-top-color: #1f1f1f;
}

.alert-inverse .alert-link {
  color: #e6e5e5;
}

.alert--notify {
  max-width: 600px;
  width: 100%;
  padding-right: 60px;
}

.alert--notify:not(.alert-inverse) .alert--notify__close {
  color: #FFFFFF;
}

.alert--notify:not(.alert-inverse) .alert--notify__close:hover {
  opacity: 0.8;
}

.alert--notify.alert-inverse .alert--notify__close {
  color: #FFEB3B;
}

.alert--notify.alert-inverse .alert--notify__close:hover {
  opacity: 0.8;
}

.alert--notify__close {
  background-color: transparent;
  border: 0;
  text-transform: uppercase;
  padding: 0;
  cursor: pointer;
  font-weight: 500;
  position: absolute;
  right: 24px;
  top: 18px;
}

.close,
.close:hover {
  opacity: 1;
}

.breadcrumb {
  border-bottom: 1px solid #ebebeb;
  border-radius: 0;
}

.breadcrumb-item + .breadcrumb-item:before {
  font-family: "Material-Design-Iconic-Font";
  position: relative;
  top: 1px;
  color: #a3a3a3;
}

.breadcrumb-item,
.breadcrumb-item > a {
  color: #707070;
}

.breadcrumb-item:hover,
.breadcrumb-item > a:hover {
  color: #575656;
}

.accordion .card {
  box-shadow: none;
  margin: 0 0 1px;
}

.accordion .card-header {
  padding: 0.9rem 0;
  box-shadow: 0 1px 0 0 #f7f7f7;
  transition: box-shadow 300ms;
}

.accordion .card-title {
  font-size: 1rem;
  font-weight: 500;
  color: #333;
  display: block;
}

.accordion .card-block {
  padding: 1.5rem 0;
}

.carousel-item img {
  width: 100%;
  border-radius: 2px;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  position: relative;
}

.carousel-control-prev-icon:before,
.carousel-control-prev-icon:after,
.carousel-control-next-icon:before,
.carousel-control-next-icon:after {
  content: '';
  font-family: "Material-Design-Iconic-Font";
  font-size: 2rem;
  color: #FFFFFF;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.6);
  transition: opacity 250ms linear, transform 250ms linear;
}

.carousel-control-prev-icon:after,
.carousel-control-next-icon:after {
  transform: scale(5);
  opacity: 0;
}

[class*="carousel-control-"]:hover .carousel-control-prev-icon:after,
[class*="carousel-control-"]:hover .carousel-control-next-icon:after {
  transform: scale(1);
  opacity: 1;
}

[class*="carousel-control-"]:hover .carousel-control-prev-icon:before,
[class*="carousel-control-"]:hover .carousel-control-next-icon:before {
  transform: scale(0);
  opacity: 0;
}

.carousel-control-prev-icon:before,
.carousel-control-prev-icon:after {
  content: '\f2ff';
}

.carousel-control-next-icon:before,
.carousel-control-next-icon:after {
  content: '\f301';
}

.carousel-caption {
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 2px 2px 0 0;
  bottom: 0;
  font-weight: 500;
  padding-bottom: 35px;
}

.carousel-caption h3 {
  color: #FFFFFF;
  font-size: 1.5rem;
}

.modal-dialog {
  width: 100%;
}

.modal-content {
  text-align: left;
}

.modal-title {
  font-weight: normal;
  font-size: 1.1rem;
}

.modal-footer {
  padding-top: 10px;
}

.modal-footer > .btn-link {
  color: #575656;
  font-weight: 500;
  text-transform: uppercase;
  cursor: pointer;
  border: 0;
}

.modal-footer > .btn-link:hover,
.modal-footer > .btn-link:focus {
  background-color: #f6f6f6;
  box-shadow: none;
}

@media (min-width: 576px) {
  .modal {
    text-align: center;
  }

  .modal:before {
    content: '';
    height: 100%;
    width: 1px;
  }

  .modal:before,
  .modal .modal-dialog {
    display: inline-block;
    vertical-align: middle;
  }
}

.popover {
  font-size: 1rem;
}

.nav-tabs .nav-link {
  border: 0;
  text-transform: uppercase;
  color: #4f5861;
  font-weight: 500;
  transition: color 300ms;
  position: relative;
}

.nav-tabs .nav-link:before {
  content: "";
  height: 2px;
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  background-color: #03A9F4;
  transform: scale(0);
  transition: all 300ms;
}

.nav-tabs .nav-link.active:before {
  transform: scale(1);
}

.tab-content {
  padding: 1.5rem 0;
}

.tab-container--red .nav-tabs .nav-link:before {
  background-color: #ff5652;
}

.tab-container--green .nav-tabs .nav-link:before {
  background-color: #32c787;
}

.tab-container--amber .nav-tabs .nav-link:before {
  background-color: #ffc107;
}

.tab-container--black .nav-tabs .nav-link:before {
  background-color: #000000;
}

.tooltip {
  font-size: 0.95rem;
  font-weight: 500;
}

@font-face {
  font-family: Roboto;
  src: url(/fonts/Roboto-Light-webfont.eot?a990f611f2305dc12965f186c2ef2690);
  src: url(/fonts/Roboto-Light-webfont.eot?a990f611f2305dc12965f186c2ef2690) format("embedded-opentype"), url(/fonts/Roboto-Light-webfont.woff?816d43bc217485bc52e309cd1b356880) format("woff"), url(/fonts/Roboto-Light-webfont.ttf?d8472f7b6012706fc028021e5a654843) format("truetype"), url(/fonts/Roboto-Light-webfont.svg?3581138bd3477ae13eca1ac9e584220a) format("svg");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: Roboto;
  src: url(/fonts/Roboto-Regular-webfont.eot?30799efa5bf74129468ad4e257551dc3);
  src: url(/fonts/Roboto-Regular-webfont.eot?30799efa5bf74129468ad4e257551dc3) format("embedded-opentype"), url(/fonts/Roboto-Regular-webfont.woff?3e5675c89f974f7811eeaf07e2dd5ba3) format("woff"), url(/fonts/Roboto-Regular-webfont.ttf?7f1320f7ec4f6716054d88c33235d17b) format("truetype"), url(/fonts/Roboto-Regular-webfont.svg?da61d7ef302b8bf871dd0ae796a52f33) format("svg");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: Roboto;
  src: url(/fonts/Roboto-Medium-webfont.eot?4d9f3f9e5195e7b074bb63ba4ce42208);
  src: url(/fonts/Roboto-Medium-webfont.eot?4d9f3f9e5195e7b074bb63ba4ce42208) format("embedded-opentype"), url(/fonts/Roboto-Medium-webfont.woff?b9d01ac1742192a7c9d30f3fe346a9f4) format("woff"), url(/fonts/Roboto-Medium-webfont.ttf?1d2af757de4340d6b644360e517a2a47) format("truetype"), url(/fonts/Roboto-Medium-webfont.svg?88e897b6e48f9b57cbed1ad9256f18ee) format("svg");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: Roboto;
  src: url(/fonts/Roboto-Bold-webfont.eot?ecdd509cadbf1ea78b8d2e31ec52328c);
  src: url(/fonts/Roboto-Bold-webfont.eot?ecdd509cadbf1ea78b8d2e31ec52328c) format("embedded-opentype"), url(/fonts/Roboto-Bold-webfont.woff?8b18d65d6824460ad37616723e493bcd) format("woff"), url(/fonts/Roboto-Bold-webfont.ttf?3dcc0e0f2287e2e955cd8ce8cb08dae0) format("truetype"), url(/fonts/Roboto-Bold-webfont.svg?375c4f3bd35840adee24a1535bbb2018) format("svg");
  font-weight: 700;
  font-style: normal;
}

.bg-red {
  background-color: #ff5652 !important;
}

.color-red {
  color: #ff5652 !important;
}

.bg-pink {
  background-color: #ff85af !important;
}

.color-pink {
  color: #ff85af !important;
}

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

.color-purple {
  color: #d559ea !important;
}

.bg-deep-purple {
  background-color: #673AB7 !important;
}

.color-deep-purple {
  color: #673AB7 !important;
}

.bg-indigo {
  background-color: #3F51B5 !important;
}

.color-indigo {
  color: #3F51B5 !important;
}

.bg-blue {
  background-color: #2196F3 !important;
}

.color-blue {
  color: #2196F3 !important;
}

.bg-light-blue {
  background-color: #03A9F4 !important;
}

.color-light-blue {
  color: #03A9F4 !important;
}

.bg-cyan {
  background-color: #00BCD4 !important;
}

.color-cyan {
  color: #00BCD4 !important;
}

.bg-teal {
  background-color: #39bbb0 !important;
}

.color-teal {
  color: #39bbb0 !important;
}

.bg-green {
  background-color: #32c787 !important;
}

.color-green {
  color: #32c787 !important;
}

.bg-light-green {
  background-color: #8BC34A !important;
}

.color-light-green {
  color: #8BC34A !important;
}

.bg-lime {
  background-color: #CDDC39 !important;
}

.color-lime {
  color: #CDDC39 !important;
}

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

.color-yellow {
  color: #FFEB3B !important;
}

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

.color-amber {
  color: #ffc107 !important;
}

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

.color-orange {
  color: #FF9800 !important;
}

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

.color-deep-orange {
  color: #FF5722 !important;
}

.bg-brown {
  background-color: #795548 !important;
}

.color-brown {
  color: #795548 !important;
}

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

.color-grey {
  color: #d0d0d0 !important;
}

.bg-blue-grey {
  background-color: #607D8B !important;
}

.color-blue-grey {
  color: #607D8B !important;
}

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

.color-black {
  color: #000000 !important;
}

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

.color-white {
  color: #FFFFFF !important;
}

.o-hidden {
  overflow: hidden;
}

.o-visible {
  overflow: visible;
}

.o-auto {
  overflow: auto;
}

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

*:focus,
*:active {
  outline: none !important;
}

html {
  font-size: 13px;
}

a {
  cursor: pointer;
}

pre {
  background-color: #333333;
  border-radius: 2px;
  padding: 1.5rem;
}

button,
input,
optgroup,
select,
textarea {
  font-family: "Roboto", sans-serif;
}

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

.list > li:before {
  font-family: "Material-Design-Iconic-Font";
  margin-right: 1.1rem;
}

.list--star > li:before {
  content: '\f27d';
}

.list--check > li:before {
  content: '\f26b';
}

.list--dot > li:before {
  content: '\f26f';
}

.main {
  position: relative;
}

.main--alt {
  padding-top: 40px;
}

@media (min-width: 1200px) {
  .content:not(.content--boxed):not(.content--full) {
    padding: 102px 30px 0 270px;
  }
}

@media (min-width: 576px) and (max-width: 1199px) {
  .content:not(.content--boxed):not(.content--full) {
    padding: 102px 30px 0;
  }
}

@media (max-width: 575px) {
  .content:not(.content--boxed):not(.content--full) {
    padding: 87px 15px 0;
  }
}

@media (min-width: 576px) {
  .content--full {
    padding: 102px 30px 0;
  }
}

@media (max-width: 767px) {
  .content--full {
    padding: 87px 15px 0;
  }
}

.content__inner {
  margin: auto;
}

.content__inner:not(.content__inner--sm) {
  max-width: 1280px;
}

.content__inner--sm {
  max-width: 800px;
}

.content__title {
  margin-bottom: 2rem;
  padding: 1rem 2rem 0;
  position: relative;
}

.content__title > h1 {
  line-height: 100%;
  font-weight: normal;
  font-size: 1.15rem;
  margin: 0;
  text-transform: uppercase;
  color: #676767;
}

.content__title .actions {
  position: absolute;
  top: 0.3rem;
  right: 1rem;
}

.content__title > small {
  font-size: 1rem;
  display: block;
  margin-top: 0.8rem;
  color: #959595;
}

[data-columns]::after {
  display: block;
  content: "";
  clear: both;
}

@media (min-width: 1500px) {
  [data-columns]:before {
    content: '3 .column.size-1of3';
  }
}

@media (min-width: 768px) {
  [data-columns] {
    margin: 0 -15px;
  }

  [data-columns] .column {
    padding: 0 15px;
  }
}

@media (min-width: 768px) and (max-width: 1499px) {
  [data-columns]:before {
    content: '2 .column.size-1of2';
  }
}

@media screen and (max-width: 767px) {
  [data-columns] {
    margin: 0 -10px;
  }

  [data-columns] .column {
    padding: 0 10px;
  }

  [data-columns]:before {
    content: '1 .column.size-1of1';
  }
}

.column {
  float: left;
}

.size-1of1 {
  width: 100%;
}

.size-1of2 {
  width: 50%;
}

.size-1of3 {
  width: 33.333%;
}

.view-more {
  display: block;
  padding: 1.1rem 0;
  text-align: center;
  margin-top: 0.5rem;
  font-size: 0.9rem;
  font-weight: 500;
  transition: color 300ms;
}

.view-more:not(.view-more--light) {
  color: #4f5861;
}

.view-more:not(.view-more--light):hover {
  color: #383f45;
}

.view-more--light {
  color: #FFFFFF;
}

.view-more--light:hover {
  color: rgba(255, 255, 255, 0.8);
}

.load-more {
  text-align: center;
  margin-top: 2rem;
}

.load-more > a {
  display: inline-block;
  padding: 0.5rem 1rem;
  border: 2px solid rgba(0, 0, 0, 0.065);
  border-radius: 2px;
  color: #707070;
  transition: border-color 300ms;
}

.load-more > a > i {
  font-size: 1.2rem;
  vertical-align: middle;
  margin: 0 0.3rem 0 -0.1rem;
  transition: transform 300ms;
}

.load-more > a:hover {
  border-color: rgba(0, 0, 0, 0.12);
}

.load-more > a:hover > i {
  transform: rotate(-360deg);
}

.card-block .view-more {
  padding: 1rem 0 0;
}

.actions [dropdown] {
  display: inline-block;
}

.actions:not(.actions--inverse) .actions__item {
  color: #bdbcbc;
}

.actions:not(.actions--inverse) .actions__item:hover {
  color: #707070;
}

.actions:not(.actions--inverse) .actions__item.actions__item--active {
  color: #575656;
}

.actions__item {
  display: inline-block;
  vertical-align: top;
  line-height: 30px;
  text-align: center;
  font-size: 1.55rem;
  cursor: pointer;
  transition: color 300ms;
  width: 30px;
  height: 30px;
}

.actions__item > i {
  display: inline-block;
  width: 100%;
}

.actions--inverse .actions__item {
  color: rgba(255, 255, 255, 0.7);
}

.actions--inverse .actions__item:hover {
  color: #FFFFFF;
}

.actions--inverse .actions__item--active {
  color: #FFFFFF;
}

.icon-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.icon-list > li {
  position: relative;
  padding: 0.3rem 0;
}

.icon-list > li address {
  display: inline-block;
  vertical-align: top;
}

.icon-list > li > i {
  width: 2.5rem;
  text-align: center;
  font-size: 1.25rem;
  top: 0.12rem;
  position: relative;
  margin-left: -0.5rem;
}

.avatar-img,
.avatar-char {
  border-radius: 50%;
  width: 3rem;
  height: 3rem;
  margin-right: 1.5rem;
}

.avatar-char {
  line-height: 3rem;
  text-transform: uppercase;
  font-size: 1.2rem;
  text-align: center;
  color: #FFFFFF;
  font-style: normal;
}

.avatar-char > .zmdi {
  line-height: 3.1rem;
}

.ma-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 8;
}

.toolbar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  height: 4.5rem;
  -ms-flex-align: center;
      align-items: center;
  padding: 0.05rem 2.1rem 0;
  position: relative;
  margin-bottom: 30px;
}

.toolbar:not(.toolbar--inner) {
  background-color: #FFFFFF;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
}

.toolbar .actions {
  margin: 0.05rem -0.8rem 0 auto;
}

.toolbar--inner {
  border-bottom: 1px solid #f6f6f6;
}

.toolbar__nav {
  white-space: nowrap;
  overflow-x: auto;
  margin-right: 1rem;
}

.toolbar__nav > a {
  text-transform: uppercase;
  font-weight: 500;
  color: #b0b0b0;
  display: inline-block;
  transition: color 300ms;
}

.toolbar__nav > a + a {
  padding-left: 1rem;
}

.toolbar__nav > a.active,
.toolbar__nav > a:hover {
  color: #707070;
}

.toolbar__search {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF;
  border-radius: 2px;
  padding-left: 3rem;
  display: none;
}

.toolbar__search input[type=text] {
  width: 100%;
  height: 100%;
  border: 0;
  padding: 0 1.6rem;
  font-size: 1.2rem;
}

.toolbar__search__close {
  transition: color 300ms;
  cursor: pointer;
  position: absolute;
  top: 1.5rem;
  left: 1.8rem;
  font-size: 1.5rem;
  color: #969696;
}

.toolbar__search__close:hover {
  color: #707070;
}

.toolbar__label {
  margin: 0;
  font-size: 1.1rem;
}

.header {
  position: fixed;
  width: 100%;
  height: 72px;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.2);
  color: #FFFFFF;
  padding: 0 2rem;
  z-index: 10;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  top: 0;
  left: 0;
}

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

.header .ma-backdrop {
  position: absolute;
}

.navigation-trigger {
  float: left;
  padding: 2rem 2rem 2rem 2.4rem;
  margin-left: -2rem;
}

.navigation-trigger:hover {
  cursor: pointer;
}

.navigation-trigger.toggled .navigation-trigger__inner {
  transform: rotate(180deg);
}

.navigation-trigger.toggled .navigation-trigger__inner:before {
  transform: scale(1);
}

.navigation-trigger.toggled .navigation-trigger__line:first-child {
  width: 12px;
  transform: translateX(8px) translateY(1px) rotate(45deg);
}

.navigation-trigger.toggled .navigation-trigger__line:last-child {
  width: 11px;
  transform: translateX(8px) translateY(-1px) rotate(-45deg);
}

.navigation-trigger__inner,
.navigation-trigger__line {
  width: 18px;
  transition: all 300ms;
}

.navigation-trigger__inner {
  position: relative;
}

.navigation-trigger__inner:before {
  content: '';
  position: absolute;
  width: 40px;
  height: 40px;
  left: -11px;
  top: -14px;
  background-color: rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  transition: all 300ms;
  transform: scale(0);
}

.navigation-trigger__line {
  height: 2px;
  background-color: #FFFFFF;
  display: block;
  position: relative;
}

.navigation-trigger__line:not(:last-child) {
  margin-bottom: 3px;
}

@media (min-width: 1200px) {
  .header__logo {
    min-width: calc(270px - 2rem);
  }
}

.header__logo > h1 {
  line-height: 100%;
  font-size: 1.3rem;
  font-weight: normal;
  margin: 0;
}

.header__logo > h1 > a {
  color: #FFFFFF;
}

.top-nav {
  list-style: none;
  margin: 0 0 0 auto;
  padding: 0;
}

.top-nav > li {
  display: inline-block;
  vertical-align: middle;
}

.top-nav > li > a {
  display: block;
  color: #FFFFFF;
  border-radius: 2px;
  text-align: center;
  line-height: 100%;
  position: relative;
  transition: background-color 300ms;
}

.top-nav > li > a:not(.header__nav__text) {
  padding: 0.5rem 0.15rem;
  min-width: 50px;
}

.top-nav > li > a:not(.header__nav__text) > .zmdi {
  font-size: 1.65rem;
  line-height: 100%;
}

.top-nav > li > a.active,
.top-nav > li > a:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

.top-nav > li .dropdown-menu--block {
  padding: 0;
}

@media (max-width: 575px) {
  .top-nav > li {
    position: static;
  }

  .top-nav > li .dropdown-menu--block {
    left: 20px;
    width: calc(100% - 40px);
    top: 62px;
  }
}

.top-nav__notifications .listview {
  position: relative;
}

.top-nav__notifications .listview:before {
  font-family: "Material-Design-Iconic-Font";
  content: "";
  font-size: 2.5rem;
  transition: transform 300ms, opacity 300ms;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 90px;
  height: 90px;
  border: 2px solid #ececec;
  color: #8a8989;
  border-radius: 50%;
  transform: scale(0) rotate(-360deg);
  opacity: 0;
  text-align: center;
  line-height: 86px;
}

.top-nav__notifications .listview__scroll {
  height: 350px;
}

.top-nav__notifications--cleared .listview:before {
  transform: scale(1) rotate(0deg);
  opacity: 1;
}

.top-nav__notify:before {
  content: '';
  width: 7px;
  height: 7px;
  background-color: #ff605c;
  color: #FFFFFF;
  border-radius: 50%;
  position: absolute;
  top: -3px;
  right: 0;
  left: 0;
  margin: auto;
  animation-name: flash;
  animation-duration: 2000ms;
  animation-fill-mode: both;
  animation-iteration-count: infinite;
}

.search {
  -ms-flex: 1;
      flex: 1;
  margin-right: 2.5rem;
  position: relative;
}

@media (max-width: 1199px) {
  .search {
    padding: 0 1.5rem;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: #FFFFFF;
    z-index: 11;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    transition: transform 300ms;
  }

  .search:not(.search--toggled) {
    transform: translate3d(0, -105%, 0);
  }
}

.search__inner {
  position: relative;
}

@media (max-width: 1199px) {
  .search__inner {
    max-width: 600px;
    margin: 0 auto;
    width: 100%;
  }
}

.search__text {
  border: 0;
  border-radius: 2px;
  height: 2.9rem;
  padding: 0 1rem 0 3rem;
  width: 100%;
  transition: background-color 300ms, color 300ms;
}

@media (min-width: 992px) {
  .search__text {
    background-color: rgba(255, 255, 255, 0.2);
    color: #FFFFFF;
  }

  .search__text:-ms-input-placeholder {
    color: #FFFFFF;
    opacity: 1;
  }

  .search__text::placeholder {
    color: #FFFFFF;
    opacity: 1;
  }

  .search__text:focus {
    background-color: #f3f3f3;
    color: #464a4c;
  }

  .search__text:focus:-ms-input-placeholder {
    color: #5e6467;
    opacity: 1;
  }

  .search__text:focus::placeholder {
    color: #5e6467;
    opacity: 1;
  }
}

@media (max-width: 1199px) {
  .search__text {
    background-color: #f3f3f3;
    color: #464a4c;
  }

  .search__text:-ms-input-placeholder {
    color: #5e6467;
    opacity: 1;
  }

  .search__text::placeholder {
    color: #5e6467;
    opacity: 1;
  }
}

.search__helper {
  position: absolute;
  left: 0;
  top: 0;
  font-size: 1.3rem;
  height: 100%;
  width: 3rem;
  text-align: center;
  line-height: 3rem;
  cursor: pointer;
  transition: color 300ms, transform 400ms;
}

@media (max-width: 1199px) {
  .search__helper {
    color: #464a4c;
    transform: rotate(180deg);
    line-height: 2.9rem;
  }

  .search__helper:before {
    content: '\f301';
  }

  .search__helper:hover {
    opacity: 0.9;
  }
}

.search--focus .search__helper {
  color: #5e6467;
  transform: rotate(180deg);
  line-height: 2.9rem;
}

.search--focus .search__helper:before {
  content: '\f301';
}

.app-shortcuts {
  margin: 0;
  padding: 1rem;
}

.app-shortcuts__item {
  text-align: center;
  padding: 1rem 0;
  border-radius: 2px;
  transition: background-color 300ms;
}

.app-shortcuts__item:hover {
  background-color: #f6f6f6;
}

.app-shortcuts__item > i {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  color: #FFFFFF;
  line-height: 45px;
  font-size: 1.5rem;
}

.app-shortcuts__item > small {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.95rem;
}

.app-shortcuts__item > small,
.app-shortcuts__item > small:hover,
.app-shortcuts__item > small:focus {
  color: #4f5861;
}

.top-menu {
  position: absolute;
  background-color: #FFFFFF;
  left: 0;
  top: 100%;
  width: 100%;
  box-shadow: 0 3px 5px -2px rgba(0, 0, 0, 0.1);
  -ms-flex-pack: center;
      justify-content: center;
  white-space: nowrap;
}

.top-menu > li.active {
  position: relative;
  box-shadow: 0 0 0 -2px red;
}

.top-menu > li > a {
  line-height: 100%;
  color: #969696;
  font-weight: 500;
  text-transform: uppercase;
}

.top-menu > li > a.active {
  color: #333;
}

.footer {
  text-align: center;
  padding: 4rem 1rem 1rem;
}

.footer > p {
  color: #a3a3a3;
  margin-bottom: 0;
}

.footer__nav {
  -ms-flex-pack: center;
      justify-content: center;
}

.footer__nav .nav-link {
  color: #a3a3a3;
  transition: color 300ms;
}

.footer__nav .nav-link:hover,
.footer__nav .nav-link:focus {
  color: #7d7d7d;
}

.footer__nav .nav-link + .nav-link:before {
  font-family: "Material-Design-Iconic-Font";
  content: "";
  font-size: 4px;
  position: relative;
  left: -1.2rem;
  top: -0.2rem;
  color: #a3a3a3;
}

.sidebar {
  width: 270px;
  position: fixed;
  left: 0;
  padding: 102px 2rem 0.5rem 2rem;
  height: 100%;
  overflow: hidden;
  z-index: 9;
}

@media (max-width: 1199px) {
  .sidebar {
    background-color: #FFFFFF;
    transition: transform 300ms, opacity 300ms;
  }

  .sidebar:not(.toggled) {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }

  .sidebar.toggled {
    box-shadow: 5px 0 10px rgba(0, 0, 0, 0.08);
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.sidebar .scrollbar-inner > .scroll-element {
  margin-right: 0;
}

.sidebar--hidden {
  background-color: #FFFFFF;
  transition: transform 300ms, opacity 300ms;
}

.sidebar--hidden:not(.toggled) {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}

.sidebar--hidden.toggled {
  box-shadow: 5px 0 10px rgba(0, 0, 0, 0.08);
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.user {
  background-color: rgba(0, 0, 0, 0.03);
  border-radius: 2px;
  margin: 0 0 1.5rem 0;
  position: relative;
}

.user .dropdown-menu {
  width: 100%;
}

.user__info {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  cursor: pointer;
  font-size: 0.9rem;
  padding: 0.8rem;
  border-radius: 2px;
  transition: background-color 300ms;
}

.user__info:hover {
  background-color: rgba(0, 0, 0, 0.03);
}

.user__img {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  margin-right: 0.8rem;
}

.user__name {
  color: #333;
  font-weight: 500;
}

.user__email {
  color: #969696;
}

.navigation {
  list-style: none;
  padding: 0;
}

.navigation li a {
  color: #707070;
  transition: background-color 300ms, color 300ms;
  font-weight: 500;
  display: block;
}

.navigation li:not(.navigation__active):not(.navigation__sub--active) a:hover {
  background-color: rgba(0, 0, 0, 0.03);
}

.navigation > li > a {
  padding: 0.85rem 0.5rem;
  position: relative;
  border-radius: 2px;
}

.navigation > li > a > i {
  vertical-align: top;
  font-size: 1.3rem;
  position: relative;
  top: 0.1rem;
  width: 1.5rem;
  text-align: center;
  margin-right: 0.6rem;
}

.navigation__sub > ul {
  border-radius: 2px;
  list-style: none;
  overflow: hidden;
  padding: 0;
}

.navigation__sub > ul > li > a {
  padding: 0.6rem 1rem 0.6rem 2.75rem;
}

.navigation__sub > ul > li:last-child {
  padding-bottom: 0.8rem;
}

.navigation__sub:not(.navigation__sub--active) > ul {
  display: none;
}

.navigation__sub .navigation__active {
  position: relative;
}

.navigation__sub .navigation__active:before {
  font-family: "Material-Design-Iconic-Font";
  content: "";
  font-size: 6px;
  position: absolute;
  left: 1rem;
  top: 1.1rem;
}

.chat {
  position: fixed;
  top: 0;
  right: 0;
  width: 320px;
  height: 100%;
  background-color: #FFFFFF;
  z-index: 11;
  box-shadow: -5px 0 10px rgba(0, 0, 0, 0.08);
  padding-top: 30px;
  transition: transform 300ms, opacity 300ms;
}

.chat:not(.toggled) {
  transform: translate3d(340px, 0, 0);
  opacity: 0;
}

.chat.toggled {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

.chat__header {
  padding: 0 2rem;
}

.chat__title {
  line-height: 100%;
  margin: 0 0 2rem;
  font-size: 1.2rem;
}

.chat__title > small {
  color: #4f5861;
  font-size: 0.95rem;
  display: block;
  margin-top: 0.5rem;
  text-transform: none;
}

.chat__search .form-group:before {
  font-family: "Material-Design-Iconic-Font";
  content: "";
  font-size: 1.4rem;
  position: absolute;
  left: 0;
  bottom: 0.3rem;
}

.chat__search .form-control {
  padding-left: 2rem;
}

.chat__buddies {
  height: 100%;
  overflow-y: auto;
}

.chat__buddies .listview__item {
  padding-left: 3rem;
}

.chat__available,
.chat__away,
.chat__busy {
  position: relative;
}

.chat__available:before,
.chat__away:before,
.chat__busy:before {
  position: absolute;
  height: 8px;
  width: 8px;
  content: '';
  border-radius: 50%;
  left: 1.5rem;
  top: 0;
  bottom: 0;
  margin: auto;
}

.chat__available:before {
  background-color: #32c787;
}

.chat__away:before {
  background-color: #ffc107;
}

.chat__busy:before {
  background-color: #ff5652;
}

.toggle-switch {
  display: inline-block;
  width: 36px;
  height: 20px;
  position: relative;
}

.toggle-switch__helper {
  position: absolute;
  height: 12px;
  width: 100%;
}

.toggle-switch__helper:before,
.toggle-switch__helper:after {
  will-change: left, background-color;
  content: '';
  position: absolute;
  left: 0;
  transition: left 200ms, background-color, 200ms;
}

.toggle-switch__helper:before {
  background-color: #e0e0e0;
  top: 4px;
  height: 100%;
  width: 100%;
  border-radius: 10px;
}

.toggle-switch__helper:after {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #FFFFFF;
  left: 0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.toggle-switch__checkbox {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 2;
  cursor: pointer;
}

.toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  left: calc(100% - 20px);
  background-color: #39bbb0;
}

.toggle-switch__checkbox:disabled ~ .toggle-switch__helper {
  opacity: 0.65;
}

.toggle-switch__checkbox:active ~ .toggle-switch__helper:after {
  box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.05);
}

.toggle-switch--red .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #ff5652;
}

.toggle-switch--blue .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #03A9F4;
}

.toggle-switch--green .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #32c787;
}

.toggle-switch--amber .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #ffc107;
}

.toggle-switch--purple .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #d559ea;
}

.toggle-switch--cyan .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #00BCD4;
}

.listview__header {
  color: #333;
  text-transform: uppercase;
  padding: 1.2rem 1rem 1rem;
  border-bottom: 1px solid #f3f3f3;
  margin-bottom: 0.75rem;
  text-align: center;
}

.listview__header .actions {
  position: absolute;
  top: 0.8rem;
  right: 1rem;
}

.listview__scroll {
  overflow-y: auto;
}

.listview__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 15px 2.1rem;
  transition: background-color 300ms;
}

.listview__img {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  vertical-align: top;
  margin: -0.1rem 1.2rem 0 -0.2rem;
}

.listview__content {
  -ms-flex: 1;
      flex: 1;
  min-width: 0;
}

.listview__content > p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #8a8989;
  margin-bottom: 0;
}

.listview__heading {
  font-size: 1rem;
  color: #333;
  position: relative;
}

.listview__heading > small {
  float: right;
  color: #4f5861;
  font-weight: 500;
  font-size: 0.85rem;
}

.listview__heading + p {
  margin: 0.2rem 0 0;
  font-size: 0.95rem;
}

.listview__attrs {
  -ms-flex: 1 100%;
      flex: 1 100%;
  margin-top: 0.5rem;
}

.listview__attrs > span {
  padding: 0.45rem 0.7rem 0.5rem;
  border: 1px solid white;
  display: inline-block;
  line-height: 100%;
  font-size: 1rem;
  margin: 0.2rem 0.05rem 0 0;
  background-color: #FFFFFF;
}

.listview:not(.listview--inverse).listview--hover .listview__item:hover {
  background-color: rgba(0, 0, 0, 0.035);
}

.listview:not(.listview--inverse).listview--striped .listview__item:nth-child(even) {
  background-color: rgba(0, 0, 0, 0.035);
}

.listview:not(.listview--inverse) .listview__item--active {
  background-color: rgba(0, 0, 0, 0.035);
}

.listview:not(.listview--inverse).listview--bordered .listview__item + .listview__item {
  border-top: 1px solid rgba(0, 0, 0, 0.04);
}

.listview--inverse.listview--striped .listview__item:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.1);
}

.listview__actions {
  margin-left: auto;
  -ms-flex-item-align: start;
      align-self: flex-start;
  margin-right: -1rem;
}

.page-loader {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #f3f3f3;
  z-index: 999999999;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  display: -ms-flexbox;
  display: flex;
}

.page-loader__spinner {
  position: relative;
  width: 50px;
  height: 50px;
}

.page-loader__spinner svg {
  animation: rotate 2s linear infinite;
  transform-origin: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.page-loader__spinner svg circle {
  stroke-dasharray: 1, 200;
  stroke-dashoffset: 0;
  animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
  stroke-linecap: round;
}

@keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }

  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px;
  }

  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124px;
  }
}

@keyframes color {
  100%, 0% {
    stroke: #ff5652;
  }

  40% {
    stroke: #2196F3;
  }

  66% {
    stroke: #32c787;
  }

  80%, 90% {
    stroke: #ffc107;
  }
}

@media (min-width: 768px) {
  .profile {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media (max-width: 767px) {
  .profile {
    margin-top: 75px;
    text-align: center;
  }
}

.profile__img {
  padding: 5px;
  position: relative;
}

.profile__img img {
  max-width: 200px;
  border-radius: 2px;
}

@media (max-width: 767px) {
  .profile__img img {
    margin: -55px 0 -10px;
    width: 120px;
    border: 5px solid #FFFFFF;
    border-radius: 50%;
  }
}

.profile__img__edit {
  position: absolute;
  font-size: 1.2rem;
  top: 15px;
  left: 15px;
  background-color: rgba(0, 0, 0, 0.4);
  width: 30px;
  height: 30px;
  line-height: 30px;
  border-radius: 50%;
  text-align: center;
  color: #FFFFFF;
}

.profile__img__edit:hover {
  background-color: rgba(0, 0, 0, 0.65);
  color: #FFFFFF;
}

.profile__info {
  padding: 30px;
}

.photos {
  margin: 0 0 1rem;
}

@media (max-width: 575px) {
  .photos {
    margin: 0 -1.9rem 1rem;
  }
}

.photos > a {
  padding: 0;
  border: 2px solid #FFFFFF;
}

.photos > a img {
  border-radius: 2px;
  width: 100%;
}

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

  .contacts > [class*="col-"] {
    padding: 0 5px;
  }
}

.contacts__item {
  background-color: #FFFFFF;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
  padding: 1.8rem 1.5rem 1.15rem;
  text-align: center;
  margin-bottom: 30px;
}

.contacts__item:hover .contacts__img > img {
  transform: scale(1.1);
}

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

.contacts__img {
  display: block;
  margin-bottom: 1.1rem;
}

.contacts__img > img {
  max-width: 120px;
  max-height: 120px;
  width: 100%;
  border-radius: 50%;
  transition: transform 300ms;
}

.contacts__info strong,
.contacts__info small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
}

.contacts__info strong {
  font-weight: 500;
}

.contacts__info small {
  font-size: 0.9rem;
  color: #4f5861;
}

.contacts__btn {
  margin-top: 10px;
  font-weight: 500;
  text-transform: uppercase;
  border: 0;
  line-height: 100%;
  background-color: transparent;
  color: #707070;
  cursor: pointer;
  padding: 8px 10px;
  border-radius: 2px;
  transition: background-color 300ms, color 300ms;
}

.contacts__btn:hover {
  background-color: #f6f6f6;
  color: #333;
}

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

  .groups [class*=col-] {
    padding: 0 5px;
  }

  .groups .groups__item {
    margin-bottom: 10px;
  }
}

.groups__item {
  position: relative;
  text-align: center;
  padding: 2rem 1rem 1.5rem;
  margin-bottom: 30px;
  background-color: #FFFFFF;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
}

.groups__item:hover .actions {
  opacity: 1;
}

.groups__item .actions {
  position: absolute;
  top: 0.7rem;
  right: 0.5rem;
  z-index: 1;
  opacity: 0;
}

.groups__img {
  width: 6.2rem;
  display: inline-block;
}

.groups__img .avatar-img {
  display: inline-block;
  margin: 0 -1px 3px 0;
  vertical-align: top;
}

.groups__info {
  margin-top: 1rem;
}

.groups__info > strong {
  color: #333;
  display: block;
  font-weight: 500;
}

.groups__info > small {
  font-size: 0.9rem;
  color: #4f5861;
}

.messages {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  background-color: #FFFFFF;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
  height: calc(100vh - 180px);
}

.messages__sidebar {
  width: 23rem;
  overflow: hidden;
}

@media (min-width: 768px) {
  .messages__sidebar {
    border-right: 1px solid #f1f1f1;
  }
}

@media (max-width: 991px) {
  .messages__sidebar {
    display: none;
  }
}

.messages__sidebar .listview {
  height: calc(100% - 130px);
  overflow-y: auto;
}

.messages__search {
  padding: 0 2.2rem;
  position: relative;
}

.messages__search .form-group:before {
  font-family: "Material-Design-Iconic-Font";
  content: "";
  font-size: 1.3rem;
  position: absolute;
  left: 0;
  bottom: 0.35rem;
}

.messages__search .form-control {
  padding-left: 2rem;
}

.messages__body {
  -ms-flex: 2;
      flex: 2;
  -ms-flex-direction: column;
      flex-direction: column;
  display: -ms-flexbox;
  display: flex;
}

.messages__header,
.messages__reply {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}

.messages__content {
  overflow-y: auto;
  position: relative;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  padding: 2.5rem;
}

.messages__item {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 2rem;
}

.messages__item:not(.messages__item--right) {
  -ms-flex-direction: row;
      flex-direction: row;
}

.messages__avatar {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
}

.messages__details {
  padding: 0 1rem;
  max-width: 500px;
}

.messages__details > p {
  border-radius: 0.5rem;
  padding: 1rem 1.3rem;
  margin-bottom: 0;
  display: inline-block;
  text-align: left;
}

.messages__details > p + p {
  margin-top: 2px;
}

.messages__details > small {
  display: block;
  padding: 0 1.5rem;
  margin-top: 1rem;
  color: #4f5861;
  font-size: 0.9rem;
}

.messages__details > small > .zmdi {
  font-size: 1.2rem;
  vertical-align: middle;
  margin-right: 0.3rem;
}

.messages__details:not(.messages__details--highlight) > p {
  background-color: #f6f6f6;
}

.messages__item--right {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
}

.messages__item--right .messages__details {
  text-align: right;
}

.messages__item--right .messages__details > p {
  background-color: #03A9F4;
  color: #FFFFFF;
  margin-left: auto;
}

.messages__reply {
  border-top: 1px solid #f1f1f1;
  padding: 1rem;
  padding-right: 3rem;
  position: relative;
}

.messages__reply__text {
  width: 100%;
  border: 0;
  border-radius: 2px;
  padding: 0.5rem;
  resize: none;
}

.messages__reply__btn {
  position: absolute !important;
  top: 1.5rem;
  right: 1.5rem;
}

.price-table {
  text-align: center;
}

.price-table:not(.price-table--highlight) {
  margin: 0 -10px;
}

.price-table:not(.price-table--highlight) > [class*="col-"] {
  padding: 0 10px;
  text-align: center;
}

.price-table--highlight {
  margin: 0;
}

.price-table--highlight > [class*="col-"] {
  padding: 0;
}

.price-table__item {
  margin-bottom: 20px;
  background-color: #FFFFFF;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
}

@media (max-width: 767px) {
  .price-table__item {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 768px) {
  .price-table__item--popular {
    padding-bottom: 1rem;
    position: relative;
    z-index: 1;
    margin: -1rem -0.1rem 0;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.14);
  }

  .price-table__item--popular .price-table__header {
    padding: 2.5rem 2rem 2.5rem;
  }
}

.price-table__header {
  color: #FFFFFF;
  border-radius: 2px 2px 0 0;
  padding: 2rem;
  margin-bottom: 2rem;
}

.price-table__title {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 1.3rem;
}

.price-table__desc {
  color: rgba(255, 255, 255, 0.75);
  margin: 0.3rem 0;
}

.price-table__price {
  font-size: 1.8rem;
}

.price-table__price > small {
  font-size: 1rem;
  position: relative;
  top: -0.4rem;
}

.price-table__info {
  padding-left: 0;
  list-style: none;
  padding: 1rem 0;
}

.price-table__info > li {
  font-weight: 500;
  padding: 1rem 1.5rem;
}

.price-table__info > li + li {
  border-top: 1px solid #f7f7f9;
}

.price-table__action {
  display: inline-block;
  text-transform: uppercase;
  margin-bottom: 2.5rem;
  padding: 0.8rem 1.2rem;
  border-radius: 2px;
  color: #FFFFFF;
  font-weight: 500;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.12);
  transition: opacity 300ms;
}

.price-table__action:hover,
.price-table__action:focus {
  opacity: 0.9;
  color: #FFFFFF;
}

.invoice {
  min-width: 1100px;
  max-width: 1170px;
  border-radius: 2px;
  padding: 2.5rem;
  background-color: #FFFFFF;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
}

.invoice__header {
  padding: 1.5rem;
  text-align: center;
  border-radius: 2px 2px 0 0;
  margin-bottom: 1.5rem;
}

.invoice__address {
  margin-bottom: 4rem;
}

.invoice__address h4 {
  font-weight: normal;
  margin-bottom: 1rem;
}

.invoice__attrs {
  margin-bottom: 2.5rem;
}

.invoice__attrs [class*="col-"] {
  padding: -10px;
}

.invoice__attrs__item {
  padding: 1.5rem 2rem;
  border-radius: 2px;
  text-align: center;
  background-color: #f6f6f6;
}

.invoice__attrs__item small {
  margin-bottom: 0.2rem;
  display: block;
  font-size: 1rem;
}

.invoice__attrs__item h3 {
  margin: 0;
  line-height: 100%;
  font-weight: normal;
}

.invoice__table {
  margin-bottom: 4rem;
}

.invoice__footer {
  text-align: center;
  margin: 4rem 0 1.5rem;
}

.invoice__footer > a {
  color: #707070;
}

@media print {
@page {
    margin: 0;
    size: auto;
}

  body {
    margin: 0mm 0mm 0mm 0mm !important;
    padding: 0mm !important;
  }

  .header,
  .actions,
  .content__title,
  .footer,
  .notifications,
  .navigation,
  .chat,
  .growl-animated,
  .btn--action {
    display: none !important;
  }

  .invoice {
    padding: 30px !important;
    -webkit-print-color-adjust: exact !important;
  }
}

.login {
  min-height: 100vh;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  padding-top: 1.2rem;
}

.login__block {
  max-width: 330px;
  width: 100%;
  display: none;
  text-align: center;
  padding: 1.2rem;
  animation-name: fadeInUp;
  animation-duration: 300ms;
  animation-fill-mode: both;
  background-color: #FFFFFF;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
}

@media (min-width: 576px) {
  .login__block:hover .login__block__actions .dropdown {
    display: block;
  }
}

.login__block.active {
  z-index: 10;
  display: inline-block;
}

.login__block__header {
  padding: 1.5rem;
  margin-top: -2.4rem;
  position: relative;
  color: #FFFFFF;
  border-radius: 2px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.18);
}

.login__block__header > i,
.login__block__header > img {
  display: block;
  margin-bottom: 0.8rem;
}

.login__block__header > i {
  font-size: 3rem;
}

.login__block__header > img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.33);
}

.login__block__actions {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
}

.login__block__actions .dropdown:not(.show) {
  display: none;
}

.login__block__body {
  padding: 1rem;
}

.login__block__btn {
  margin-top: 0.5rem;
}

.login__block__btn,
.login__block__btn:hover,
.login__block__btn:focus {
  color: #FFFFFF;
}

.login__block__btn:hover {
  opacity: 0.9;
}

.todo__item {
  padding-left: 4.5rem;
  display: block;
}

.todo__item small {
  display: block;
  font-size: 0.95rem;
  margin-top: 0.2rem;
}

.todo__item .custom-control-input:checked ~ .todo__info {
  text-decoration: line-through;
}

.todo__item .custom-control-input:checked ~ .custom-control--char__helper > i {
  background-color: #e9e9e9 !important;
}

.todo__item .custom-control-input:checked ~ .custom-control--char__helper:after {
  color: #5E5E5E;
}

.todo__info > span {
  color: #333;
}

.todo__info > small {
  color: #4f5861;
}

.todo__labels > a {
  color: #ffc107;
  border: 2px solid #ffdb6d;
  border-radius: 2px;
  padding: 0.35rem 0.8rem;
  display: inline-block;
  margin: 0 0.1rem 0.4rem;
  transition: color 300ms, border-color 300ms;
}

.todo__labels > a:hover {
  color: #edb100;
}

.notes__item {
  margin-bottom: 30px;
}

.notes__item > a {
  height: 155px;
  background-color: #FFFFFF;
  display: block;
  padding: 1.8rem 2rem;
  position: relative;
  color: #707070;
  transition: background-color 300ms;
}

.notes__item > a,
.notes__item > a:before {
  border-radius: 2px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.08);
}

.notes__item > a:before {
  content: '';
  position: absolute;
  width: calc(100% - 10px);
  bottom: -5px;
  left: 5px;
  z-index: -1;
  height: 20px;
  background-color: #FFFFFF;
  transition: bottom 200ms;
}

.notes__item:hover > a:before {
  bottom: -8px;
}

.notes__item:hover .notes__actions {
  opacity: 1;
}

.notes__title {
  color: #333;
  margin-bottom: 1rem;
  font-size: 1.1rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.notes__actions {
  position: absolute;
  right: 2.2rem;
  bottom: 1rem;
  font-size: 1.1rem;
  width: 2.2rem;
  height: 2.2rem;
  text-align: center;
  background: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
  line-height: 2.2rem;
  color: #FFFFFF;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 300ms;
  cursor: pointer;
}

.notes__actions:hover {
  background: rgba(0, 0, 0, 0.9);
}

.note-view .trumbowyg-box {
  border: 0;
}

.note-view__field {
  border-bottom: 1px solid #f1f1f1;
}

.note-view__field input {
  border: 0;
  font-size: 1rem;
  padding: 1.7rem 2rem;
  height: auto;
}

.note-view__field--color {
  padding: 1.2rem 2rem 0.8rem;
}

.note-view__label {
  float: left;
  margin: 0.4rem 1.5rem 0 0;
}

[data-ma-theme="green"] .header,
[data-ma-theme="green"] .login__block__header,
[data-ma-theme="green"] .login__block__btn {
  background-color: #32c787;
}

[data-ma-theme="green"] .navigation__sub--active > a,
[data-ma-theme="green"] .navigation__active > a,
[data-ma-theme="green"] .navigation__active:before {
  color: #32c787;
}

[data-ma-theme="green"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #32c787;
}

[data-ma-theme="blue"] .header,
[data-ma-theme="blue"] .login__block__header,
[data-ma-theme="blue"] .login__block__btn {
  background-color: #2196F3;
}

[data-ma-theme="blue"] .navigation__sub--active > a,
[data-ma-theme="blue"] .navigation__active > a,
[data-ma-theme="blue"] .navigation__active:before {
  color: #2196F3;
}

[data-ma-theme="blue"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #2196F3;
}

[data-ma-theme="red"] .header,
[data-ma-theme="red"] .login__block__header,
[data-ma-theme="red"] .login__block__btn {
  background-color: #ff5652;
}

[data-ma-theme="red"] .navigation__sub--active > a,
[data-ma-theme="red"] .navigation__active > a,
[data-ma-theme="red"] .navigation__active:before {
  color: #ff5652;
}

[data-ma-theme="red"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #ff5652;
}

[data-ma-theme="orange"] .header,
[data-ma-theme="orange"] .login__block__header,
[data-ma-theme="orange"] .login__block__btn {
  background-color: #FF9800;
}

[data-ma-theme="orange"] .navigation__sub--active > a,
[data-ma-theme="orange"] .navigation__active > a,
[data-ma-theme="orange"] .navigation__active:before {
  color: #FF9800;
}

[data-ma-theme="orange"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #FF9800;
}

[data-ma-theme="teal"] .header,
[data-ma-theme="teal"] .login__block__header,
[data-ma-theme="teal"] .login__block__btn {
  background-color: #39bbb0;
}

[data-ma-theme="teal"] .navigation__sub--active > a,
[data-ma-theme="teal"] .navigation__active > a,
[data-ma-theme="teal"] .navigation__active:before {
  color: #39bbb0;
}

[data-ma-theme="teal"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #39bbb0;
}

[data-ma-theme="cyan"] .header,
[data-ma-theme="cyan"] .login__block__header,
[data-ma-theme="cyan"] .login__block__btn {
  background-color: #00BCD4;
}

[data-ma-theme="cyan"] .navigation__sub--active > a,
[data-ma-theme="cyan"] .navigation__active > a,
[data-ma-theme="cyan"] .navigation__active:before {
  color: #00BCD4;
}

[data-ma-theme="cyan"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #00BCD4;
}

[data-ma-theme="blue-grey"] .header,
[data-ma-theme="blue-grey"] .login__block__header,
[data-ma-theme="blue-grey"] .login__block__btn {
  background-color: #607D8B;
}

[data-ma-theme="blue-grey"] .navigation__sub--active > a,
[data-ma-theme="blue-grey"] .navigation__active > a,
[data-ma-theme="blue-grey"] .navigation__active:before {
  color: #607D8B;
}

[data-ma-theme="blue-grey"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #607D8B;
}

[data-ma-theme="purple"] .header,
[data-ma-theme="purple"] .login__block__header,
[data-ma-theme="purple"] .login__block__btn {
  background-color: #d559ea;
}

[data-ma-theme="purple"] .navigation__sub--active > a,
[data-ma-theme="purple"] .navigation__active > a,
[data-ma-theme="purple"] .navigation__active:before {
  color: #d559ea;
}

[data-ma-theme="purple"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #d559ea;
}

[data-ma-theme="indigo"] .header,
[data-ma-theme="indigo"] .login__block__header,
[data-ma-theme="indigo"] .login__block__btn {
  background-color: #3F51B5;
}

[data-ma-theme="indigo"] .navigation__sub--active > a,
[data-ma-theme="indigo"] .navigation__active > a,
[data-ma-theme="indigo"] .navigation__active:before {
  color: #3F51B5;
}

[data-ma-theme="indigo"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #3F51B5;
}

[data-ma-theme="lime"] .header,
[data-ma-theme="lime"] .login__block__header,
[data-ma-theme="lime"] .login__block__btn {
  background-color: #CDDC39;
}

[data-ma-theme="lime"] .navigation__sub--active > a,
[data-ma-theme="lime"] .navigation__active > a,
[data-ma-theme="lime"] .navigation__active:before {
  color: #CDDC39;
}

[data-ma-theme="lime"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #CDDC39;
}

[data-ma-theme="base"] .header,
[data-ma-theme="base"] .login__block__header,
[data-ma-theme="base"] .login__block__btn {
  background-color: #09156f;
}

[data-ma-theme="base"] .navigation__sub--active > a,
[data-ma-theme="base"] .navigation__active > a,
[data-ma-theme="base"] .navigation__active:before {
  color: #09156f;
}

[data-ma-theme="base"] .top-menu > li.active {
  box-shadow: inset 0 -2px 0 #09156f;
}

.theme-switch .btn-group--colors {
  display: block;
}

.ie-warning {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF;
  z-index: 1000000;
  text-align: center;
  padding: 3rem;
  overflow: auto;
}

.ie-warning > h1 {
  font-size: 2rem;
}

.ie-warning p {
  font-size: 1.2rem;
  color: #4f5861;
}

.ie-warning__downloads {
  background-color: #f6f6f6;
  padding: 30px 0;
  margin: 30px 0;
}

.ie-warning__downloads > a {
  padding: 0 10px;
}

.error {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: center;
      justify-content: center;
  height: 100vh;
  width: 100%;
}

.error__inner {
  max-width: 600px;
  width: 100%;
  padding: 1rem;
  text-align: center;
}

.error__inner > h1 {
  font-size: 8rem;
  font-weight: bold;
  color: #FFFFFF;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.03);
  line-height: 100%;
  margin-bottom: 1.5rem;
}

.error__inner > h2 {
  color: #707070;
  font-weight: normal;
  margin: 1.3rem 0;
  font-size: 1.5rem;
}

.error__inner > p {
  color: #969696;
  font-size: 1.1rem;
}

.widget-past-days {
  background-color: #39bbb0;
  overflow: hidden;
}

.widget-past-days__main {
  margin: 0 -10px;
}

.widget-past-days__chart {
  opacity: 0.75;
  margin: 0.55rem 0 0 auto;
}

.widget-past-days__info small {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.9);
}

.widget-past-days__info h3 {
  margin: 0;
  color: #FFFFFF;
  font-weight: normal;
}

.widget-visitors__stats {
  margin: 0 -0.5rem 2rem;
}

.widget-visitors__stats::after {
  display: block;
  content: "";
  clear: both;
}

.widget-visitors__stats > div {
  border: 1px solid white;
  padding: 1.1rem 1.5rem;
  float: left;
  margin: 0 0.5rem;
  width: calc(50% - 1rem);
}

.widget-visitors__stats > div > strong {
  font-size: 1.9rem;
  font-weight: normal;
  line-height: 100%;
  color: #333;
}

.widget-visitors__stats > div > small {
  display: block;
  color: #4f5861;
  font-size: 0.9rem;
  line-height: 100%;
  margin-top: 0.25rem;
}

.widget-visitors__map {
  width: 100%;
  height: 250px;
}

.widget-visitors__country {
  height: 1rem;
  width: 1.5rem;
  vertical-align: top;
  position: relative;
  margin-right: 0.25rem;
  left: -0.1rem;
  border-radius: 1px;
}

.widget-pie {
  background-color: #ff5652;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.widget-pie::after {
  display: block;
  content: "";
  clear: both;
}

.widget-pie__item {
  padding: 20px 0;
  text-align: center;
}

.widget-pie__item:nth-child(2n) {
  background-color: rgba(255, 255, 255, 0.1);
}

.widget-pie__title {
  color: #FFFFFF;
}

.quick-stats__item {
  padding: 1.5rem 1.5rem 1.45rem;
  border-radius: 2px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08);
  margin-bottom: 30px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: baseline;
      align-items: baseline;
}

.quick-stats__item::after {
  display: block;
  content: "";
  clear: both;
}

.quick-stats__chart,
.quick-stats__info {
  display: inline-block;
  vertical-align: middle;
}

.quick-stats__info {
  min-width: 0;
}

.quick-stats__info > h2,
.quick-stats__info > small {
  line-height: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.quick-stats__info > h2 {
  font-weight: normal;
  margin: 0;
  font-size: 1.6rem;
  color: #FFFFFF;
}

.quick-stats__info > small {
  font-size: 1rem;
  display: block;
  color: rgba(255, 255, 255, 0.8);
  margin-top: 0.6rem;
}

.quick-stats__chart {
  margin-left: auto;
  padding-left: 1.2rem;
}

@media (min-width: 576px) and (max-width: 1199px) {
  .quick-stats__chart {
    display: none;
  }
}

.stats {
  padding-top: 1rem;
}

.stats__item {
  background-color: #FFFFFF;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
  margin-bottom: 30px;
  padding: 1rem;
}

.stats__chart {
  border-radius: 2px;
  padding-top: 2rem;
  margin-top: -2rem;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.stats__chart .flot-chart {
  margin: 0 -12px -12px;
}

.stats__info {
  padding: 1.8rem 1rem 0.5rem;
  position: relative;
  text-align: center;
}

.stats__info h2 {
  font-size: 1.5rem;
  margin: 0;
}

.stats__info small {
  display: block;
  font-size: 1rem;
  margin-top: 0.4rem;
  color: #4f5861;
}

.widget-pictures__body {
  margin: 0;
  padding: 2px;
  text-align: center;
}

.widget-pictures__body::after {
  display: block;
  content: "";
  clear: both;
}

.widget-pictures__body > a {
  padding: 2px;
  display: block;
}

.widget-pictures__body > a img {
  width: 100%;
  border-radius: 2px;
}

.widget-pictures__body > a:hover {
  opacity: 0.9;
}

.widget-ratings__star {
  font-size: 1.5rem;
  color: white;
  margin: 0.5rem 0 0;
}

.widget-ratings__star .active {
  color: #ffc107;
}

.widget-ratings__item {
  padding: 0.5rem 0;
}

.widget-ratings__item::after {
  display: block;
  content: "";
  clear: both;
}

.widget-ratings__item .float-left,
.widget-ratings__item .float-right {
  font-size: 1.15rem;
}

.widget-ratings__item .float-left .zmdi {
  font-size: 1.5rem;
  vertical-align: top;
  color: #ffc107;
  position: relative;
  top: 0.15rem;
  margin-left: 0.35rem;
}

.widget-ratings__item:last-child {
  padding-bottom: 0;
}

.widget-ratings__progress {
  overflow: hidden;
  padding: 0.6rem 1.5rem;
}

.widget-profile {
  background-color: #03A9F4;
}

.widget-profile .card-header {
  background-color: rgba(255, 255, 255, 0.1);
  text-align: center;
}

.widget-profile .card-header .btn--float {
  color: #03A9F4;
}

.widget-profile .avatar-char {
  background-color: rgba(255, 255, 255, 0.95);
  color: #03A9F4;
  margin-right: 1.2rem;
}

.widget-profile__img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  margin-bottom: 1.2rem;
  border: 5px solid rgba(255, 255, 255, 0.1);
}

.widget-profile__list {
  color: #FFFFFF;
}

.widget-profile__list .media {
  padding: 1rem 2rem;
}

.widget-profile__list .media:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.1);
}

.widget-profile__list .media-body strong {
  display: block;
  font-weight: 500;
}

.widget-profile__list .media-body small {
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.92rem;
}

.widget-contacts__map {
  display: block;
  padding: 3px;
}

.widget-contacts__map img {
  width: 100%;
  border-radius: 2px;
  margin: -20px 0 -1px;
}

.widget-signups {
  background-color: #607D8B;
}

.widget-signups .card-header {
  background-color: rgba(255, 255, 255, 0.08);
}

.widget-signups__list {
  text-align: center;
  padding: 2rem;
}

.widget-signups__list > a {
  vertical-align: top;
  margin: 4px 2px;
  display: inline-block;
}

.widget-signups__list .avatar-char {
  background-color: rgba(255, 255, 255, 0.1);
  color: #FFFFFF;
}

.widget-signups__list .avatar-char,
.widget-signups__list .avatar-img {
  margin: 0;
}

.flot-chart {
  height: 200px;
  display: block;
}

.flot-chart--sm {
  height: 100px;
}

.flot-chart--xs {
  height: 70px;
}

.flot-chart-legends {
  text-align: center;
  margin: 20px 0 -10px;
}

.flot-chart-legends table {
  display: inline-block;
}

.flot-chart-legends .legendColorBox > div > div {
  border-radius: 50%;
}

.flot-chart-legends .legendLabel {
  padding: 0 8px 0 3px;
}

.flot-tooltip {
  position: absolute;
  line-height: 100%;
  color: #707070;
  display: none;
  font-size: 0.95rem;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.08);
  border-radius: 2px;
  padding: 0.7rem 1rem;
  background-color: #FFFFFF;
  z-index: 99999;
}

#jqstooltip {
  text-align: center;
  padding: 5px 10px;
  border: 0;
  height: auto !important;
  width: auto !important;
  background: #FFFFFF;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
  border-radius: 2px;
}

#jqstooltip .jqsfield {
  font-size: 0.95rem;
  font-weight: 500;
  font-family: inherit;
  text-align: center;
  color: #707070;
}

#jqstooltip .jqsfield > span {
  display: none;
}

.select2-container--default .select2-selection--single {
  border-radius: 0;
  border: 0;
  background-color: transparent;
  border-bottom: 1px solid #f1f1f1;
  height: auto;
}

.select2-container--default .select2-selection--single:before {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 1;
  right: 0;
  bottom: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 8px 8px;
  border-color: transparent transparent #d1d1d1 transparent;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  display: none;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #636c72;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 1.25;
  padding: 0.65rem 0.1rem;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: 0;
}

.select2-container--default .select2-selection--multiple {
  background-color: transparent;
  border: 0;
  box-shadow: 0 1px 0 0 #f1f1f1;
  border-radius: 0;
  padding-bottom: 1px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  border-radius: 2px;
  border: 0;
  background-color: #f9f9f9;
  padding: 0.4rem 0.8rem;
  color: #464a4c;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  margin-right: 0.5rem;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered {
  padding: 0 0.1rem;
}

.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: transparent;
  opacity: 0.5;
}

.select2-container--default .selection {
  position: relative;
  display: block;
}

.select2-container--default .selection:before,
.select2-container--default .selection:after {
  content: '';
  position: absolute;
  height: 2px;
  width: 0;
  bottom: 0;
  transition: all 200ms;
  transition-timing-function: ease;
  background-color: #03A9F4;
}

.select2-container--default .selection:before {
  left: 50%;
}

.select2-container--default .selection:after {
  right: 50%;
}

.select2-container--open .selection:before,
.select2-container--open .selection:after {
  width: 50%;
}

.select2-dropdown {
  background-color: #FFFFFF;
  border: 0;
  border-radius: 2px;
  padding: 0.8rem 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.075);
  z-index: 9;
  animation-name: fadeIn;
  animation-duration: 300ms;
  animation-fill-mode: both;
}

.select2-dropdown .select2-results__option {
  padding: 0.65rem 1.5rem;
}

.select2-dropdown .select2-results__option--highlighted[aria-selected] {
  background-color: #f7f7f9;
  color: #1d1e1f;
}

.select2-dropdown .select2-results__option[aria-selected=true] {
  position: relative;
  padding-right: 1.5rem;
  background-color: #f7f7f9;
  color: #1d1e1f;
}

.select2-dropdown .select2-results__option[aria-selected=true]:before {
  font-family: "Material-Design-Iconic-Font";
  content: '\f26b';
  position: absolute;
  top: 0.45rem;
  right: 1.5rem;
  font-size: 1.3rem;
  color: #1d1e1f;
}

.select2-dropdown .select2-search--dropdown {
  margin-top: -0.5rem;
  border-bottom: 1px solid #f9f9f9;
  position: relative;
  margin-bottom: 1rem;
}

.select2-dropdown .select2-search--dropdown:before {
  font-family: "Material-Design-Iconic-Font";
  content: '\f1c3';
  font-size: 1.5rem;
  color: #707070;
  position: absolute;
  left: 1.4rem;
  top: 0.65rem;
}

.select2-dropdown .select2-search--dropdown .select2-search__field {
  border: 0;
  background-color: transparent;
  height: 2.8rem;
  color: #464a4c;
  padding-left: 3.5rem;
}

.dropzone {
  border: 0;
  background-color: #f6f6f6;
  border-radius: 2px;
  transition: border-color 300ms, background-color 300ms;
  min-height: 50px;
  position: relative;
}

.dropzone:before {
  font-family: "Material-Design-Iconic-Font";
  content: '\f22a';
  font-size: 2rem;
  color: #707070;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  margin: auto;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  background-color: #FFFFFF;
  border-radius: 50%;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
  opacity: 0;
  transition: opacity 300ms;
}

.dropzone .dz-preview.dz-file-preview .dz-image,
.dropzone .dz-preview.dz-image-preview .dz-image {
  border-radius: 2px;
  border: 3px solid #FFFFFF;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

.dropzone .dz-preview .dz-remove {
  position: absolute;
  top: -3px;
  right: -4px;
  z-index: 20;
  font-size: 0;
  width: 22px;
  height: 22px;
  background-color: #ff5652;
  border-radius: 50%;
  border: 2px solid #FFFFFF;
}

.dropzone .dz-preview .dz-remove:hover {
  background-color: #ff3d39;
  text-decoration: none;
}

.dropzone .dz-preview .dz-remove:before {
  content: '\f136';
  font-size: 0.8rem;
  font-family: "Material-Design-Iconic-Font";
  color: #FFFFFF;
  font-weight: bold;
  line-height: 19px;
  padding: 0 6px;
}

.dropzone .dz-message {
  transition: opacity 300ms;
}

.dropzone .dz-message span {
  font-size: 1.2rem;
  color: #969696;
  display: inline-block;
  border-radius: 2px;
  transition: color 300ms, box-shadow, 300ms;
  padding: 0.5rem 1.4rem 0.8rem;
  background-color: #FFFFFF;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.1);
}

.dropzone .dz-message span:before {
  content: '\f21e';
  font-family: "Material-Design-Iconic-Font";
  font-size: 1.6rem;
  display: inline-block;
  position: relative;
  top: 2px;
  margin-right: 0.8rem;
}

.dropzone:hover .dz-message span {
  color: #707070;
}

.dropzone:hover,
.dropzone.dz-drag-hover {
  background-color: #eeeeee;
}

.dropzone.dz-drag-hover .dz-message {
  opacity: 0;
}

.dropzone.dz-drag-hover:before {
  opacity: 1;
}

.noUi-target {
  border-radius: 0;
  box-shadow: none;
  border: 0;
  background: #e8e8e8;
  margin: 15px 0;
}

.noUi-horizontal {
  height: 2px;
}

.noUi-horizontal .noUi-handle {
  top: -5px;
  left: -1px;
}

.noUi-vertical {
  width: 3px;
}

.noUi-connect {
  background: #39bbb0;
  box-shadow: none;
}

.noUi-horizontal .noUi-handle,
.noUi-vertical .noUi-handle {
  width: 12px;
  height: 12px;
  border: 0;
  border-radius: 100%;
  box-shadow: none;
  cursor: pointer;
  position: relative;
  background-color: #39bbb0;
  transition: box-shadow 200ms, transform 200ms;
}

.noUi-horizontal .noUi-handle:before,
.noUi-horizontal .noUi-handle:after,
.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
  display: none;
}

.noUi-horizontal .noUi-handle.noUi-active,
.noUi-vertical .noUi-handle.noUi-active {
  transform: scale(1.3);
}

.noUi-horizontal .noUi-active,
.noUi-vertical .noUi-active {
  box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.04);
}

.input-slider--blue .noUi-connect {
  background: #03A9F4;
}

.input-slider--blue.noUi-horizontal .noUi-handle,
.input-slider--blue.noUi-vertical .noUi-handle {
  background-color: #03A9F4;
}

.input-slider--red .noUi-connect {
  background: #ff5652;
}

.input-slider--red.noUi-horizontal .noUi-handle,
.input-slider--red.noUi-vertical .noUi-handle {
  background-color: #ff5652;
}

.input-slider--amber .noUi-connect {
  background: #ffc107;
}

.input-slider--amber.noUi-horizontal .noUi-handle,
.input-slider--amber.noUi-vertical .noUi-handle {
  background-color: #ffc107;
}

.input-slider--green .noUi-connect {
  background: #32c787;
}

.input-slider--green.noUi-horizontal .noUi-handle,
.input-slider--green.noUi-vertical .noUi-handle {
  background-color: #32c787;
}

.easy-pie-chart {
  display: inline-block;
  position: relative;
}

.easy-pie-chart__value {
  position: absolute;
  left: 0;
  top: 0;
  text-align: center;
  width: 100%;
  height: 100%;
}

.easy-pie-chart__value:after {
  content: "%";
  font-size: 12px;
}

.easy-pie-chart__title {
  margin-top: -2px;
  line-height: 15px;
  font-size: 11px;
}

.dataTables_wrapper {
  margin-top: 20px;
}

.dataTables_wrapper .table {
  margin: 40px 0 20px;
}

.dataTables_length,
.dataTables_filter {
  font-size: 0;
  position: relative;
}

.dataTables_length:after,
.dataTables_filter:after {
  font-family: "Material-Design-Iconic-Font";
  position: absolute;
  left: 0;
  bottom: 6px;
  font-size: 1.3rem;
  color: #333;
}

.dataTables_length > label,
.dataTables_filter > label {
  margin: 0;
  width: 100%;
}

.dataTables_length > label select,
.dataTables_length > label input[type=search],
.dataTables_filter > label select,
.dataTables_filter > label input[type=search] {
  padding-left: 25px;
  font-size: 1rem;
  background: none;
  border: 0;
  height: 35px;
  border-radius: 0;
  width: 100%;
  border-bottom: 1px solid #f1f1f1;
}

.dataTables_length {
  float: right;
  margin-left: 20px;
}

.dataTables_length:before {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 1;
  right: 0;
  bottom: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 8px 8px;
  border-color: transparent transparent #d1d1d1 transparent;
}

@media (min-width: 576px) {
  .dataTables_length {
    min-width: 150px;
  }
}

@media (max-width: 575px) {
  .dataTables_length {
    display: none;
  }
}

.dataTables_length:after {
  content: '\f197';
}

.dataTables_length select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.dataTables_filter {
  overflow: hidden;
}

.dataTables_filter:after {
  content: '\f1c3';
}

.dataTables_filter > label:before,
.dataTables_filter > label:after {
  content: '';
  position: absolute;
  height: 2px;
  width: 0;
  bottom: 0;
  transition: all 200ms;
  transition-timing-function: ease;
  background-color: #03A9F4;
}

.dataTables_filter > label:before {
  left: 50%;
}

.dataTables_filter > label:after {
  right: 50%;
}

.dataTables_filter--toggled > label:before,
.dataTables_filter--toggled > label:after {
  width: 50%;
}

.dataTables_paginate {
  text-align: center;
}

.paginate_button {
  background-color: #efefef;
  display: inline-block;
  color: #8a8989;
  vertical-align: top;
  border-radius: 50%;
  margin: 0 1px 0 2px;
  font-size: 1rem;
  cursor: pointer;
  width: 2.5rem;
  height: 2.5rem;
  line-height: 2.5rem;
  text-align: center;
}

.paginate_button.current {
  background-color: #2ebcfc;
  color: #FFFFFF;
  cursor: default;
}

.paginate_button:not(.current):not(.disabled):hover,
.paginate_button:not(.current):not(.disabled):focus {
  background-color: #e2e2e2;
  color: #575656;
}

.paginate_button.current,
.paginate_button.disabled {
  cursor: default;
}

.paginate_button.previous,
.paginate_button.next {
  font-size: 0;
  position: relative;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .paginate_button.previous,
  .paginate_button.next {
    font-size: 1rem;
  }
}

.paginate_button.previous:before,
.paginate_button.next:before {
  font-family: "Material-Design-Iconic-Font";
  font-size: 1rem;
  line-height: 2.55rem;
}

.paginate_button.previous:before {
  content: '\F2FF';
}

.paginate_button.next:before {
  content: '\F301';
}

.paginate_button.disabled {
  opacity: 0.6;
}

.paginate_button.disabled:hover,
.paginate_button.disabled:focus {
  color: #8a8989;
}

.dataTables_info {
  text-align: center;
  margin-bottom: 25px;
  font-size: 0.9rem;
  color: #4f5861;
}

.dataTables_buttons {
  float: right;
  margin: 10px 0 0 30px;
}

.dataTables_buttons .actions__item {
  color: #707070 !important;
}

.dataTables_buttons .actions__item:hover {
  color: #000000 !important;
}

.dt-buttons {
  display: none;
}

.data-table-toggled {
  overflow: hidden;
}

.data-table-toggled .dataTables_buttons [data-table-action="fullscreen"]:before {
  content: '\f16c';
}

.flatpickr-calendar {
  border-radius: 2px;
  border: 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.075);
  width: auto;
  margin-top: -2px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.flatpickr-calendar:before,
.flatpickr-calendar:after {
  display: none;
}

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
  border-color: #f6f6f6;
  height: 60px;
}

.flatpickr-month {
  background-color: #39bbb0;
  color: #FFFFFF;
  height: 60px;
  border-radius: 2px 2px 0 0;
  margin-bottom: 10px;
}

.flatpickr-current-month {
  top: 18px;
  font-size: 1.3rem;
  font-weight: 500;
}

.flatpickr-current-month span.cur-month,
.flatpickr-current-month input.cur-year {
  font-weight: 500;
}

.flatpickr-current-month span.cur-month:hover {
  background-color: transparent;
}

.flatpickr-current-month .numInputWrapper:hover {
  background-color: transparent;
}

.flatpickr-current-month .numInputWrapper span {
  border: 0;
  right: -5px;
  padding: 0;
}

.flatpickr-current-month .numInputWrapper span:after {
  left: 3px;
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
  border-bottom-color: #FFFFFF;
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
  border-top-color: #FFFFFF;
}

.flatpickr-prev-month,
.flatpickr-next-month {
  width: 35px;
  height: 35px;
  line-height: 35px;
  border-radius: 50%;
  font-size: 1.5rem;
  top: 13px;
  padding: 0;
}

.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: #FFFFFF;
}

.flatpickr-prev-month {
  margin-left: 12px;
}

.flatpickr-next-month {
  margin-right: 12px;
}

.flatpickr-innerContainer {
  padding: 10px;
}

span.flatpickr-weekday {
  font-weight: 500;
  color: #333;
}

.flatpickr-day {
  font-size: 0.92rem;
  border: 0;
}

.flatpickr-day.selected,
.flatpickr-day.selected:hover {
  background-color: #39bbb0 !important;
}

.flatpickr-day.today,
.flatpickr-day.today:hover {
  background-color: #f6f6f6;
  color: #333;
}

.flatpickr-day:hover {
  background-color: #f6f6f6;
}

.flatpickr-time {
  max-height: 60px;
  height: 60px;
  line-height: 60px;
}

.flatpickr-time .numInputWrapper,
.flatpickr-time .flatpickr-am-pm {
  height: auto;
}

.flatpickr-time .numInputWrapper:hover,
.flatpickr-time .flatpickr-am-pm:hover {
  background-color: #f9f9f9;
}

.colorpicker {
  padding: 5px;
}

.colorpicker:before,
.colorpicker:after {
  display: none;
}

.colorpicker div {
  border-radius: 2px;
}

.colorpicker.colorpicker-horizontal {
  width: 160px;
}

.colorpicker.colorpicker-horizontal .colorpicker-hue,
.colorpicker.colorpicker-horizontal .colorpicker-alpha,
.colorpicker.colorpicker-horizontal .colorpicker-color {
  width: 100%;
}

.colorpicker-saturation {
  width: 150px;
  height: 150px;
}

.colorpicker-saturation i {
  border: 0;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.36);
}

.colorpicker-saturation i,
.colorpicker-saturation i b {
  height: 10px;
  width: 10px;
}

.colorpicker-hue,
.colorpicker-alpha {
  width: 20px;
  height: 150px;
}

.colorpicker-color,
.colorpicker-color div {
  height: 20px;
}

.color-picker__preview {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 20px;
  height: 20px;
  border-radius: 50%;
}

.trumbowyg-box,
.trumbowyg-editor {
  border-color: #f1f1f1;
  margin: 0;
}

.trumbowyg-button-pane {
  background-color: #FFFFFF;
  border-color: #f1f1f1;
}

.trumbowyg-button-pane:after {
  background-color: #f1f1f1;
}

.trumbowyg-button-pane .trumbowyg-button-group:not(:empty) + .trumbowyg-button-group:before {
  background-color: #f1f1f1;
}

.trumbowyg-dropdown {
  border: 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.075);
}

.trumbowyg-dropdown button {
  font-size: 1rem;
  height: 40px;
  padding: 0 1.5rem;
}

.trumbowyg-dropdown button svg {
  margin-top: -3px;
}

.trumbowyg-dropdown button:hover {
  background-color: #f7f7f9;
}

.trumbowyg-modal-box {
  font-size: 1rem;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.075);
}

.trumbowyg-modal-box .trumbowyg-modal-title {
  font-size: 1.2rem;
  color: #333;
  background-color: #FFFFFF;
  font-weight: 500;
  border: 0;
}

.trumbowyg-modal-box label {
  margin: 15px 20px;
  font-weight: normal;
}

.trumbowyg-modal-box label .trumbowyg-input-infos span {
  color: #333;
  border-color: #f1f1f1;
}

.trumbowyg-modal-box label input {
  border-color: #f1f1f1;
  font-size: 1rem;
  color: #464a4c;
}

.trumbowyg-modal-box label input:focus,
.trumbowyg-modal-box label input:hover {
  border-color: #e4e4e4;
}

.trumbowyg-modal-box .trumbowyg-modal-button {
  font-size: 1rem;
  height: auto;
  line-height: 100%;
  border-radius: 2px;
  padding: 7px 0;
  margin: 0 20px;
  bottom: 18px;
}

.fc-scroller {
  height: auto !important;
}

.fc th {
  font-weight: 500;
  padding: 12px 12px 10px;
  text-transform: uppercase;
}

.fc table {
  background: transparent;
}

.fc table tr > td:first-child {
  border-left-width: 0;
}

.fc div.fc-row {
  margin-right: 0;
  border: 0;
}

.fc-unthemed td.fc-today {
  background-color: transparent;
}

.fc-unthemed td.fc-today span {
  color: #ffc107;
}

.fc-event {
  padding: 0;
  font-size: 0.92rem;
  border-radius: 2px;
  border: 0;
}

.fc-event .fc-title {
  padding: 4px 8px;
  display: block;
  color: #FFFFFF;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 500;
}

.fc-event .fc-time {
  float: left;
  background: rgba(0, 0, 0, 0.2);
  padding: 2px 6px;
  margin: 0 0 0 -1px;
}

.fc-view,
.fc-view > table {
  border: 0;
  overflow: hidden;
}

.fc-view > table > tbody > tr .ui-widget-content {
  border-top: 0;
}

.fc-icon {
  font-family: "Material-Design-Iconic-Font";
  font-size: 1.5rem;
}

.fc-button {
  border: 0;
  background: transparent;
  box-shadow: none;
}

.calendar {
  z-index: 0;
}

.calendar td,
.calendar th {
  border-color: #f7f7f7;
}

.calendar .fc-toolbar {
  height: 250px;
  background-color: #FFFFFF;
  border-radius: 2px 2px 0 0;
  position: relative;
  margin-bottom: -2px;
  z-index: 2;
}

@media (max-width: 575px) {
  .calendar .fc-toolbar {
    height: 135px;
  }
}

.calendar .fc-day-number {
  padding: 6px 10px;
  width: 100%;
  box-sizing: border-box;
}

@media (min-width: 576px) {
  .calendar .fc-day-number {
    font-size: 1.5rem;
    color: #8a8989;
  }
}

.calendar .fc-day-header {
  text-align: left;
}

.calendar .fc-day-grid-event {
  margin: 1px 9px;
}

.widget-calendar td,
.widget-calendar th {
  border-color: transparent;
  text-align: center;
}

.widget-calendar .fc-toolbar h2 {
  font-size: 1.2rem;
  padding-top: 0.3rem;
}

.widget-calendar .fc-day-number {
  text-align: center;
  width: 100%;
  padding: 0;
}

.widget-calendar__year {
  font-size: 1.2rem;
  color: rgba(255, 255, 255, 0.8);
}

.widget-calendar__day {
  font-size: 1.5rem;
  line-height: 100%;
  color: #FFFFFF;
}

.widget-calendar__body {
  padding: 1rem;
  margin-top: 1rem;
}

.event-tag > span {
  border-radius: 50%;
  width: 30px;
  height: 30px;
  margin: 0 0 3px;
  position: relative;
  display: inline-block;
  vertical-align: top;
  cursor: pointer;
}

.event-tag > span,
.event-tag > span > i {
  transition: all 200ms;
}

.event-tag > span > input[type=radio] {
  margin: 0;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 2;
  cursor: pointer;
  opacity: 0;
}

.event-tag > span > input[type=radio]:checked + i {
  opacity: 1;
  transform: scale(1);
}

.event-tag > span:hover {
  opacity: 0.8;
}

.event-tag > span > i {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 4px 0 0 7px;
  opacity: 0;
  transform: scale(0);
}

.event-tag > span > i:before {
  content: '\f26b';
  font-family: "Material-Design-Iconic-Font";
  color: #FFFFFF;
  font-size: 1.2rem;
  z-index: 1;
}

[data-calendar-month] {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transition: background-image 300ms;
}

[data-calendar-month="0"] {
  background-image: url("/img/calendar/january.jpg");
}

[data-calendar-month="1"] {
  background-image: url("/img/calendar/february.jpg");
}

[data-calendar-month="2"] {
  background-image: url("/img/calendar/march.jpg");
}

[data-calendar-month="3"] {
  background-image: url("/img/calendar/april.jpg");
}

[data-calendar-month="4"] {
  background-image: url("/img/calendar/may.jpg");
}

[data-calendar-month="5"] {
  background-image: url("/img/calendar/june.jpg");
}

[data-calendar-month="6"] {
  background-image: url("/img/calendar/july.jpg");
}

[data-calendar-month="7"] {
  background-image: url("/img/calendar/august.jpg");
}

[data-calendar-month="8"] {
  background-image: url("/img/calendar/september.jpg");
}

[data-calendar-month="9"] {
  background-image: url("/img/calendar/october.jpg");
}

[data-calendar-month="10"] {
  background-image: url("/img/calendar/november.jpg");
}

[data-calendar-month="11"] {
  background-image: url("/img/calendar/december.jpg");
}

.swal2-modal {
  border-radius: 2px;
  padding: 2.5rem !important;
  font-family: "Roboto", sans-serif;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.075);
}

.swal2-modal .swal2-title {
  font-size: 1.1rem;
  position: relative;
  z-index: 1;
  color: #333;
  line-height: inherit;
  margin: 0 0 5px;
  font-weight: normal;
}

.swal2-modal .swal2-icon,
.swal2-modal .swal2-image {
  margin-top: 0;
  margin-bottom: 1.5rem;
}

.swal2-modal .swal2-content {
  color: #4f5861;
  font-size: 1rem;
  font-weight: normal;
}

.swal2-modal .swal2-buttonswrapper {
  margin-top: 30px;
}

.swal2-modal .swal2-buttonswrapper .btn {
  margin: 0 3px;
  box-shadow: none !important;
}

.swal2-container.in {
  background-color: rgba(0, 0, 0, 0.2);
}

.lg-outer .lg-thumb-outer {
  background-color: rgba(255, 255, 255, 0.1);
}

.lg-outer .lg-thumb-item {
  border-radius: 50%;
  width: 60px !important;
  display: inline-block;
  height: 60px;
  border: 0;
  float: none;
  margin: 0 5px;
}

.lg-outer .lg-thumb-item:hover {
  box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.1);
}

.lg-outer .lg-image {
  border-radius: 2px;
}

.lg-outer .lg-toogle-thumb {
  border-radius: 50%;
  color: #333;
  height: 51px;
  width: 51px;
  line-height: 41px;
  background-color: #FFFFFF;
  transition: all 500ms;
}

.lg-outer .lg-toogle-thumb:hover {
  color: #333;
}

.lg-outer:not(.lg-thumb-open) .lg-toogle-thumb {
  top: -70px;
}

.lg-outer.lg-thumb-open .lg-toogle-thumb {
  top: -26px;
}

.lg-thumb.group {
  padding: 20px 0;
}

.lg-slide em {
  font-style: normal;
}

.lg-slide em h3 {
  color: #FFFFFF;
  margin-bottom: 5px;
}

.lg-slide .video-cont {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.16), 0 2px 10px rgba(0, 0, 0, 0.12);
}

.lightbox > a {
  position: relative;
}

.lightbox > a:before,
.lightbox > a:after {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: all 300ms;
}

.lightbox > a:before {
  content: '\f1ee';
  font-family: "Material-Design-Iconic-Font";
  font-size: 2.3rem;
  color: #FFFFFF;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 25px;
  height: 25px;
  line-height: 25px;
  z-index: 2;
  transform: scale(2);
}

.lightbox > a:after {
  content: '';
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 1;
}

.lightbox > a:hover:before,
.lightbox > a:hover:after {
  opacity: 1;
}

.lightbox > a:hover:before {
  transform: scale(1);
}

.scrollbar-inner {
  height: 100%;
}

.scrollbar-inner > .scroll-element {
  transition: opacity 300ms;
  margin-right: 2px;
}

.scrollbar-inner > .scroll-element.scroll-y {
  width: 3px;
  right: 0;
}

.scrollbar-inner > .scroll-element.scroll-x {
  height: 3px;
  bottom: 0;
}

.scrollbar-inner > .scroll-element .scroll-bar,
.scrollbar-inner > .scroll-element .scroll-element_track {
  transition: background-color 300ms;
}

.scrollbar-inner > .scroll-element .scroll-element_track {
  background-color: transparent;
}

.scrollbar-inner:not(:hover) .scroll-element {
  opacity: 0;
}

.waves-effect {
  position: relative;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.waves-effect .waves-ripple {
  position: absolute;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  margin-top: -50px;
  margin-left: -50px;
  opacity: 0;
  transition: all 0.5s ease-out;
  transition-property: transform, opacity;
  transform: scale(0) translate(0, 0);
  pointer-events: none;
}

.waves-effect:not(.waves-light) .waves-ripple,
.waves-effect.btn-secondary .waves-ripple,
.waves-effect.btn-link .waves-ripple {
  background: rgba(0, 0, 0, 0.08);
}

.waves-effect.btn:not(.btn-secondary):not(.btn-link) .waves-ripple,
.waves-effect.waves-light .waves-ripple {
  background: rgba(255, 255, 255, 0.5);
}

.waves-effect.waves-classic .waves-ripple {
  background: rgba(0, 0, 0, 0.08);
}

.waves-effect.waves-classic.waves-light .waves-ripple {
  background: rgba(255, 255, 255, 0.5);
}

.waves-notransition {
  transition: none !important;
}

.waves-button,
.waves-circle {
  transform: translateZ(0);
  -webkit-mask-image: -webkit-radial-gradient(circle, #FFFFFF 100%, #000000 100%);
}

.waves-input-wrapper .waves-button-input {
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
  border: 0;
}

.waves-block {
  display: block;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlc291cmNlcy9hc3NldHMvc2Fzcy9iYXNlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmFyaWFibGVzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL19taXhpbnMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvX2Jvb3RzdHJhcC1pbXBvcnRzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9fbWl4aW5zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNpemUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2l6ZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zZm9ybXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXNpYmlsaXR5LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJkcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbmF2YmFyLWFsaWduLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZmxvYXQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX25vcm1hbGl6ZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9fcHJpbnQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL19jb2RlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2Zvcm1zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS1mb3Jtcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL19qdW1ib3Ryb24uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9fbWVkaWEuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX3Jlc3BvbnNpdmUtZW1iZWQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvX3V0aWxpdGllcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19jbGVhcmZpeC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NjcmVlbnJlYWRlcnMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLWltcG9ydHMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtaW1wb3J0cy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9fZHJvcGRvd24uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9fbWVkaWEuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9fcHJvZ3Jlc3Muc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9fY2FyZC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19idXR0b25zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX3RhYmxlcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19mb3Jtcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19pbnB1dC1ncm91cHMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9fY3VzdG9tLWZvcm1zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX3BhZ2luYXRpb24uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9fYWxlcnRzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX2Nsb3NlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX2JyZWFkY3J1bWJzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX2FjY29yZGlvbi5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19jYXJvdXNlbC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19tb2RhbC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19wb3BvdmVycy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL190YWJzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX3Rvb2x0aXAuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX2ZvbnRzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL19nZW5lcmljcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fYmFzZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fbGlzdC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fbGF5b3V0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL19taXNjLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL19oZWFkZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX2Zvb3Rlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fc2lkZWJhci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fY2hhdC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fY2hhcnRzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL190b2dnbGUtc3dpdGNoLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL19saXN0dmlldy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fcGFnZS1sb2FkZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX3Byb2ZpbGUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX3Bob3Rvcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fY29udGFjdHMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX2dyb3Vwcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fbWVzc2FnZXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX3ByaWNpbmctdGFibGUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX2ludm9pY2Uuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX2xvZ2luLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL190b2RvLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL19ub3Rlcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy9fdGhlbWUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX2llLXdhcm5pbmcuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvX2Vycm9yLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3dpZGdldHMvX3Bhc3QtZGF5cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy93aWRnZXRzL192aXNpdG9ycy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy93aWRnZXRzL19waWUtY2hhcnRzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3dpZGdldHMvX3F1aWNrLXN0YXRzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3dpZGdldHMvX3Bob3Rvcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy93aWRnZXRzL19yYXRpbmdzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3dpZGdldHMvX3Byb2ZpbGUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvd2lkZ2V0cy9fY29udGFjdC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy93aWRnZXRzL19zaWdudXBzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3ZlbmRvci1vdmVycmlkZXMvX2Zsb3Quc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvdmVuZG9yLW92ZXJyaWRlcy9fc3BhcmtsaW5lcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy92ZW5kb3Itb3ZlcnJpZGVzL19zZWxlY3QyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3ZlbmRvci1vdmVycmlkZXMvX2Ryb3B6b25lLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3ZlbmRvci1vdmVycmlkZXMvX25vdWlzbGlkZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvdmVuZG9yLW92ZXJyaWRlcy9fZWFzeS1waWUtY2hhcnRzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3ZlbmRvci1vdmVycmlkZXMvX2RhdGEtdGFibGVzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3ZlbmRvci1vdmVycmlkZXMvX2ZsYXRwaWNrci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy92ZW5kb3Itb3ZlcnJpZGVzL19ib290c3RyYXAtY29sb3JwaWNrZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvdmVuZG9yLW92ZXJyaWRlcy9fdHJ1bWJvd3lnLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvaW5jL3ZlbmRvci1vdmVycmlkZXMvX2Z1bGxjYWxlbmRhci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy92ZW5kb3Itb3ZlcnJpZGVzL19zd2VldGFsZXJ0Mi5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy92ZW5kb3Itb3ZlcnJpZGVzL19saWdodGdhbGxlcnkuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9pbmMvdmVuZG9yLW92ZXJyaWRlcy9fanF1ZXJ5LnNjcm9sbGJhci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2luYy92ZW5kb3Itb3ZlcnJpZGVzL19XYXZlcy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFZhcmlhYmxlc1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vIE1peGluc1xuQGltcG9ydCBcIi4vaW5jL21peGluc1wiO1xuXG5cbi8vIEJvb3RzdHJhcFxuQGltcG9ydCBcIi4vaW5jL2Jvb3RzdHJhcC1pbXBvcnRzL2Jvb3RzdHJhcC1pbXBvcnRzXCI7XG5cbi8vIEJvb3RzdHJhcCBvdmVycmlkZXNcbkBpbXBvcnQgXCIuL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL2Ryb3Bkb3duXCI7XG5AaW1wb3J0IFwiLi9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9tZWRpYVwiO1xuQGltcG9ydCBcIi4vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvcHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCIuL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL2NhcmRcIjtcbkBpbXBvcnQgXCIuL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCIuL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL3RhYmxlc1wiO1xuQGltcG9ydCBcIi4vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvZm9ybXNcIjtcbkBpbXBvcnQgXCIuL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL2lucHV0LWdyb3Vwc1wiO1xuQGltcG9ydCBcIi4vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwiLi9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiLi9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9hbGVydHNcIjtcbkBpbXBvcnQgXCIuL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL2Nsb3NlXCI7XG5AaW1wb3J0IFwiLi9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9icmVhZGNydW1ic1wiO1xuQGltcG9ydCBcIi4vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvYWNjb3JkaW9uXCI7XG5AaW1wb3J0IFwiLi9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9jYXJvdXNlbFwiO1xuQGltcG9ydCBcIi4vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvbW9kYWxcIjtcbkBpbXBvcnQgXCIuL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL3BvcG92ZXJzXCI7XG5AaW1wb3J0IFwiLi9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy90YWJzXCI7XG5AaW1wb3J0IFwiLi9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy90b29sdGlwXCI7XG5cblxuLy8gQ29yZSBzdHlsZXNcbkBpbXBvcnQgXCIuL2luYy9mb250c1wiO1xuQGltcG9ydCBcIi4vaW5jL2dlbmVyaWNzXCI7XG5AaW1wb3J0IFwiLi9pbmMvYmFzZVwiO1xuQGltcG9ydCBcIi4vaW5jL2xpc3RcIjtcbkBpbXBvcnQgXCIuL2luYy9sYXlvdXRcIjtcbkBpbXBvcnQgXCIuL2luYy9taXNjXCI7XG5AaW1wb3J0IFwiLi9pbmMvaGVhZGVyXCI7XG5AaW1wb3J0IFwiLi9pbmMvZm9vdGVyXCI7XG5AaW1wb3J0IFwiLi9pbmMvc2lkZWJhclwiO1xuQGltcG9ydCBcIi4vaW5jL2NoYXRcIjtcbkBpbXBvcnQgXCIuL2luYy9jaGFydHNcIjtcbkBpbXBvcnQgXCIuL2luYy90b2dnbGUtc3dpdGNoXCI7XG5AaW1wb3J0IFwiLi9pbmMvbGlzdHZpZXdcIjtcbkBpbXBvcnQgXCIuL2luYy9wYWdlLWxvYWRlclwiO1xuQGltcG9ydCBcIi4vaW5jL3Byb2ZpbGVcIjtcbkBpbXBvcnQgXCIuL2luYy9waG90b3NcIjtcbkBpbXBvcnQgXCIuL2luYy9jb250YWN0c1wiO1xuQGltcG9ydCBcIi4vaW5jL2dyb3Vwc1wiO1xuQGltcG9ydCBcIi4vaW5jL21lc3NhZ2VzXCI7XG5AaW1wb3J0IFwiLi9pbmMvcHJpY2luZy10YWJsZVwiO1xuQGltcG9ydCBcIi4vaW5jL2ludm9pY2VcIjtcbkBpbXBvcnQgXCIuL2luYy9sb2dpblwiO1xuQGltcG9ydCBcIi4vaW5jL3RvZG9cIjtcbkBpbXBvcnQgXCIuL2luYy9ub3Rlc1wiO1xuQGltcG9ydCBcIi4vaW5jL3RoZW1lXCI7XG5AaW1wb3J0IFwiLi9pbmMvaWUtd2FybmluZ1wiO1xuQGltcG9ydCBcIi4vaW5jL2Vycm9yXCI7XG5cblxuLy8gV2lkZ2V0c1xuQGltcG9ydCBcIi4vaW5jL3dpZGdldHMvcGFzdC1kYXlzXCI7XG5AaW1wb3J0IFwiLi9pbmMvd2lkZ2V0cy92aXNpdG9yc1wiO1xuQGltcG9ydCBcIi4vaW5jL3dpZGdldHMvcGllLWNoYXJ0c1wiO1xuQGltcG9ydCBcIi4vaW5jL3dpZGdldHMvcXVpY2stc3RhdHNcIjtcbkBpbXBvcnQgXCIuL2luYy93aWRnZXRzL3Bob3Rvc1wiO1xuQGltcG9ydCBcIi4vaW5jL3dpZGdldHMvcmF0aW5nc1wiO1xuQGltcG9ydCBcIi4vaW5jL3dpZGdldHMvcHJvZmlsZVwiO1xuQGltcG9ydCBcIi4vaW5jL3dpZGdldHMvY29udGFjdFwiO1xuQGltcG9ydCBcIi4vaW5jL3dpZGdldHMvc2lnbnVwc1wiO1xuXG5cbi8vIFZlbmRvciBvdmVycmlkZXNcbkBpbXBvcnQgXCIuL2luYy92ZW5kb3Itb3ZlcnJpZGVzL2Zsb3RcIjtcbkBpbXBvcnQgXCIuL2luYy92ZW5kb3Itb3ZlcnJpZGVzL3NwYXJrbGluZXNcIjtcbkBpbXBvcnQgXCIuL2luYy92ZW5kb3Itb3ZlcnJpZGVzL3NlbGVjdDJcIjtcbkBpbXBvcnQgXCIuL2luYy92ZW5kb3Itb3ZlcnJpZGVzL2Ryb3B6b25lXCI7XG5AaW1wb3J0IFwiLi9pbmMvdmVuZG9yLW92ZXJyaWRlcy9ub3Vpc2xpZGVyXCI7XG5AaW1wb3J0IFwiLi9pbmMvdmVuZG9yLW92ZXJyaWRlcy9lYXN5LXBpZS1jaGFydHNcIjtcbkBpbXBvcnQgXCIuL2luYy92ZW5kb3Itb3ZlcnJpZGVzL2RhdGEtdGFibGVzXCI7XG5AaW1wb3J0IFwiLi9pbmMvdmVuZG9yLW92ZXJyaWRlcy9mbGF0cGlja3JcIjtcbkBpbXBvcnQgXCIuL2luYy92ZW5kb3Itb3ZlcnJpZGVzL2Jvb3RzdHJhcC1jb2xvcnBpY2tlclwiO1xuQGltcG9ydCBcIi4vaW5jL3ZlbmRvci1vdmVycmlkZXMvdHJ1bWJvd3lnXCI7XG5AaW1wb3J0IFwiLi9pbmMvdmVuZG9yLW92ZXJyaWRlcy9mdWxsY2FsZW5kYXJcIjtcbkBpbXBvcnQgXCIuL2luYy92ZW5kb3Itb3ZlcnJpZGVzL3N3ZWV0YWxlcnQyXCI7XG5AaW1wb3J0IFwiLi9pbmMvdmVuZG9yLW92ZXJyaWRlcy9saWdodGdhbGxlcnlcIjtcbkBpbXBvcnQgXCIuL2luYy92ZW5kb3Itb3ZlcnJpZGVzL2pxdWVyeS5zY3JvbGxiYXJcIjtcbkBpbXBvcnQgXCIuL2luYy92ZW5kb3Itb3ZlcnJpZGVzL1dhdmVzXCI7IiwiLy8gT3B0aW9uc1xuJGVuYWJsZS10cmFuc2l0aW9uczogdHJ1ZTtcblxuJGdyaXNzLWxpdGU6I2JkYzNjNztcblxuXG4vLyBNYXRlcmlhbCBEZXNpZ24gQ29sb3JzXG4kYmFzZTogIzA5MTU2ZjtcbiRiYXNlLWJsYWNrOnJnYmEoMCwwLDAsMC42KTtcbi8vJHRleHQ6IzY3Njc2NztcbiR0ZXh0OiM0ZjU4NjE7XG4kdGV4dC1vdGhlcjojMzQzYTQwO1xuJHN1YnRleHQ6I0EzQUFCQTtcbiRyZWQ6ICNmZjU2NTI7XG4kcGluazogI2ZmODVhZjtcbiRwdXJwbGU6ICNkNTU5ZWE7XG4kZGVlcC1wdXJwbGU6ICM2NzNBQjc7XG4kaW5kaWdvOiAjM0Y1MUI1O1xuJGJsdWU6ICMyMTk2RjM7XG4kbGlnaHQtYmx1ZTogIzAzQTlGNDtcbiRjeWFuOiAjMDBCQ0Q0O1xuJHRlYWw6ICMzOWJiYjA7XG4kZ3JlZW46ICMzMmM3ODc7XG4kbGlnaHQtZ3JlZW46ICM4QkMzNEE7XG4kbGltZTogI0NEREMzOTtcbiR5ZWxsb3c6ICNGRkVCM0I7XG4kYW1iZXI6ICNmZmMxMDc7XG4kb3JhbmdlOiAjRkY5ODAwO1xuJGRlZXAtb3JhbmdlOiAjRkY1NzIyO1xuJGJyb3duOiAjNzk1NTQ4O1xuJGdyZXk6ICNkMGQwZDA7XG4kYmx1ZS1ncmV5OiAjNjA3RDhCO1xuJGJsYWNrOiAjMDAwMDAwO1xuJHdoaXRlOiAjRkZGRkZGO1xuJG1lZGlhOiAjY2ZkOGRkO1xuXG5cbi8vIEJvb3RzdHJhcCBDb2xvcnNcbiRicmFuZC1wcmltYXJ5OiAkYmx1ZTtcbiRicmFuZC1zdWNjZXNzOiAkZ3JlZW47XG4kYnJhbmQtaW5mbzogJGN5YW47XG4kYnJhbmQtd2FybmluZzogJGFtYmVyO1xuJGJyYW5kLWRhbmdlcjogJHJlZDtcbiRncmF5LWxpZ2h0ZXI6ICNmNmY2ZjY7XG5cblxuLy8gQ29tbW9uIENvbG9yc1xuJGhvdmVyLWJnOiAjZjlmOWY5O1xuJGJvcmRlci1saWdodDogI2YzZjNmMztcbiRoci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAwLjA1KTtcblxuXG4vLyBPcHRpb25zXG4kZW5hYmxlLXNoYWRvd3M6IHRydWU7XG5cblxuLy8gQnV0dG9uc1xuJGJ0bi1ib3gtc2hhZG93OiAwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xMik7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6IG5vbmU7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiBub25lO1xuJGJ0bi1zZWNvbmRhcnktYm9yZGVyOiAjZWZlZmVmO1xuJGJ0bi1saW5lLWhlaWdodDogMTAwJTtcbiRidG4tcGFkZGluZy15OiAwLjZyZW07XG5cblxuLy8gVHlwb2dyYXBoeVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LWljb246ICdNYXRlcmlhbC1EZXNpZ24tSWNvbmljLUZvbnQnO1xuJGZvbnQtc2l6ZS1yb290OiAxM3B4O1xuJHRleHQtbXV0ZWQ6ICM0ZjU4NjE7XG4kaGVhZGluZ3MtY29sb3I6ICMzMzM7XG4kZm9udC13ZWlnaHQtYm9sZDogNTAwO1xuXG5cbi8vIExpbmtzXG4kbGluay1jb2xvcjogJGxpZ2h0LWJsdWU7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiBub25lO1xuXG4vLyBCb2R5XG4kYm9keS1iZzogI2YzZjNmMztcbiRib2R5LWNvbG9yOiAjNzA3MDcwO1xuXG5cbi8vIEZvcm1cbiRpbnB1dC1iZzogdHJhbnNwYXJlbnQ7XG4kZm9ybS1jaGVjay1ib3JkZXItY29sb3I6ICM3YTdhN2E7XG4kaW5wdXQtYm94LXNoYWRvdzogcmdiYSgwLDAsMCwwKTtcbiRpbnB1dC1wYWRkaW5nLXg6IDAuMXJlbTtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6IDAuMXJlbTtcbiRpbnB1dC1wYWRkaW5nLXgtc206IDAuMXJlbTtcbiRpbnB1dC1wYWRkaW5nLXk6IDAuNjVyZW07XG4kaW5wdXQtcGFkZGluZy15LXNtOiAwLjVyZW07XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAjZjFmMWYxO1xuJGlucHV0LWJvcmRlci1yYWRpdXM6IDA7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuJGlucHV0LWJnLWRpc2FibGVkOiB0cmFuc3BhcmVudDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAwO1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206IDA7XG4kaW5wdXQtYm9yZGVyLXJhZGl1czogMDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206IDJyZW07XG5cblxuLy8gQ3VzdG9tIEZvcm1zXG4kY3VzdG9tLWNvbnRyb2wtZm9jdXMtaW5kaWNhdG9yLWJveC1zaGFkb3c6IG5vbmU7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6IG5vbmU7XG4kY3VzdG9tLWNvbnRyb2wtZm9jdXMtaW5kaWNhdG9yLWJveC1zaGFkb3c6IG5vbmU7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6IDEuMzA4cmVtO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogdHJhbnNwYXJlbnQ7XG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAycmVtO1xuJGN1c3RvbS1jaGVja2JveC1jaGVja2VkLWljb246IG5vbmU7XG4kY3VzdG9tLXJhZGlvLWNoZWNrZWQtaWNvbjogbm9uZTtcbiRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1iZzogdHJhbnNwYXJlbnQ7XG4kY3VzdG9tLWNvbnRyb2wtYWN0aXZlLWluZGljYXRvci1iZzogdHJhbnNwYXJlbnQ7XG4kY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtaW5kaWNhdG9yLWJnOiB0cmFuc3BhcmVudDtcbiRjdXN0b20tY29udHJvbC1hY3RpdmUtaW5kaWNhdG9yLWNvbG9yOiAkd2hpdGU7XG4kY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItY29sb3I6ICR3aGl0ZTtcblxuXG4vLyBMYXlvdXRcbiRjb250ZW50LXRpdGxlLWhlYWRpbmctY29sb3I6ICM2NzY3Njc7XG5cblxuLy8gSGVhZGVyXG4kaGVhZGVyLWhlaWdodDogNzJweDtcbiRoZWFkZXItc2hhZG93OiAwIDFweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiRoZWFkZXItei1pbmRleDogMTA7XG5cblxuLy8gRHJvcGRvd25cbiRkcm9wZG93bi1tYXJnaW4tdG9wOiAwO1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogMDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLDAsMCwuMDc1KTtcbiRkcm9wZG93bi1saW5rLWNvbG9yOiAjNEM0QzRDO1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI2VlZWVlZTtcbiRkcm9wZG93bi1wYWRkaW5nLXk6IDAuOHJlbTtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogMS41cmVtO1xuXG5cbi8vIEJvcmRlciBSYWRpdXNcbiRib3JkZXItcmFkaXVzOiAycHg7XG4kYm9yZGVyLXJhZGl1cy1sZzogMnB4O1xuJGJvcmRlci1yYWRpdXMtc206IDJweDtcblxuXG4vLyBMaXN0IEdyb3VwXG4kbGlzdC1ncm91cC1iZzogdHJhbnNwYXJlbnQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6IDA7XG4kbGlzdC1ncm91cC1ob3Zlci1iZzogJGhvdmVyLWJnO1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAkbGlnaHQtYmx1ZTtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAycmVtO1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6IDFyZW07XG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAkdGV4dC1tdXRlZDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogJGJsYWNrO1xuXG5cbi8vIFByZWdyZXNzIEJhclxuJHByb2dyZXNzLWJveC1zaGFkb3c6IG5vbmU7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAkYmx1ZTtcbiRwcm9ncmVzcy1iZzogI2VlZTtcbiRwcm9ncmVzcy1oZWlnaHQ6IDNweDtcblxuXG4vLyBDYXJkXG4kY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyOiAkYm9yZGVyLXJhZGl1cztcbiRjYXJkLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiRjYXJkLXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4wNzUpO1xuJGNhcmQtc3BhY2VyLXg6IDIuMXJlbTtcbiRjYXJkLXNwYWNlci15OiAycmVtO1xuJGNhcmQtY2FwLWJnOiB0cmFuc3BhcmVudDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6IDA7XG4kY2FyZC1oaWdobGlnaHQtYmc6ICNmOWY5Zjk7XG5cblxuLy8gU2lkZWJhcnNcbiRzaWRlYmFyLXdpZHRoOiAyNzBweDtcbiRzaWRlYmFyLXotaW5kZXg6ICRoZWFkZXItei1pbmRleCAtIDE7XG4kbmF2aWdhdGlvbi1saW5rLWNvbG9yOiAkYm9keS1jb2xvcjtcbiRuYXZpZ2F0aW9uLWxpbmstYWN0aXZlLWNvbG9yOiAkd2hpdGU7XG4kbmF2aWdhdGlvbi1saW5rLWFjdGl2ZS1iZzogcmdiYSgkYmxhY2ssIDAuMDMpO1xuJG5hdmlnYXRpb24tbGluay1ob3Zlci1iZzogcmdiYSgkYmxhY2ssIDAuMDMpO1xuXG5cbi8vIFRhYmVsc1xuJHRhYmxlLWJvcmRlci1jb2xvcjogI2YyZjJmMjtcbiR0YWJsZS1pbnZlcnNlLWJnOiAjNDA0YzU0O1xuJHRhYmxlLWludmVyc2UtYm9yZGVyLWNvbG9yOiAjNTA1YjYzO1xuJHRhYmxlLWJnLWFjY2VudDogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiR0YWJsZS1iZy1ob3ZlcjogJHRhYmxlLWJnLWFjY2VudDtcbiR0YWJsZS1jZWxsLXBhZGRpbmc6IDFyZW0gMS41cmVtO1xuJHRhYmxlLXNtLWNlbGwtcGFkZGluZzogMC43NXJlbSAxcmVtO1xuJHRhYmxlLWhlYWQtYmc6ICNmYmZiZmI7XG5cbi8vIFBhZ2luYXRpb25cbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogMDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogMDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogMDtcbiRwYWdpbmF0aW9uLWJnOiAjZWZlZmVmO1xuJHBhZ2luYXRpb24taG92ZXItYmc6IGRhcmtlbigkcGFnaW5hdGlvbi1iZywgNSUpO1xuJHBhZ2luYXRpb24tY29sb3I6IGxpZ2h0ZW4oJGJvZHktY29sb3IsIDEwJSk7XG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogZGFya2VuKCRwYWdpbmF0aW9uLWNvbG9yLCA1JSk7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogJHBhZ2luYXRpb24tYmc7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6IGxpZ2h0ZW4oJGxpZ2h0LWJsdWUsIDEwJSk7XG5cblxuLy8gSW5wdXQgR3JvdXBcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6IHRyYW5zcGFyZW50O1xuXG5cbi8vIENvZGVcbiRwcmUtYmc6IGxpZ2h0ZW4oJGJsYWNrLCAyMCUpO1xuJHByZS1ib3JkZXItY29sb3I6ICRwcmUtYmc7XG4kcHJlLWNvbG9yOiAkd2hpdGU7XG5cblxuLy8gQWxlcnRcbiRhbGVydC1wYWRkaW5nLXk6IDE4cHg7XG4kYWxlcnQtcGFkZGluZy14OiAyNHB4O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6IDUwMDtcbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICR3aGl0ZTtcbiRzdGF0ZS1zdWNjZXNzLWJnOiBsaWdodGVuKCRncmVlbiwgMTAlKTtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogJHN0YXRlLXN1Y2Nlc3MtYmc7XG4kc3RhdGUtaW5mby10ZXh0OiAkd2hpdGU7XG4kc3RhdGUtaW5mby1iZzogbGlnaHRlbigkbGlnaHQtYmx1ZSwgMTAlKTtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogJHN0YXRlLWluZm8tYmc7XG4kc3RhdGUtd2FybmluZy10ZXh0OiAkd2hpdGU7XG4kc3RhdGUtd2FybmluZy1iZzogbGlnaHRlbigkYW1iZXIsIDUlKTtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogJHN0YXRlLXdhcm5pbmctYmc7XG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICR3aGl0ZTtcbiRzdGF0ZS1kYW5nZXItYmc6IGxpZ2h0ZW4oJHJlZCwgNSUpO1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICRzdGF0ZS1kYW5nZXItYmc7XG5cblxuLy8gQ2xvc2VcbiRjbG9zZS1mb250LXdlaWdodDogbm9ybWFsO1xuJGNsb3NlLXRleHQtc2hhZG93OiBub25lO1xuXG5cbi8vIEJhZGdlc1xuJGJhZGdlLXBhZGRpbmcteTogMC40cmVtO1xuJGJhZGdlLXBhZGRpbmcteDogMC41NXJlbTtcbiRiYWRnZS1mb250LXNpemU6IDg1JTtcbiRiYWRnZS1mb250LXdlaWdodDogNTAwO1xuXG5cbi8vIEJyZWFkY3J1bWJzXG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAnXFxmMzBmJztcbiRicmVhZGNydW1iLWJnOiB0cmFuc3BhcmVudDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogMC4yNXJlbTtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogJHRleHQtbXV0ZWQ7XG5cbi8vIENhcm9zdWVsXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6IG5vbmU7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6IG5vbmU7XG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiA0MHB4O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogMC44O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6IHJnYmEoJHdoaXRlLCAwLjkpO1xuXG5cbi8vIE1vZGFsXG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogMC4yO1xuJG1vZGFsLWNvbnRlbnQteHMtYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDAsMCwwLC4wNyk7XG4kbW9kYWwtY29udGVudC1zbS11cC1ib3gtc2hhZG93OiAkbW9kYWwtY29udGVudC14cy1ib3gtc2hhZG93O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAwO1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6IDA7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogMDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogMjVweCAzMHB4IDA7XG4kbW9kYWwtaW5uZXItcGFkZGluZzogMjVweCAzMHB4O1xuXG5cbi8vIFBvcG92ZXJzXG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6IDA7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAwIDJweCAzMHB4IHJnYmEoMCwwLDAsLjE1KTtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiRwb3BvdmVyLWlubmVyLXBhZGRpbmc6IDE1cHggMTBweDtcbiRwb3BvdmVyLXRpdGxlLWJnOiAkd2hpdGU7XG5cblxuLy8gU29ydGFibGVcbiRzb3J0YWJsZS1ib3JkZXItY29sb3I6ICNmNmY2ZjY7XG5cblxuLy8gVGFic1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogMnB4O1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogI2VlZTtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAwO1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiB0cmFuc3BhcmVudDtcbiRuYXYtbGluay1wYWRkaW5nOiAxcmVtIDEuMnJlbTtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuXG5cbi8vIFRvb2x0aXBzXG4kdG9vbHRpcC1wYWRkaW5nLXk6IDAuN3JlbTtcbiR0b29sdGlwLXBhZGRpbmcteDogIDEuMXJlbTtcbiR0b29sdGlwLWJnOiAjNjc2NzY3O1xuJHRvb2x0aXAtb3BhY2l0eTogMTtcblxuXG4vLyBCYWNrZHJvcFxuJGJhY2tkcm9wLXotaW5kZXg6IDEwMDtcblxuXG4vLyBMaXN0dmlld1xuJGxpc3R2aWV3LWl0ZW0tYWN0aXZlLWJnOiByZ2JhKCRibGFjaywgMC4wMzUpO1xuJGxpc3R2aWV3LWludmVydC1pdGVtLWFjdGl2ZS1iZzogcmdiYSgkd2hpdGUsIDAuMDI1KTtcbiRsaXN0dmlldy1pdGVtLWhvdmVyLWJnOiByZ2JhKCRibGFjaywgMC4wMzUpO1xuJGxpc3R2aWV3LWludmVydC1pdGVtLWhvdmVyLWJnOiByZ2JhKCR3aGl0ZSwgMC4wMjUpO1xuJGxpc3R2aWV3LWl0ZW0tc3RyaXBlZC1iZzogcmdiYSgkYmxhY2ssIDAuMDM1KTtcbiRsaXN0dmlldy1pbnZlcnQtaXRlbS1zdHJpcGVkLWJnOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiRsaXN0dmlldy1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAwLjA0KTtcbiIsIi8vIENTUyBBbmltYXRpb25zIGJhc2VkIG9uIGFuaW1hdGUuY3NzXG5AbWl4aW4gYW5pbWF0ZSgkbmFtZSwgJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi8vIENhcmRcbkBtaXhpbiBjYXJkKCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBib3gtc2hhZG93OiAkY2FyZC1zaGFkb3c7XG59XG5cbi8vIEZvbnQgSWNvbiAoZm9yIGJlZm9yZS9hZnRlciBjb250ZW50KVxuQG1peGluIGZvbnQtaWNvbigkY29udGVudCwgJGZvbnQtc2l6ZSkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWljb247XG4gIGNvbnRlbnQ6ICRjb250ZW50O1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG59XG5cbi8vICBTZWxlY3QgQkdcbkBtaXhpbiBzZWxlY3QtYmcoKSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogNXB4O1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMCAwIDhweCA4cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZDFkMWQxIHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vIEN1c3RvbSBub24gYm9vdHN0cmFwIGJ1dHRvbiBtaXhpbnMgdG8gcGVyZm9ybSBzdHlsZSBvdmVycmlkZXMuXG4vLyBQbGVhc2Ugbm90ZSB0aGF0IG1hdGVyaWFsIGFkbWluIGRvZXMgbm90IGxvYWRzIGJvb3RzdHJhcCdzIGRlZmF1bHQgYnV0dG9ucyBtaXhpbnNcblxuLy8gQnV0dG9uIHZhcmlhbnRzXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMyUpO1xuICAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDMlKTtcblxuICAmLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogJHdoaXRlKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIFRleHQgb3ZlcmZsb3dcbkBtaXhpbiB0ZXh0LW92ZXJmbG93KCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLy8gQmFja2dyb3VuZCBJbWFnZSBDb3ZlclxuQG1peGluIGJnLWNvdmVyKCRpbWFnZSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC1vLWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuQG1peGluIGJnLWNvdmVyLWlubGluZSgpIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC1vLWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn0iLCIvLyBDb3JlIHZhcmlhYmxlc1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9jdXN0b21cIjtcblxuLy8gTWl4aW5zXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL25vcm1hbGl6ZVwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvcHJpbnRcIjtcblxuLy8gQ29yZSBDU1NcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL3JlYm9vdFwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvdHlwZVwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvaW1hZ2VzXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9jb2RlXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9ncmlkXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy90YWJsZXNcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9idXR0b25zXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL3RyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9kcm9wZG93blwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9pbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9uYXZcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL25hdmJhclwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvY2FyZFwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvYmFkZ2VcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL2p1bWJvdHJvblwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvYWxlcnRcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL3Byb2dyZXNzXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9tZWRpYVwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvcmVzcG9uc2l2ZS1lbWJlZFwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvY2xvc2VcIjtcblxuLy8gQ29tcG9uZW50cyB3LyBKYXZhU2NyaXB0XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9tb2RhbFwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvdG9vbHRpcFwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvcG9wb3ZlclwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvY2Fyb3VzZWxcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXNcIjtcbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIENvcHkgc2V0dGluZ3MgZnJvbSB0aGlzIGZpbGUgaW50byB0aGUgcHJvdmlkZWQgYF9jdXN0b20uc2Nzc2AgdG8gb3ZlcnJpZGVcbi8vIHRoZSBCb290c3RyYXAgZGVmYXVsdHMgd2l0aG91dCBtb2RpZnlpbmcga2V5LCB2ZXJzaW9uZWQgZmlsZXMuXG5cblxuLy8gVGFibGUgb2YgQ29udGVudHNcbi8vXG4vLyBDb2xvcnNcbi8vIE9wdGlvbnNcbi8vIFNwYWNpbmdcbi8vIEJvZHlcbi8vIExpbmtzXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vIEdyaWQgY29sdW1uc1xuLy8gRm9udHNcbi8vIENvbXBvbmVudHNcbi8vIFRhYmxlc1xuLy8gQnV0dG9uc1xuLy8gRm9ybXNcbi8vIERyb3Bkb3duc1xuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy8gTmF2YmFyXG4vLyBOYXZzXG4vLyBQYWdpbmF0aW9uXG4vLyBKdW1ib3Ryb25cbi8vIEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vIENhcmRzXG4vLyBUb29sdGlwc1xuLy8gUG9wb3ZlcnNcbi8vIEJhZGdlc1xuLy8gTW9kYWxzXG4vLyBBbGVydHNcbi8vIFByb2dyZXNzIGJhcnNcbi8vIExpc3QgZ3JvdXBcbi8vIEltYWdlIHRodW1ibmFpbHNcbi8vIEZpZ3VyZXNcbi8vIEJyZWFkY3J1bWJzXG4vLyBDYXJvdXNlbFxuLy8gQ2xvc2Vcbi8vIENvZGVcblxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwKSB7XG4gICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiBgJGdyaWQtYnJlYWtwb2ludHNgIG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gIH1cbn1cblxuXG4vLyBHZW5lcmFsIHZhcmlhYmxlIHN0cnVjdHVyZVxuLy9cbi8vIFZhcmlhYmxlIGZvcm1hdCBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1tb2RpZmllci1zdGF0ZS1wcm9wZXJ0eWAgb3JkZXIuXG5cblxuLy8gQ29sb3JzXG4vL1xuLy8gR3JheXNjYWxlIGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4vLyBTdGFydCB3aXRoIGFzc2lnbmluZyBjb2xvciBuYW1lcyB0byBzcGVjaWZpYyBoZXggdmFsdWVzLlxuJHdoaXRlOiAgI2ZmZiAhZGVmYXVsdDtcbiRibGFjazogICMwMDAgIWRlZmF1bHQ7XG4kcmVkOiAgICAjZDk1MzRmICFkZWZhdWx0O1xuJG9yYW5nZTogI2YwYWQ0ZSAhZGVmYXVsdDtcbiR5ZWxsb3c6ICNmZmQ1MDAgIWRlZmF1bHQ7XG4kZ3JlZW46ICAjNWNiODVjICFkZWZhdWx0O1xuJGJsdWU6ICAgIzAyNzVkOCAhZGVmYXVsdDtcbiR0ZWFsOiAgICM1YmMwZGUgIWRlZmF1bHQ7XG4kcGluazogICAjZmY1Yjc3ICFkZWZhdWx0O1xuJHB1cnBsZTogIzYxM2Q3YyAhZGVmYXVsdDtcblxuLy8gQ3JlYXRlIGdyYXlzY2FsZVxuJGdyYXktZGFyazogICAgICAgICAgICAgICAgICMyOTJiMmMgIWRlZmF1bHQ7XG4kZ3JheTogICAgICAgICAgICAgICAgICAgICAgIzQ2NGE0YyAhZGVmYXVsdDtcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICAgICAjNjM2YzcyICFkZWZhdWx0O1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgICAgICNlY2VlZWYgIWRlZmF1bHQ7XG4kZ3JheS1saWdodGVzdDogICAgICAgICAgICAgI2Y3ZjdmOSAhZGVmYXVsdDtcblxuLy8gUmVhc3NpZ24gY29sb3IgdmFycyB0byBzZW1hbnRpYyBjb2xvciBzY2hlbWVcbiRicmFuZC1wcmltYXJ5OiAgICAgICAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAgICAgJHRlYWwgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAgICAgJG9yYW5nZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGJyYW5kLWludmVyc2U6ICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6ICAgMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXIteDogJHNwYWNlciAhZGVmYXVsdDtcbiRzcGFjZXIteTogJHNwYWNlciAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gIDA6IChcbiAgICB4OiAwLFxuICAgIHk6IDBcbiAgKSxcbiAgMTogKFxuICAgIHg6ICgkc3BhY2VyLXggKiAuMjUpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAuMjUpXG4gICksXG4gIDI6IChcbiAgICB4OiAoJHNwYWNlci14ICogLjUpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAuNSlcbiAgKSxcbiAgMzogKFxuICAgIHg6ICRzcGFjZXIteCxcbiAgICB5OiAkc3BhY2VyLXlcbiAgKSxcbiAgNDogKFxuICAgIHg6ICgkc3BhY2VyLXggKiAxLjUpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAxLjUpXG4gICksXG4gIDU6IChcbiAgICB4OiAoJHNwYWNlci14ICogMyksXG4gICAgeTogKCRzcGFjZXIteSAqIDMpXG4gIClcbikgIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keSBkYXRhLW1hLXRoZW1lPVwiZ3JlZW5cIj5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRpbnZlcnNlLWJnOiAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGludmVyc2UtY29sb3I6ICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZTogICAgIDMwcHggIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGhzOiAoXG4gIHhzOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSxcbiAgc206ICRncmlkLWd1dHRlci13aWR0aC1iYXNlLFxuICBtZDogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UsXG4gIGxnOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSxcbiAgeGw6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlXG4pICFkZWZhdWx0O1xuXG4vLyBGb250c1xuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLXhzOiAgIC43NXJlbSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNSAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1oMTogMi41cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oMjogMnJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDM6IDEuNzVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg0OiAxLjVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg1OiAxLjI1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNjogMXJlbSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6IDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGFiYnItYm9yZGVyLWNvbG9yOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoOiAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6IC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiA1cHggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICg0IC8gMykgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtc20tY2VsbC1wYWRkaW5nOiAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kdGFibGUtaW52ZXJzZS1iZzogICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kdGFibGUtaW52ZXJzZS1jb2xvcjogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgIDAgMCAwIDJweCByZ2JhKCRicmFuZC1wcmltYXJ5LCAuMjUpICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgICRidG4tcHJpbWFyeS1iZyAhZGVmYXVsdDtcblxuJGJ0bi1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRidG4tc2Vjb25kYXJ5LWJnOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tc2Vjb25kYXJ5LWJvcmRlcjogICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgJGJ0bi1pbmZvLWJnICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgICRidG4tc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICAkYnRuLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICAkYnRuLWRhbmdlci1iZyAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJ0bi10b29sYmFyLW1hcmdpbjogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjE1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zXG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJnLWZvY3VzOiAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtcHJpbWFyeSwgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93LWZvY3VzOiAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93LCByZ2JhKCRpbnB1dC1ib3JkZXItZm9jdXMsIC42KSAhZGVmYXVsdDtcbiRpbnB1dC1jb2xvci1mb2N1czogICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogJGlucHV0LWxpbmUtaGVpZ2h0KSArICgkaW5wdXQtcGFkZGluZy15ICogMikpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtcGFkZGluZy15LWxnICogMikpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtKSArICgkaW5wdXQtcGFkZGluZy15LXNtICogMikpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6IC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogLjc1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAkc3BhY2VyLXkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAxLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6IDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXk6IC4yNXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1tYXJnaW4teTogICAoKCRsaW5lLWhlaWdodC1iYXNlICogMXJlbSkgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gLTIgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6IGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1jdXJzb3I6ICAgICAgICAgICAgICRjdXJzb3ItZGlzYWJsZWQgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtaW5kaWNhdG9yLWJnOiAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWRlc2NyaXB0aW9uLWNvbG9yOiAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYmc6ICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWZvY3VzLWluZGljYXRvci1ib3gtc2hhZG93OiAwIDAgMCAxcHggJGJvZHktYmcsIDAgMCAwIDNweCAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItYmc6ICAgICAgICAgbGlnaHRlbigkYnJhbmQtcHJpbWFyeSwgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1hY3RpdmUtaW5kaWNhdG9yLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtY2hlY2tlZC1pY29uOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1iZzogJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW5kaWNhdG9yLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaWNvbjogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA0JyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMCAyaDQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLXJhZGl1czogNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1jaGVja2VkLWljb246IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzRSUzQ2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcn0nLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA1JyUzRSUzQ3BhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRicmFuZC1wcmltYXJ5LCAyNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpLCAwIDAgNXB4IHJnYmEoJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yLCAuNSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXNtLXBhZGRpbmcteTogIC4ycmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3Qtc20tZm9udC1zaXplOiAgNzUlICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgMi41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXdpZHRoOiAgICAgICAgICAgIDE0cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwIC4wNzVyZW0gJHdoaXRlLCAwIDAgMCAuMnJlbSAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgMS41ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgaW5zZXQgMCAuMnJlbSAuNHJlbSByZ2JhKCRibGFjaywuMDUpICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgcGxhY2Vob2xkZXI6IChcbiAgICBlbjogXCJDaG9vc2UgZmlsZS4uLlwiXG4gICksXG4gIGJ1dHRvbi1sYWJlbDogKFxuICAgIGVuOiBcIkJyb3dzZVwiXG4gIClcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uIGljb25zXG4kZm9ybS1pY29uLXN1Y2Nlc3MtY29sb3I6ICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0taWNvbi1zdWNjZXNzOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRmb3JtLWljb24tc3VjY2Vzcy1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGZvcm0taWNvbi13YXJuaW5nLWNvbG9yOiAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRmb3JtLWljb24td2FybmluZzogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZmlsbD0nI3skZm9ybS1pY29uLXdhcm5pbmctY29sb3J9JyBkPSdNNC40IDUuMzI0aC0uOHYtMi40NmguOHptMCAxLjQyaC0uOFY1Ljg5aC44ek0zLjc2LjYzTC4wNCA3LjA3NWMtLjExNS4yLjAxNi40MjUuMjYuNDI2aDcuMzk3Yy4yNDIgMCAuMzcyLS4yMjYuMjU4LS40MjZDNi43MjYgNC45MjQgNS40NyAyLjc5IDQuMjUzLjYzYy0uMTEzLS4xNzQtLjM5LS4xNzQtLjQ5NCAweicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1pY29uLWRhbmdlci1jb2xvcjogJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRmb3JtLWljb24tZGFuZ2VyOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGZvcm0taWNvbi1kYW5nZXItY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNFJTNDcGF0aCBzdHJva2U9JyUyM2Q5NTM0ZicgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNFJTNDY2lyY2xlIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1tYXJnaW4tdG9wOiAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgJGdyYXktbGlnaHRlc3QgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bi1iYWNrZHJvcDogIDk5MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLC41KSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICByZ2JhKCR3aGl0ZSwxKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlci1iZzogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMyIDMyJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7JG5hdmJhci1pbnZlcnNlLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgOGgyNE00IDE2aDI0TTQgMjRoMjQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGVyLWJvcmRlcjogICAgICAgIHJnYmEoJHdoaXRlLC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJnOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzIgMzInIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgOGgyNE00IDE2aDI0TTQgMjRoMjQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXI6ICAgICAgIHJnYmEoJGJsYWNrLC4xKSAhZGVmYXVsdDtcblxuLy8gTmF2c1xuXG4kbmF2LWl0ZW0tbWFyZ2luOiAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJG5hdi1pdGVtLWlubGluZS1zcGFjZXI6ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAuNWVtIDFlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogJGJvZHktYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1jb2xvcjogJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWJnOiAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbigkc3RhdGUtc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkc3RhdGUtaW5mby1iZywgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKCRzdGF0ZS13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRzdGF0ZS1kYW5nZXItYmcsIDUlKSAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXI6IGNhbGMoI3skY2FyZC1ib3JkZXItcmFkaXVzfSAtICN7JGNhcmQtYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVzdCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtbGluay1ob3Zlci1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgKCRncmlkLWd1dHRlci13aWR0aC1iYXNlIC8gMikgIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgIDhweCAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgIDNweCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCA1cHggMTBweCByZ2JhKCRibGFjaywuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci10aXRsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci10aXRsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcblxuJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXg6ICAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXk6ICAgICAgICAgICA5cHggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMXB4KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGJhZGdlLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYmFkZ2Utc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRiYWRnZS1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJhZGdlLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYmFkZ2UtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLXNtLXVwLW1hcmdpbi15OiAzMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgcmdiYSgkYmxhY2ssLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LXhzLWJveC1zaGFkb3c6ICAgIDAgM3B4IDlweCByZ2JhKCRibGFjaywuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1zbS11cC1ib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoJGJsYWNrLC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICRzcGFjZXIteSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHRlc3QgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDUwJSkgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1hY3RpdmUtY29sb3I6ICAgJGxpc3QtZ3JvdXAtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWFjdGl2ZS1iZzogICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgI2RkZCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLC4wNzUpICFkZWZhdWx0O1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6IDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNNCAwbC00IDQgNCA0IDEuNS0xLjUtMi41LTIuNSAyLjUtMi41LTEuNS0xLjV6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNMS41IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICB0cmFuc2Zvcm0gLjZzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kY29kZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRjb2RlLXBhZGRpbmcteTogICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2JkNDE0NyAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXN0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVzdCAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG4iLCIvLyBCb290c3RyYXAgb3ZlcnJpZGVzXG4vL1xuLy8gQ29weSB2YXJpYWJsZXMgZnJvbSBgX3ZhcmlhYmxlcy5zY3NzYCB0byB0aGlzIGZpbGUgdG8gb3ZlcnJpZGUgZGVmYXVsdCB2YWx1ZXNcbi8vIHdpdGhvdXQgbW9kaWZ5aW5nIHNvdXJjZSBmaWxlcy5cbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuICB9XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy9ob3ZlclwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvbWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvYmFkZ2VcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy9zY3JlZW4tcmVhZGVyXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvbWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvdGV4dC1oaWRlXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvdGV4dC10cnVuY2F0ZVwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvbWl4aW5zL3RyYW5zZm9ybXNcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy92aXNpYmlsaXR5XCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy9hbGVydFwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvbWl4aW5zL2NhcmRzXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvbWl4aW5zL2xpc3RzXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvbWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy90YWJsZS1yb3dcIjtcblxuLy8gU2tpbnNcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvZ3JhZGllbnRzXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIi4vYm9vdHN0cmFwL3Njc3MvbWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvbmF2YmFyLWFsaWduXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCIuL2Jvb3RzdHJhcC9zY3NzL21peGlucy9ncmlkXCI7XG5AaW1wb3J0IFwiLi9ib290c3RyYXAvc2Nzcy9taXhpbnMvZmxvYXRcIjtcbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4xLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4KSlcbi8vICAgIDc2N3B4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAxcHgsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRuYW1lLCAkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBob3ZlciB7XG4gIC8vIFRPRE86IHJlLWVuYWJsZSBhbG9uZyB3aXRoIG1xNC1ob3Zlci1zaGltXG4vLyAgQGlmICRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnkge1xuLy8gICAgLy8gU2VlIE1lZGlhIFF1ZXJpZXMgTGV2ZWwgNDogaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL21lZGlhcXVlcmllcy8jaG92ZXJcbi8vICAgIC8vIEN1cnJlbnRseSBzaGltbWVkIGJ5IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL21xNC1ob3Zlci1zaGltXG4vLyAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuLy8gICAgICAmOmhvdmVyIHsgQGNvbnRlbnQgfVxuLy8gICAgfVxuLy8gIH1cbi8vICBAZWxzZSB7XG4gICAgJjpob3ZlciB7IEBjb250ZW50IH1cbi8vICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gIEBpZiAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5IHtcbiAgICAmOmZvY3VzIHsgQGNvbnRlbnQgfVxuICAgIEBpbmNsdWRlIGhvdmVyIHsgQGNvbnRlbnQgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgQGNvbnRlbnRcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgQGlmICRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnkge1xuICAgICYsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAY29udGVudFxuICAgIH1cbiAgICBAaW5jbHVkZSBob3ZlciB7IEBjb250ZW50IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJixcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgQGNvbnRlbnRcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XG4gIEBpZiAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5IHtcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICAgIEBpbmNsdWRlIGhvdmVyIHsgQGNvbnRlbnQgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICY6aG92ZXIge1xuICAgICAgQGNvbnRlbnRcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHsgLy8gU3RhbmRhcmRpemVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvLyBCYWRnZXNcblxuQG1peGluIGJhZGdlLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbn1cbiIsIi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnRcblxuQG1peGluIHNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn0iLCIvLyBBcHBsaWVzIHRoZSBnaXZlbiBzdHlsZXMgb25seSB3aGVuIHRoZSBicm93c2VyIHN1cHBvcnQgQ1NTMyAzRCB0cmFuc2Zvcm1zLlxuQG1peGluIGlmLXN1cHBvcnRzLTNkLXRyYW5zZm9ybXMoKSB7XG4gIEBtZWRpYSAoLXdlYmtpdC10cmFuc2Zvcm0tM2QpIHtcbiAgICAvLyBPbGQgU2FmYXJpLCBPbGQgQW5kcm9pZFxuICAgIC8vIGh0dHA6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtZmVhdHVyZXF1ZXJpZXNcbiAgICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvQG1lZGlhLy13ZWJraXQtdHJhbnNmb3JtLTNkXG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICBAc3VwcG9ydHMgKHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApKSB7XG4gICAgLy8gVGhlIFByb3BlciBXYXk6IFVzaW5nIGEgQ1NTIGZlYXR1cmUgcXVlcnlcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gVmlzaWJpbGl0eVxuXG5AbWl4aW4gaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRib2R5LWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkYm9keS1jb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQ2FyZCB2YXJpYW50c1xuXG5AbWl4aW4gY2FyZC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgLmNhcmQtaGVhZGVyLFxuICAuY2FyZC1mb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBtaXhpbiBjYXJkLW91dGxpbmUtdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xufVxuXG4vL1xuLy8gSW52ZXJzZSB0ZXh0IHdpdGhpbiBhIGNhcmQgZm9yIHVzZSB3aXRoIGRhcmsgYmFja2dyb3VuZHNcbi8vXG5cbkBtaXhpbiBjYXJkLWludmVyc2Uge1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNjUpO1xuXG4gIC5jYXJkLWhlYWRlcixcbiAgLmNhcmQtZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xuICB9XG4gIC5jYXJkLWhlYWRlcixcbiAgLmNhcmQtZm9vdGVyLFxuICAuY2FyZC10aXRsZSxcbiAgLmNhcmQtYmxvY2txdW90ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLmNhcmQtbGluayxcbiAgLmNhcmQtdGV4dCxcbiAgLmNhcmQtc3VidGl0bGUsXG4gIC5jYXJkLWJsb2NrcXVvdGUgLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNjUpO1xuICB9XG4gIC5jYXJkLWxpbmsge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY2FyZC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgfVxuXG4gIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogKCRzcGFjZXIteSAvIDIpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIF9mb3Jtcy5zY3NzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxuLy8gYW5kIHN1Y2Nlc3Nlcy5cblxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRjb2xvcikge1xuICAvLyBDb2xvciB0aGUgbGFiZWwgYW5kIGhlbHAgdGV4dFxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuICAuZm9ybS1jb250cm9sLWxhYmVsLFxuICAuY29sLWZvcm0tbGFiZWwsXG4gIC5mb3JtLWNoZWNrLWxhYmVsLFxuICAuY3VzdG9tLWNvbnRyb2wge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csIDAgMCA2cHggbGlnaHRlbigkY29sb3IsIDIwJSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCA0MCUpO1xuICB9XG59XG5cbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYEBpbnB1dC1ib3JkZXItZm9jdXNgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCkge1xuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1mb2N1cztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LWZvY3VzKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcblxuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIi8vIE5hdmJhciB2ZXJ0aWNhbCBhbGlnblxuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXG4vLyBFeGFtcGxlOiBhbiBlbGVtZW50IGhhcyBhIGhlaWdodCBvZiAzMHB4LCBzbyB3cml0ZSBvdXQgYC5uYXZiYXItdmVydGljYWwtYWxpZ24oMzBweCk7YCB0byBjYWxjdWxhdGUgdGhlIGFwcHJvcHJpYXRlIHRvcCBtYXJnaW4uXG5cbi8vIEBtaXhpbiBuYXZiYXItdmVydGljYWwtYWxpZ24oJGVsZW1lbnQtaGVpZ2h0KSB7XG4vLyAgIG1hcmdpbi10b3A6ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG4vLyAgIG1hcmdpbi1ib3R0b206ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG4vLyB9XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXJzOiAkZ3JpZC1ndXR0ZXItd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4OyAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcblxuICAgIEBpbmNsdWRlIG1ha2UtZ3V0dGVycygkZ3V0dGVycyk7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sI3skaW5maXh9IHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGVhY2ggJG1vZGlmaWVyIGluIChwdWxsLCBwdXNoKSB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC4jeyRtb2RpZmllcn0jeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtbW9kaWZpZXIoJG1vZGlmaWVyLCAkaSwgJGNvbHVtbnMpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC14cy0wXG4gICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1tb2RpZmllcihvZmZzZXQsICRpLCAkY29sdW1ucylcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXJzOiAkZ3JpZC1ndXR0ZXItd2lkdGhzKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3V0dGVycykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICRndXR0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIHdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtZ3V0dGVyLXdpZHRocykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3V0dGVycykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICRndXR0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcnM6ICRncmlkLWd1dHRlci13aWR0aHMpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRndXR0ZXJzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgJGd1dHRlcjogbWFwLWdldCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAoJGd1dHRlciAvIC0yKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAgKCRndXR0ZXIgLyAtMik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyczogJGdyaWQtZ3V0dGVyLXdpZHRocykge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7IC8vIFByZXZlbnQgY29sbGFwc2luZ1xuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRndXR0ZXJzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgJGd1dHRlcjogbWFwLWdldCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAgICAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgICAgIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIHdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcHVzaCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgbGVmdDogaWYoJHNpemUgPiAwLCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpLCBhdXRvKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXB1bGwoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIHJpZ2h0OiBpZigkc2l6ZSA+IDAsIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyksIGF1dG8pO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtbW9kaWZpZXIoJHR5cGUsICRzaXplLCAkY29sdW1ucykge1xuICAvLyBXb3JrIGFyb3VuZCB0aGUgbGFjayBvZiBkeW5hbWljIG1peGluIEBpbmNsdWRlIHN1cHBvcnQgKGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzYyNilcbiAgQGlmICR0eXBlID09IHB1c2gge1xuICAgIEBpbmNsdWRlIG1ha2UtY29sLXB1c2goJHNpemUsICRjb2x1bW5zKTtcbiAgfSBAZWxzZSBpZiAkdHlwZSA9PSBwdWxsIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbC1wdWxsKCRzaXplLCAkY29sdW1ucyk7XG4gIH0gQGVsc2UgaWYgJHR5cGUgPT0gb2Zmc2V0IHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zKTtcbiAgfVxufVxuIiwiQG1peGluIGZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuQG1peGluIGZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5AbWl4aW4gZmxvYXQtbm9uZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2NS4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8vXG4vLyAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4vLyAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4vLyAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vL1xuXG4vLyBEb2N1bWVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAyXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gM1xufVxuXG4vLyBTZWN0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vL1xuLy8gQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbi8vXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8vIEdyb3VwaW5nIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuLy9cblxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbm1haW4geyAvLyAxXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuLy9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbi8vXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy8gMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuLy9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyAxXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8vIDJcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuLy8gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4vL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwO1xufVxuXG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbn1cblxuLy9cbi8vIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbi8vXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG59XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4vL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8vIEVtYmVkZGVkIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbi8vXG5cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuLy9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4vL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8vXG4vLyBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbi8vXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gRm9ybXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuLy9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gIG1hcmdpbjogMDsgLy8gMlxufVxuXG4vL1xuLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4vLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuLy9cblxuYnV0dG9uLFxuaW5wdXQgeyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4vLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvLyAxXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vL1xuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy9cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLy9cbi8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbi8vXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vL1xuLy8gQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4vL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4vLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4vLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDNcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuLy9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbi8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4vL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuLy9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4vL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxufVxuXG4vLyBJbnRlcmFjdGl2ZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuLy9cblxuZGV0YWlscywgLy8gMVxubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLy8gU2NyaXB0aW5nXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4vL1xuXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbi8vXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gSGlkZGVuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuLy9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHA6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmICRlbmFibGUtcHJpbnQtc3R5bGVzIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlcixcbiAgICBwOjpmaXJzdC1sZXR0ZXIsXG4gICAgZGl2OjpmaXJzdC1sZXR0ZXIsXG4gICAgYmxvY2txdW90ZTo6Zmlyc3QtbGV0dGVyLFxuICAgIGxpOjpmaXJzdC1sZXR0ZXIsXG4gICAgcDo6Zmlyc3QtbGluZSxcbiAgICBkaXY6OmZpcnN0LWxpbmUsXG4gICAgYmxvY2txdW90ZTo6Zmlyc3QtbGluZSxcbiAgICBsaTo6Zmlyc3QtbGluZSB7XG4gICAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgb3V0IGBjb2xvcmAgYW5kIGBiYWNrZ3JvdW5kYFxuICAgICAgLy9jb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgIGh0dHA6Ly93d3cuc2FuYmVpamkuY29tL2FyY2hpdmVzLzk1M1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICM5OTk7ICAgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFByaW50aW5nIFRhYmxlczpcbiAgICAvLyBodHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAvL1xuXG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAgIC5uYXZiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAjMDAwO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxuICB9XG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudCwgRHVwbGljYXRlUHJvcGVydHlcblxuLy8gUmVib290XG4vL1xuLy8gR2xvYmFsIHJlc2V0cyB0byBjb21tb24gSFRNTCBlbGVtZW50cyBhbmQgbW9yZSBmb3IgZWFzaWVyIHVzYWdlIGJ5IEJvb3RzdHJhcC5cbi8vIEFkZHMgYWRkaXRpb25hbCBydWxlcyBvbiB0b3Agb2YgTm9ybWFsaXplLmNzcywgaW5jbHVkaW5nIHNldmVyYWwgb3ZlcnJpZGVzLlxuXG5cbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXG4vL1xuLy8gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCB0byBgYm9yZGVyLWJveGAgc28gdGhhdCB3aGVuIHlvdSBhZGRcbi8vIGBwYWRkaW5nYCBvciBgYm9yZGVyYHMgdG8gYW4gZWxlbWVudCwgdGhlIG92ZXJhbGwgZGVjbGFyZWQgYHdpZHRoYCBkb2VzIG5vdFxuLy8gY2hhbmdlLiBGb3IgZXhhbXBsZSwgYHdpZHRoOiAxMDBweDtgIHdpbGwgYWx3YXlzIGJlIGAxMDBweGAgZGVzcGl0ZSB0aGVcbi8vIGBib3JkZXI6IDEwcHggc29saWQgcmVkO2AgYW5kIGBwYWRkaW5nOiAyMHB4O2AuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgcmVzZXQgbWF5IGNhdXNlIGNvbmZsaWN0cyB3aXRoIHNvbWUgdGhpcmQtcGFydHkgd2lkZ2V0cy4gRm9yXG4vLyByZWNvbW1lbmRhdGlvbnMgb24gcmVzb2x2aW5nIHN1Y2ggY29uZmxpY3RzLCBzZWVcbi8vIGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3RoaXJkLWJveC1zaXppbmcuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2Nzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZS9cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cblxuLy8gTWFrZSB2aWV3cG9ydCByZXNwb25zaXZlXG4vL1xuLy8gQHZpZXdwb3J0IGlzIG5lZWRlZCBiZWNhdXNlIElFIDEwKyBkb2Vzbid0IGhvbm9yIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiPiBpblxuLy8gc29tZSBjYXNlcy4gU2VlIGh0dHBzOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi8uXG4vLyBFdmVudHVhbGx5IEB2aWV3cG9ydCB3aWxsIHJlcGxhY2UgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCI+LlxuLy9cbi8vIEhvd2V2ZXIsIGBkZXZpY2Utd2lkdGhgIGlzIGJyb2tlbiBvbiBJRSAxMCBvbiBXaW5kb3dzIChQaG9uZSkgOCxcbi8vIChzZWUgaHR0cHM6Ly90aW1rYWRsZWMuY29tLzIwMTMvMDEvd2luZG93cy1waG9uZS04LWFuZC1kZXZpY2Utd2lkdGgvIGFuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3KVxuLy8gYW5kIHRoZSBmaXggZm9yIHRoYXQgaW52b2x2ZXMgYSBzbmlwcGV0IG9mIEphdmFTY3JpcHQgdG8gc25pZmYgdGhlIHVzZXIgYWdlbnRcbi8vIGFuZCBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUy5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoIGZvciB0aGUgcmVsZXZhbnQgaGFjay5cbi8vXG4vLyBXcmFwIGBAdmlld3BvcnRgIHdpdGggYEBhdC1yb290YCBmb3Igd2hlbiBmb2xrcyBkbyBhIG5lc3RlZCBpbXBvcnQgKGUuZy4sXG4vLyBgLmNsYXNzLW5hbWUgeyBAaW1wb3J0IFwiYm9vdHN0cmFwXCI7IH1gKS5cbkBhdC1yb290IHtcbiAgQC1tcy12aWV3cG9ydCB7IHdpZHRoOiBkZXZpY2Utd2lkdGg7IH1cbn1cblxuXG4vL1xuLy8gUmVzZXQgSFRNTCwgYm9keSwgYW5kIG1vcmVcbi8vXG5cbmh0bWwge1xuICAvLyBXZSBhc3N1bWUgbm8gaW5pdGlhbCBwaXhlbCBgZm9udC1zaXplYCBmb3IgYWNjZXNzaWJpbGl0eSByZWFzb25zLiBUaGlzXG4gIC8vIGFsbG93cyB3ZWIgdmlzaXRvcnMgdG8gY3VzdG9taXplIHRoZWlyIGJyb3dzZXIgZGVmYXVsdCBmb250LXNpemUsIG1ha2luZ1xuICAvLyB5b3VyIHByb2plY3QgbW9yZSBpbmNsdXNpdmUgYW5kIGFjY2Vzc2libGUgdG8gZXZlcnlvbmUuXG5cbiAgLy8gQXMgYSBzaWRlLWVmZmVjdCBvZiBzZXR0aW5nIHRoZSBAdmlld3BvcnQgYWJvdmUsXG4gIC8vIElFMTEgJiBFZGdlIG1ha2UgdGhlIHNjcm9sbGJhciBvdmVybGFwIHRoZSBjb250ZW50IGFuZCBhdXRvbWF0aWNhbGx5IGhpZGUgaXRzZWxmIHdoZW4gbm90IGluIHVzZS5cbiAgLy8gVW5mb3J0dW5hdGVseSwgdGhlIGF1dG8tc2hvd2luZyBvZiB0aGUgc2Nyb2xsYmFyIGlzIHNvbWV0aW1lcyB0b28gc2Vuc2l0aXZlLFxuICAvLyB0aHVzIG1ha2luZyBpdCBoYXJkIHRvIGNsaWNrIG9uIHN0dWZmIG5lYXIgdGhlIHJpZ2h0IGVkZ2Ugb2YgdGhlIHBhZ2UuXG4gIC8vIFNvIHdlIGFkZCB0aGlzIHN0eWxlIHRvIGZvcmNlIElFMTEgJiBFZGdlIHRvIHVzZSBhIFwibm9ybWFsXCIsIG5vbi1vdmVybGFwcGluZywgbm9uLWF1dG8taGlkaW5nIHNjcm9sbGJhci5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTg1NDNcbiAgLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLm1pY3Jvc29mdC5jb20vZW4tdXMvbWljcm9zb2Z0LWVkZ2UvcGxhdGZvcm0vaXNzdWVzLzcxNjUzODMvXG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xuXG4gIC8vIENoYW5nZXMgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIC8vIEdvIGVhc3kgb24gdGhlIGV5ZXMgYW5kIHVzZSBzb21ldGhpbmcgb3RoZXIgdGhhbiBgIzAwMGAgZm9yIHRleHRcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAvLyBCeSBkZWZhdWx0LCBgPGJvZHkgZGF0YS1tYS10aGVtZT1cImdyZWVuXCI+YCBoYXMgbm8gYGJhY2tncm91bmQtY29sb3JgIHNvIHdlIHNldCBvbmUgYXMgYSBiZXN0IHByYWN0aWNlLlxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbn1cblxuLy8gU3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmUgb24gZWxlbWVudHMgdGhhdCBjYW5ub3QgYmUgYWNjZXNzZWQgdmlhIGtleWJvYXJkLlxuLy8gVGhpcyBwcmV2ZW50cyBhbiB1bndhbnRlZCBmb2N1cyBvdXRsaW5lIGZyb20gYXBwZWFyaW5nIGFyb3VuZCBlbGVtZW50cyB0aGF0XG4vLyBtaWdodCBzdGlsbCByZXNwb25kIHRvIHBvaW50ZXIgZXZlbnRzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZVxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbmFiYnJbdGl0bGVdLFxuLy8gQWRkIGRhdGEtKiBhdHRyaWJ1dGUgdG8gaGVscCBvdXQgb3VyIHRvb2x0aXAgcGx1Z2luLCBwZXIgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy81MjU3XG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZilcbi8vIHdoaWNoIGhhdmUgbm90IGJlZW4gbWFkZSBleHBsaWNpdGx5IGtleWJvYXJkLWZvY3VzYWJsZSAod2l0aG91dCB0YWJpbmRleCkuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIE5vcm1hbGl6ZSB2NCByZW1vdmVkIHRoaXMgcHJvcGVydHksIGNhdXNpbmcgYDxwcmU+YCBjb250ZW50IHRvIGJyZWFrIG91dCBvZiB3cmFwcGluZyBjb2RlIHNuaXBwZXRzXG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBOb3JtYWxpemUgYWRkcyBgbWFyZ2luYCB0byBgZmlndXJlYHMgYXMgYnJvd3NlcnMgYXBwbHkgaXQgaW5jb25zaXN0ZW50bHkuXG4gIC8vIFdlIHJlc2V0IHRoYXQgdG8gY3JlYXRlIGEgYmV0dGVyIGZsb3cgaW4tcGFnZS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzXG4vL1xuXG5pbWcge1xuICAvLyBCeSBkZWZhdWx0LCBgPGltZz5gcyBhcmUgYGlubGluZS1ibG9ja2AuIFRoaXMgYXNzdW1lcyB0aGF0LCBhbmQgdmVydGljYWxseVxuICAvLyBjZW50ZXJzIHRoZW0uIFRoaXMgd29uJ3QgYXBwbHkgc2hvdWxkIHlvdSByZXNldCB0aGVtIHRvIGBibG9ja2AgbGV2ZWwuXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC8vIE5vdGU6IGA8aW1nPmBzIGFyZSBkZWxpYmVyYXRlbHkgbm90IG1hZGUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0LlxuICAvLyBGb3IgdGhlIHJhdGlvbmFsZSBiZWhpbmQgdGhpcywgc2VlIHRoZSBjb21tZW50cyBvbiB0aGUgYC5pbWctZmx1aWRgIGNsYXNzLlxufVxuXG5cbi8vIGlPUyBcImNsaWNrYWJsZSBlbGVtZW50c1wiIGZpeCBmb3Igcm9sZT1cImJ1dHRvblwiXG4vL1xuLy8gRml4ZXMgXCJjbGlja2FiaWxpdHlcIiBpc3N1ZSAoYW5kIG1vcmUgZ2VuZXJhbGx5LCB0aGUgZmlyaW5nIG9mIGV2ZW50cyBzdWNoIGFzIGZvY3VzIGFzIHdlbGwpXG4vLyBmb3IgdHJhZGl0aW9uYWxseSBub24tZm9jdXNhYmxlIGVsZW1lbnRzIHdpdGggcm9sZT1cImJ1dHRvblwiXG4vLyBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLy8gQXZvaWQgMzAwbXMgY2xpY2sgZGVsYXkgb24gdG91Y2ggZGV2aWNlcyB0aGF0IHN1cHBvcnQgdGhlIGB0b3VjaC1hY3Rpb25gIENTUyBwcm9wZXJ0eS5cbi8vXG4vLyBJbiBwYXJ0aWN1bGFyLCB1bmxpa2UgbW9zdCBvdGhlciBicm93c2VycywgSUUxMStFZGdlIG9uIFdpbmRvd3MgMTAgb24gdG91Y2ggZGV2aWNlcyBhbmQgSUUgTW9iaWxlIDEwLTExXG4vLyBET04nVCByZW1vdmUgdGhlIGNsaWNrIGRlbGF5IHdoZW4gYDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGhcIj5gIGlzIHByZXNlbnQuXG4vLyBIb3dldmVyLCB0aGV5IERPIHN1cHBvcnQgcmVtb3ZpbmcgdGhlIGNsaWNrIGRlbGF5IHZpYSBgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb25gLlxuLy8gU2VlOlxuLy8gKiBodHRwczovL3Y0LWFscGhhLmdldGJvb3RzdHJhcC5jb20vY29udGVudC9yZWJvb3QvI2NsaWNrLWRlbGF5LW9wdGltaXphdGlvbi1mb3ItdG91Y2hcbi8vICogaHR0cDovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy10b3VjaC1hY3Rpb25cbi8vICogaHR0cHM6Ly9wYXRyaWNraGxhdWtlLmdpdGh1Yi5pby90b3VjaC90ZXN0cy9yZXN1bHRzLyNzdXBwcmVzc2luZy0zMDBtcy1kZWxheVxuXG5hLFxuYXJlYSxcbmJ1dHRvbixcbltyb2xlPVwiYnV0dG9uXCJdLFxuaW5wdXQsXG5sYWJlbCxcbnNlbGVjdCxcbnN1bW1hcnksXG50ZXh0YXJlYSB7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgLy8gTm8gbG9uZ2VyIHBhcnQgb2YgTm9ybWFsaXplIHNpbmNlIHY0XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbnRoIHtcbiAgLy8gQ2VudGVyZWQgYnkgZGVmYXVsdCwgYnV0IGxlZnQtYWxpZ24tZWQgdG8gbWF0Y2ggdGhlIGB0ZGBzIGJlbG93LlxuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xufVxuXG4vLyBXb3JrIGFyb3VuZCBhIEZpcmVmb3gvSUUgYnVnIHdoZXJlIHRoZSB0cmFuc3BhcmVudCBgYnV0dG9uYCBiYWNrZ3JvdW5kXG4vLyByZXN1bHRzIGluIGEgbG9zcyBvZiB0aGUgZGVmYXVsdCBgYnV0dG9uYCBmb2N1cyBzdHlsZXMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlL1xuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgLy8gTm9ybWFsaXplIGluY2x1ZGVzIGBmb250OiBpbmhlcml0O2AsIHNvIGBmb250LWZhbWlseWAuIGBmb250LXNpemVgLCBldGMgYXJlXG4gIC8vIHByb3Blcmx5IGluaGVyaXRlZC4gSG93ZXZlciwgYGxpbmUtaGVpZ2h0YCBpc24ndCBpbmhlcml0ZWQgdGhlcmUuXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAvLyBBcHBseSBhIGRpc2FibGVkIGN1cnNvciBmb3IgcmFkaW9zIGFuZCBjaGVja2JveGVzLlxuICAvL1xuICAvLyBOb3RlOiBOZWl0aGVyIHJhZGlvcyBub3IgY2hlY2tib3hlcyBjYW4gYmUgcmVhZG9ubHkuXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuXG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgYXBwZWFyYW5jZSBvZiB0ZW1wb3JhbCBpbnB1dHMgdG8gYXZvaWQgYSBNb2JpbGUgU2FmYXJpXG4gIC8vIGJ1ZyB3aGVyZSBzZXR0aW5nIGEgY3VzdG9tIGxpbmUtaGVpZ2h0IHByZXZlbnRzIHRleHQgZnJvbSBiZWluZyB2ZXJ0aWNhbGx5XG4gIC8vIGNlbnRlcmVkIHdpdGhpbiB0aGUgaW5wdXQuXG4gIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4gIC8vIGFuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExMjY2XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveDtcbn1cblxudGV4dGFyZWEge1xuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxubGVnZW5kIHtcbiAgLy8gUmVzZXQgdGhlIGVudGlyZSBsZWdlbmQgZWxlbWVudCB0byBtYXRjaCB0aGUgYGZpZWxkc2V0YFxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gdG9kbzogbmVlZGVkP1xub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuLy8gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuLy8gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4vLyAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbn1cblxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZSAoZnJvbSBQdXJlQ1NTKS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy9cbi8vIEhlYWRpbmdzXG4vL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSwgLmgxIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgxOyB9XG5oMiwgLmgyIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgyOyB9XG5oMywgLmgzIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgzOyB9XG5oNCwgLmg0IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg0OyB9XG5oNSwgLmg1IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg1OyB9XG5oNiwgLmg2IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg2OyB9XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbi5kaXNwbGF5LTEge1xuICBmb250LXNpemU6ICRkaXNwbGF5MS1zaXplO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMiB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXkyLXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0zIHtcbiAgZm9udC1zaXplOiAkZGlzcGxheTMtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTQge1xuICBmb250LXNpemU6ICRkaXNwbGF5NC1zaXplO1xuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG4vL1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRzcGFjZXIteTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci15O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQgJGhyLWJvcmRlci1jb2xvcjtcbn1cblxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG59XG5cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6ICgkc3BhY2VyIC8gMikgJHNwYWNlcjtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG4gIGJvcmRlci1sZWZ0OiAkYmxvY2txdW90ZS1ib3JkZXItd2lkdGggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTQgXFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuXG4vLyBPcHBvc2l0ZSBhbGlnbm1lbnQgb2YgYmxvY2txdW90ZVxuLmJsb2NrcXVvdGUtcmV2ZXJzZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRzcGFjZXI7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGJvcmRlci1yaWdodDogJGJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoIHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi5ibG9ja3F1b3RlLXJldmVyc2UgLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcMDBBMCBcXDIwMTRcIjsgLy8gbmJzcCwgZW0gZGFzaFxuICB9XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQ7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdGh1bWJuYWlsLXRyYW5zaXRpb24pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAoJHNwYWNlci15IC8gMik7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBmb250LXNpemU6ICRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbmxpbmUgYW5kIGJsb2NrIGNvZGUgc3R5bGVzXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xufVxuXG4vLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmcteSAkY29kZS1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGNvZGUtcGFkZGluZy15ICRjb2RlLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6ICRjb2RlLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXItbWF4LXdpZHRocygpO1xuICB9XG59XG5cbi8vIEZsdWlkIGNvbnRhaW5lclxuLy9cbi8vIFV0aWxpemVzIHRoZSBtaXhpbiBtZWFudCBmb3IgZml4ZWQgd2lkdGggY29udGFpbmVycywgYnV0IHdpdGhvdXQgYW55IGRlZmluZWRcbi8vIHdpZHRoIGZvciBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG59XG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1zbS1jZWxsLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vLyBCb3JkZXJlZCB2ZXJzaW9uXG4vL1xuLy8gQWRkIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1hY2NlbnQ7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctaG92ZXI7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuLy8gR2VuZXJhdGUgdGhlIGNvbnRleHR1YWwgdmFyaWFudHNcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGFjdGl2ZSwgJHRhYmxlLWJnLWFjdGl2ZSk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChzdWNjZXNzLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChpbmZvLCAkc3RhdGUtaW5mby1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCh3YXJuaW5nLCAkc3RhdGUtd2FybmluZy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChkYW5nZXIsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIEludmVyc2Ugc3R5bGVzXG4vL1xuLy8gU2FtZSB0YWJsZSBtYXJrdXAsIGJ1dCBpbnZlcnRlZCBjb2xvciBzY2hlbWU6IGRhcmsgYmFja2dyb3VuZCBhbmQgbGlnaHQgdGV4dC5cblxuLnRoZWFkLWludmVyc2Uge1xuICB0aCB7XG4gICAgY29sb3I6ICR0YWJsZS1pbnZlcnNlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1pbnZlcnNlLWJnO1xuICB9XG59XG5cbi50aGVhZC1kZWZhdWx0IHtcbiAgdGgge1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1iZztcbiAgfVxufVxuXG4udGFibGUtaW52ZXJzZSB7XG4gIGNvbG9yOiAkdGFibGUtaW52ZXJzZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWludmVyc2UtYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9keS1iZztcbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBBZGQgYC50YWJsZS1yZXNwb25zaXZlYCB0byBgLnRhYmxlYHMgYW5kIHdlJ2xsIG1ha2UgdGhlbSBtb2JpbGUgZnJpZW5kbHkgYnlcbi8vIGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgPDc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXRcbi8vIHdpbGwgZGlzcGxheSBub3JtYWxseS5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTAwNTdcblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdFbGVtZW50XG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIC8vIC8vIE1ha2UgaW5wdXRzIGF0IGxlYXN0IHRoZSBoZWlnaHQgb2YgdGhlaXIgYnV0dG9uIGNvdW50ZXJwYXJ0IChiYXNlIGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcbiAgLy8gaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTQuXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIC8vIE1hbnVhbGx5IHVzZSB0aGUgaWYvZWxzZSBpbnN0ZWFkIG9mIHRoZSBtaXhpbiB0byBhY2NvdW50IGZvciBpT1Mgb3ZlcnJpZGVcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgLy8gT3RoZXJ3aXNlIHVuZG8gdGhlIGlPUyBkZWZhdWx0XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoKTtcblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWRpc2FibGVkO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJjpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSkge1xuICAgICRzZWxlY3QtYm9yZGVyLXdpZHRoOiAoJGJvcmRlci13aWR0aCAqIDIpO1xuICAgIGhlaWdodDogY2FsYygjeyRpbnB1dC1oZWlnaHR9ICsgI3skc2VsZWN0LWJvcmRlci13aWR0aH0pO1xuICB9XG5cbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIHRleHQgdG9cbi8vIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXl9IC0gI3skaW5wdXQtYnRuLWJvcmRlci13aWR0aH0gKiAyKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSAtICN7JGlucHV0LWJ0bi1ib3JkZXItd2lkdGh9ICogMik7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPmAgZGVmYXVsdFxufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktbGd9IC0gI3skaW5wdXQtYnRuLWJvcmRlci13aWR0aH0gKiAyKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSAtICN7JGlucHV0LWJ0bi1ib3JkZXItd2lkdGh9ICogMik7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSAtICN7JGlucHV0LWJ0bi1ib3JkZXItd2lkdGh9ICogMik7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1zbX0gLSAjeyRpbnB1dC1idG4tYm9yZGVyLXdpZHRofSAqIDIpO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG59XG5cblxuLy9cbi8vIExlZ2VuZHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxlZ2VuZCB0ZXh0IHRvXG4vLyBiZSB0aGUgc2FtZSBzaXplIGFzIHJlZ3VsYXIgbGFiZWxzLCBhbmQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sZWdlbmQge1xuICBwYWRkaW5nLXRvcDogJGlucHV0LXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRpbnB1dC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xufVxuXG5cbi8vIFN0YXRpYyBmb3JtIGNvbnRyb2wgdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGFuIGVsZW1lbnQgdG8gbWFrZSBhbnkgc3RyaW5nIG9mIHRleHQgYWxpZ24gd2l0aCBsYWJlbHMgaW4gYVxuLy8gaG9yaXpvbnRhbCBmb3JtIGxheW91dC5cblxuLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICBwYWRkaW5nLXRvcDogJGlucHV0LXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRpbnB1dC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sLXNtIHtcbiAgJjpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSkge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sLWxnIHtcbiAgJjpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSkge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgfVxufVxuXG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b207XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcblxuICAmOm9ubHktY2hpbGQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuLy8gUmFkaW9zIGFuZCBjaGVja2JveGVzIG9uIHNhbWUgbGluZVxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG5cbiAgKyAuZm9ybS1jaGVjay1pbmxpbmUge1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZmVlZGJhY2sgc3RhdGVzXG4vL1xuLy8gQXBwbHkgY29udGV4dHVhbCBhbmQgc2VtYW50aWMgc3RhdGVzIHRvIGluZGl2aWR1YWwgZm9ybSBjb250cm9scy5cblxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG59XG5cbi5mb3JtLWNvbnRyb2wtc3VjY2Vzcyxcbi5mb3JtLWNvbnRyb2wtd2FybmluZyxcbi5mb3JtLWNvbnRyb2wtZGFuZ2VyIHtcbiAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1wYWRkaW5nLXggKiAzKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0ICgkaW5wdXQtaGVpZ2h0IC8gNCk7XG4gIGJhY2tncm91bmQtc2l6ZTogKCRpbnB1dC1oZWlnaHQgLyAyKSAoJGlucHV0LWhlaWdodCAvIDIpO1xufVxuXG4vLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4uaGFzLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkYnJhbmQtc3VjY2Vzcyk7XG5cbiAgLmZvcm0tY29udHJvbC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkZm9ybS1pY29uLXN1Y2Nlc3M7XG4gIH1cbn1cblxuLmhhcy13YXJuaW5nIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJGJyYW5kLXdhcm5pbmcpO1xuXG4gIC5mb3JtLWNvbnRyb2wtd2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJGZvcm0taWNvbi13YXJuaW5nO1xuICB9XG59XG5cbi5oYXMtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJGJyYW5kLWRhbmdlcik7XG5cbiAgLmZvcm0tY29udHJvbC1kYW5nZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRmb3JtLWljb24tZGFuZ2VyO1xuICB9XG59XG5cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gUHJldmVudCBzaG9ydGVyIGVsZW1lbnRzIGZyb20gZ3Jvd2luZyB0byBzYW1lIGhlaWdodCBhcyBvdGhlcnMgKGUuZy4sIHNtYWxsIGJ1dHRvbnMgZ3Jvd2luZyB0byBub3JtYWwgc2l6ZWQgYnV0dG9uIGhlaWdodClcblxuICAvLyBCZWNhdXNlIHdlIHVzZSBmbGV4LCB0aGUgaW5pdGlhbCBzaXppbmcgb2YgY2hlY2tib3hlcyBpcyBjb2xsYXBzZWQgYW5kXG4gIC8vIGRvZXNuJ3Qgb2NjdXB5IHRoZSBmdWxsLXdpZHRoICh3aGljaCBpcyB3aGF0IHdlIHdhbnQgZm9yIHhzIGdyaWQgdGllciksXG4gIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cbiAgLmZvcm0tY2hlY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLmZvcm0tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIEN1c3RvbSBmb3JtIGNvbnRyb2xzXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7IC8vIEZsZXhib3ggYWxpZ25tZW50IG1lYW5zIHdlIGxvc2Ugb3VyIEhUTUwgc3BhY2UgaGVyZSwgc28gd2UgY29tcGVuc2F0ZS5cbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgICB9XG5cbiAgICAvLyBSZS1vdmVycmlkZSB0aGUgZmVlZGJhY2sgaWNvbi5cbiAgICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRidG4tbGluZS1oZWlnaHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGZvbnQtc2l6ZS1iYXNlLCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgLy8gU2hhcmUgaG92ZXIgYW5kIGZvY3VzIHN0eWxlc1xuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBvcGFjaXR5OiAuNjU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXRbZGlzYWJsZWRdIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG59XG4uYnRuLXNlY29uZGFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc2Vjb25kYXJ5LWNvbG9yLCAkYnRuLXNlY29uZGFyeS1iZywgJGJ0bi1zZWNvbmRhcnktYm9yZGVyKTtcbn1cbi5idG4taW5mbyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4taW5mby1jb2xvciwgJGJ0bi1pbmZvLWJnLCAkYnRuLWluZm8tYm9yZGVyKTtcbn1cbi5idG4tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc3VjY2Vzcy1jb2xvciwgJGJ0bi1zdWNjZXNzLWJnLCAkYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi5idG4td2FybmluZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcbn1cbi5idG4tZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kYW5nZXItY29sb3IsICRidG4tZGFuZ2VyLWJnLCAkYnRuLWRhbmdlci1ib3JkZXIpO1xufVxuXG4vLyBSZW1vdmUgYWxsIGJhY2tncm91bmRzXG4uYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1wcmltYXJ5LWJnKTtcbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnkge1xuICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCRidG4tc2Vjb25kYXJ5LWJvcmRlcik7XG59XG4uYnRuLW91dGxpbmUtaW5mbyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1pbmZvLWJnKTtcbn1cbi5idG4tb3V0bGluZS1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLXN1Y2Nlc3MtYmcpO1xufVxuLmJ0bi1vdXRsaW5lLXdhcm5pbmcge1xuICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCRidG4td2FybmluZy1iZyk7XG59XG4uYnRuLW91dGxpbmUtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLWRhbmdlci1iZyk7XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG4gICYsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgZXZlbi1udW1iZXJlZCBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gbGFyZ2UgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuLmJ0bi1zbSB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgcHJvcGVyIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBzbWFsbCBpbnB1dFxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLmZhZGUge1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICYuc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICBkaXNwbGF5OiBub25lO1xuICAmLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbnRyIHtcbiAgJi5jb2xsYXBzZS5zaG93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIH1cbn1cblxudGJvZHkge1xuICAmLmNvbGxhcHNlLnNob3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtd2lkdGg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gUHJldmVudCB0aGUgZm9jdXMgb24gdGhlIGRyb3Bkb3duIHRvZ2dsZSB3aGVuIGNsb3NpbmcgZHJvcGRvd25zXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gIG1hcmdpbjogJGRyb3Bkb3duLW1hcmdpbi10b3AgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlOyAvLyBSZWRlY2xhcmUgYmVjYXVzZSBuZXN0aW5nIGNhbiBjYXVzZSBpbmhlcml0YW5jZSBpc3N1ZXNcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogM3B4ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZDogbm9uZTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZztcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxuLnNob3cge1xuICAvLyBTaG93IHRoZSBtZW51XG4gID4gLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBvdXRsaW5lIHdoZW4gOmZvY3VzIGlzIHRyaWdnZXJlZFxuICA+IGEge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8gTWVudSBwb3NpdGlvbmluZ1xuLy9cbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cbi8vIG1lbnUgd2l0aCB0aGUgcGFyZW50LlxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bzsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBgLmRyb3Bkb3duLW1lbnVgXG59XG5cbi5kcm9wZG93bi1tZW51LWxlZnQge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIEJhY2tkcm9wIHRvIGNhdGNoIGJvZHkgY2xpY2tzIG9uIG1vYmlsZSwgZXRjLlxuLmRyb3Bkb3duLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd24tYmFja2Ryb3A7XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy9cbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cblxuLmRyb3B1cCB7XG4gIC8vIERpZmZlcmVudCBwb3NpdGlvbmluZyBmb3IgYm90dG9tIHVwIG1lbnVcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLW1hcmdpbi10b3A7XG4gIH1cbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdFbGVtZW50XG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9uIHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1idG4tYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcbi5idG4tZ3JvdXAgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxufVxuLy8gTmVlZCAuZHJvcGRvd24tdG9nZ2xlIHNpbmNlIDpsYXN0LWNoaWxkIGRvZXNuJ3QgYXBwbHkgZ2l2ZW4gYSAuZHJvcGRvd24tbWVudSBpbW1lZGlhdGVseSBhZnRlciBpdFxuLmJ0bi1ncm91cCA+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAgPiAuZHJvcGRvd24tdG9nZ2xlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBDdXN0b20gZWRpdHMgZm9yIGluY2x1ZGluZyBidG4tZ3JvdXBzIHdpdGhpbiBidG4tZ3JvdXBzICh1c2VmdWwgZm9yIGluY2x1ZGluZyBkcm9wZG93biBidXR0b25zIHdpdGhpbiBhIGJ0bi1ncm91cClcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG5cbi8vIE9uIGFjdGl2ZSBhbmQgb3BlbiwgZG9uJ3Qgc2hvdyBvdXRsaW5lXG4uYnRuLWdyb3VwIC5kcm9wZG93bi10b2dnbGU6YWN0aXZlLFxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgYW5kIHNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgLmJ0bixcbiAgLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgJjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIGlucHV0IGlzIGFsd2F5cyBhYm92ZSB0aGUgKmFwcGVuZGVkKiBhZGRvbiBidXR0b24gZm9yXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgLy8gQWRkIHdpZHRoIDElIGFuZCBmbGV4LWJhc2lzIGF1dG8gdG8gZW5zdXJlIHRoYXQgYnV0dG9uIHdpbGwgbm90IHdyYXAgb3V0XG4gICAgLy8gdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRSBFZGdlKyBhbmQgRmlyZWZveC4gQ2hyb21lIGRvZXMgbm90IHJlcXVpcmUgdGhpcy5cbiAgICB3aWR0aDogMSU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgZnJvbnRcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0bixcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBjb250ZW50IG9mIHRoZSBhZGRvbnMgd2l0aGluIHRoZSBpbnB1dCBncm91cFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcbn1cblxuXG4vLyBTaXppbmcgb3B0aW9uc1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgQGV4dGVuZCAuZm9ybS1jb250cm9sLWxnO1xufVxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgQGV4dGVuZCAuZm9ybS1jb250cm9sLXNtO1xufVxuXG5cbi8vXG4vLyBUZXh0IGlucHV0IGdyb3Vwc1xuLy9cblxuLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gU2l6aW5nXG4gICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xuICB9XG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuICB9XG5cbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAvLyBzY3NzLWxpbnQ6ZW5hYmxlIFF1YWxpZnlpbmdFbGVtZW50XG59XG5cblxuLy9cbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuLy9cblxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bm90KDpsYXN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmxhc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bm90KDpsYXN0LWNoaWxkKSA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmxhc3QtY2hpbGQpID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5kcm9wZG93bi10b2dnbGUsXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4uZm9ybS1jb250cm9sICsgLmlucHV0LWdyb3VwLWFkZG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi8vXG4vLyBCdXR0b24gaW5wdXQgZ3JvdXBzXG4vL1xuXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBKYW5raWx5IHByZXZlbnQgaW5wdXQgYnV0dG9uIGdyb3VwcyBmcm9tIHdyYXBwaW5nIHdpdGggYHdoaXRlLXNwYWNlYCBhbmRcbiAgLy8gYGZvbnQtc2l6ZWAgaW4gY29tYmluYXRpb24gd2l0aCBgaW5saW5lLWJsb2NrYCBvbiBidXR0b25zLlxuICBmb250LXNpemU6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBzcGFjaW5nLCBwb3NpdGlvbiBmb3IgYnJpbmdpbmcgaG92ZXJlZC9mb2N1c2VkL2FjdGl2ZWRcbiAgLy8gZWxlbWVudCBhYm92ZSB0aGUgc2libGluZ3MuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIFZlcnRpY2FsbHkgc3RyZXRjaCB0aGUgYnV0dG9uIGFuZCBjZW50ZXIgaXRzIGNvbnRlbnRcbiAgICBmbGV4OiAxO1xuXG4gICAgKyAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAoLSRpbnB1dC1idG4tYm9yZGVyLXdpZHRoKTtcbiAgICB9XG5cbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBidXR0b24gdG8gdGhlIGZyb250XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMtYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG5cbiAgLy8gTmVnYXRpdmUgbWFyZ2luIHRvIG9ubHkgaGF2ZSBhIHNpbmdsZSwgc2hhcmVkIGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICA+IC5idG4sXG4gICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1yaWdodDogKC0kaW5wdXQtYnRuLWJvcmRlci13aWR0aCk7XG4gICAgfVxuICB9XG4gICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgID4gLmJ0bixcbiAgICA+IC5idG4tZ3JvdXAge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAoLSRpbnB1dC1idG4tYm9yZGVyLXdpZHRoKTtcbiAgICAgIC8vIEJlY2F1c2Ugc3BlY2lmaWNpdHlcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBQcm9wZXJ0eUNvdW50XG5cbi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1pbi1oZWlnaHQ6ICgxcmVtICogJGxpbmUtaGVpZ2h0LWJhc2UpO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG4gIG1hcmdpbi1yaWdodDogJGN1c3RvbS1jb250cm9sLXNwYWNlci14O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWJnO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1mb2N1cy1pbmRpY2F0b3ItYm94LXNoYWRvdztcbiAgfVxuXG4gICY6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1hY3RpdmUtaW5kaWNhdG9yLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1hY3RpdmUtaW5kaWNhdG9yLWJnO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgICAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtY3Vyc29yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWluZGljYXRvci1iZztcbiAgICB9XG5cbiAgICB+IC5jdXN0b20tY29udHJvbC1kZXNjcmlwdGlvbiB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWRlc2NyaXB0aW9uLWNvbG9yO1xuICAgICAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtY3Vyc29yO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gaW5kaWNhdG9yXG4vL1xuLy8gR2VuZXJhdGVzIGEgc2hhZG93IGVsZW1lbnQgdG8gY3JlYXRlIG91ciBtYWtlc2hpZnQgY2hlY2tib3gvcmFkaW8gYmFja2dyb3VuZC5cblxuLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAoKCRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDIpO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbn1cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWNoZWNrYm94LXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tY2hlY2tib3gtY2hlY2tlZC1pY29uO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtYmc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWljb247XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdyk7XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tcmFkaW8tcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLXJhZGlvLWNoZWNrZWQtaWNvbjtcbiAgfVxufVxuXG5cbi8vIExheW91dCBvcHRpb25zXG4vL1xuLy8gQnkgZGVmYXVsdCByYWRpb3MgYW5kIGNoZWNrYm94ZXMgYXJlIGBpbmxpbmUtYmxvY2tgIHdpdGggbm8gYWRkaXRpb25hbCBzcGFjaW5nXG4vLyBzZXQuIFVzZSB0aGVzZSBvcHRpb25hbCBjbGFzc2VzIHRvIHR3ZWFrIHRoZSBsYXlvdXQuXG5cbi5jdXN0b20tY29udHJvbHMtc3RhY2tlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLmN1c3RvbS1jb250cm9sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXk7XG5cbiAgICArIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwOi8vcHJpbWVyY3NzLmlvLlxuLy9cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgJHNlbGVjdC1ib3JkZXItd2lkdGg6ICgkYm9yZGVyLXdpZHRoICogMik7XG4gIGhlaWdodDogY2FsYygjeyRpbnB1dC1oZWlnaHR9ICsgI3skc2VsZWN0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmcgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yIG5vLXJlcGVhdCByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRjdXN0b20tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzKTtcbiAgLy8gVXNlIHZlbmRvciBwcmVmaXhlcyBhcyBgYXBwZWFyYW5jZWAgaXNuJ3QgcGFydCBvZiB0aGUgQ1NTIHNwZWMuXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcmVzcyB0aGUgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBkZWZhdWx0IGNhcmV0IGluIElFMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk7XG4gIGZvbnQtc2l6ZTogJGN1c3RvbS1zZWxlY3Qtc20tZm9udC1zaXplO1xuXG4gIC8vICY6bm90KFttdWx0aXBsZV0pIHtcbiAgLy8gICBoZWlnaHQ6IDI2cHg7XG4gIC8vICAgbWluLWhlaWdodDogMjZweDtcbiAgLy8gfVxufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIG1pbi13aWR0aDogJGN1c3RvbS1maWxlLXdpZHRoO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHkgPSAwKTtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3cpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA1O1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXggJGN1c3RvbS1maWxlLXBhZGRpbmcteTtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tZmlsZS1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgQGVhY2ggJGxhbmcsICR0ZXh0IGluIG1hcC1nZXQoJGN1c3RvbS1maWxlLXRleHQsIHBsYWNlaG9sZGVyKSB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHRleHQ7XG4gICAgfVxuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDtcbiAgICByaWdodDogLSRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg7XG4gICAgYm90dG9tOiAtJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDtcbiAgICB6LWluZGV4OiA2O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy14ICRjdXN0b20tZmlsZS1wYWRkaW5nLXk7XG4gICAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWJnO1xuICAgIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAwKTtcbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdGV4dCBpbiBtYXAtZ2V0KCRjdXN0b20tZmlsZS10ZXh0LCBidXR0b24tbGFiZWwpIHtcbiAgICAmOmxhbmcoI3skbGFuZ30pOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJHRleHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMgb3IgYDx1bD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0IGFuZCByZW1vdmVzIGhvdmVyL3RhYiBlZmZlY3RzXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstY29sb3I7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG5cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstY29sb3I7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvLyBDb250ZW50c1xuLy9cbi8vIE5hdmJhclxuLy8gTmF2YmFyIGJyYW5kXG4vLyBOYXZiYXIgbmF2XG4vLyBOYXZiYXIgdGV4dFxuLy8gTmF2YmFyIGRpdmlkZXJcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vLyBOYXZiYXIgcG9zaXRpb25cbi8vIE5hdmJhciB0aGVtZXNcblxuXG4vLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAgICAuNDI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogLjQyNXJlbTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyAvLyBQcmV2ZW50IHRvZ2dsZXIgZnJvbSBncm93aW5nIHRvIGZ1bGwgd2lkdGggd2hlbiBpdCdzIHRoZSBvbmx5IHZpc2libGUgbmF2YmFyIGNoaWxkXG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4vLyBVc2UgYHBvc2l0aW9uYCBvbiB0aGUgdG9nZ2xlciB0byBwcmV2ZW50IGl0IGZyb20gYmVpbmcgYXV0byBwbGFjZWQgYXMgYSBmbGV4XG4vLyBpdGVtIGFuZCBhbGxvdyBlYXN5IHBsYWNlbWVudC5cbi5uYXZiYXItdG9nZ2xlci1sZWZ0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAkbmF2YmFyLXBhZGRpbmcteDtcbn1cbi5uYXZiYXItdG9nZ2xlci1yaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItdG9nZ2xlYWJsZS0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLXRvZ2dsZWFibGUge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgID4gLmNvbnRhaW5lciB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gc2Nzcy1saW50OmRpc2FibGUgSW1wb3J0YW50UnVsZVxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLy8gc2Nzcy1saW50OmVuYWJsZSBJbXBvcnRhbnRSdWxlXG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQsXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAub3BlbiA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5vcGVuLFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1iZztcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1pbnZlcnNlIHtcbiAgLm5hdmJhci1icmFuZCxcbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWFjdGl2ZS1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAub3BlbiA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5vcGVuLFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGVyLWJvcmRlcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlci1iZztcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1jb2xvcjtcbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtYmxvY2sge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0oJGNhcmQtc3BhY2VyLXkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4uY2FyZCB7XG4gID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXIgJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lciAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyICRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXIpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xuICBtYXJnaW4tbGVmdDogLSgkY2FyZC1zcGFjZXIteCAvIDIpO1xufVxuXG5cbi8vXG4vLyBCYWNrZ3JvdW5kIHZhcmlhdGlvbnNcbi8vXG5cbi5jYXJkLXByaW1hcnkge1xuICBAaW5jbHVkZSBjYXJkLXZhcmlhbnQoJGJyYW5kLXByaW1hcnksICRicmFuZC1wcmltYXJ5KTtcbn1cbi5jYXJkLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBjYXJkLXZhcmlhbnQoJGJyYW5kLXN1Y2Nlc3MsICRicmFuZC1zdWNjZXNzKTtcbn1cbi5jYXJkLWluZm8ge1xuICBAaW5jbHVkZSBjYXJkLXZhcmlhbnQoJGJyYW5kLWluZm8sICRicmFuZC1pbmZvKTtcbn1cbi5jYXJkLXdhcm5pbmcge1xuICBAaW5jbHVkZSBjYXJkLXZhcmlhbnQoJGJyYW5kLXdhcm5pbmcsICRicmFuZC13YXJuaW5nKTtcbn1cbi5jYXJkLWRhbmdlciB7XG4gIEBpbmNsdWRlIGNhcmQtdmFyaWFudCgkYnJhbmQtZGFuZ2VyLCAkYnJhbmQtZGFuZ2VyKTtcbn1cblxuLy8gUmVtb3ZlIGFsbCBiYWNrZ3JvdW5kc1xuLmNhcmQtb3V0bGluZS1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgY2FyZC1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1wcmltYXJ5LWJnKTtcbn1cbi5jYXJkLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgQGluY2x1ZGUgY2FyZC1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1zZWNvbmRhcnktYm9yZGVyKTtcbn1cbi5jYXJkLW91dGxpbmUtaW5mbyB7XG4gIEBpbmNsdWRlIGNhcmQtb3V0bGluZS12YXJpYW50KCRidG4taW5mby1iZyk7XG59XG4uY2FyZC1vdXRsaW5lLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnRuLXN1Y2Nlc3MtYmcpO1xufVxuLmNhcmQtb3V0bGluZS13YXJuaW5nIHtcbiAgQGluY2x1ZGUgY2FyZC1vdXRsaW5lLXZhcmlhbnQoJGJ0bi13YXJuaW5nLWJnKTtcbn1cbi5jYXJkLW91dGxpbmUtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgY2FyZC1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1kYW5nZXItYmcpO1xufVxuXG4vL1xuLy8gSW52ZXJzZSB0ZXh0IHdpdGhpbiBhIGNhcmQgZm9yIHVzZSB3aXRoIGRhcmsgYmFja2dyb3VuZHNcbi8vXG5cbi5jYXJkLWludmVyc2Uge1xuICBAaW5jbHVkZSBjYXJkLWludmVyc2U7XG59XG5cbi8vXG4vLyBCbG9ja3F1b3RlXG4vL1xuXG4uY2FyZC1ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZyB7XG4gIC8vIG1hcmdpbjogLTEuMzI1cmVtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXIpO1xufVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbn1cblxuXG5cbi8vIENhcmQgaW1hZ2UgY2Fwc1xuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXIpO1xufVxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXIpO1xufVxuXG5cbi8vIENhcmQgZGVja1xuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5jYXJkLWRlY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAxIDAgMDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIC8vIFNlbGVjdGl2ZWx5IGFwcGx5IGhvcml6b250YWwgbWFyZ2lucyB0byBjYXJkcyB0byBhdm9pZCBkb2luZyB0aGVcbiAgICAgIC8vIG5lZ2F0aXZlIG1hcmdpbiBkYW5jZSBsaWtlIG91ciBncmlkLiBUaGlzIGRpZmZlcnMgZnJvbSB0aGUgZ3JpZFxuICAgICAgLy8gZHVlIHRvIHRoZSB1c2Ugb2YgbWFyZ2lucyBhcyBndXR0ZXJzIGluc3RlYWQgb2YgcGFkZGluZy5cbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBtYXJnaW4tbGVmdDogJGNhcmQtZGVjay1tYXJnaW47IH1cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7IG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLmNhcmQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcblxuICAgIC5jYXJkIHtcbiAgICAgIGZsZXg6IDEgMCAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3Age1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20ge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLmNhcmQtY29sdW1ucyB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICBmbG9hdDogbGVmdDtcblxuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIFN1cHByZXNzIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3IgaW4gbW9kZXJuIGJyb3dzZXJzXG4gICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiI3skYnJlYWRjcnVtYi1kaXZpZGVyfVwiO1xuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC8vIDEtMjogRGlzYWJsZSBicm93c2VyIGRlZmF1bHQgbGlzdCBzdHlsZXNcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyAxXG4gIGxpc3Qtc3R5bGU6IG5vbmU7IC8vIDJcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDsgLy8gV2hpbGUgYHBvaW50ZXItZXZlbnRzOiBub25lYCByZW1vdmVzIHRoZSBjdXJzb3IgaW4gbW9kZXJuIGJyb3dzZXJzLCB3ZSBwcm92aWRlIGEgZGlzYWJsZWQgY3Vyc29yIGFzIGEgZmFsbGJhY2suXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI7XG4gIH1cbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLXBhZGRpbmcteSAkcGFnaW5hdGlvbi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJGJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuLy8gQWRkIGhvdmVyIGVmZmVjdHMsIGJ1dCBvbmx5IGZvciBsaW5rc1xuYS5iYWRnZSB7XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGJhZGdlLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuLy8gc2Nzcy1saW50OmVuYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuXG4vLyBQaWxsIGJhZGdlc1xuLy9cbi8vIE1ha2UgdGhlbSBleHRyYSByb3VuZGVkIHdpdGggYSBtb2RpZmllciB0byByZXBsYWNlIHYzJ3MgYmFkZ2VzLlxuXG4uYmFkZ2UtcGlsbCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgcGFkZGluZy1sZWZ0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENvbG9yc1xuLy9cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGJhZGdlcyBnZXQgZGFya2VyIG9uIDpob3ZlcikuXG5cbi5iYWRnZS1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkYmFkZ2UtZGVmYXVsdC1iZyk7XG59XG5cbi5iYWRnZS1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkYmFkZ2UtcHJpbWFyeS1iZyk7XG59XG5cbi5iYWRnZS1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkYmFkZ2Utc3VjY2Vzcy1iZyk7XG59XG5cbi5iYWRnZS1pbmZvIHtcbiAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkYmFkZ2UtaW5mby1iZyk7XG59XG5cbi5iYWRnZS13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkYmFkZ2Utd2FybmluZy1iZyk7XG59XG5cbi5iYWRnZS1kYW5nZXIge1xuICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCRiYWRnZS1kYW5nZXItYmcpO1xufVxuIiwiLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1ociB7XG4gIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkanVtYm90cm9uLWJnLCAxMCUpO1xufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLSRhbGVydC1wYWRkaW5nLXk7XG4gICAgcmlnaHQ6IC0kYWxlcnQtcGFkZGluZy14O1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG4uYWxlcnQtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXN1Y2Nlc3MtYmcsICRhbGVydC1zdWNjZXNzLWJvcmRlciwgJGFsZXJ0LXN1Y2Nlc3MtdGV4dCk7XG59XG4uYWxlcnQtaW5mbyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWluZm8tYmcsICRhbGVydC1pbmZvLWJvcmRlciwgJGFsZXJ0LWluZm8tdGV4dCk7XG59XG4uYWxlcnQtd2FybmluZyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XG59XG4uYWxlcnQtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtZGFuZ2VyLWJnLCAkYWxlcnQtZGFuZ2VyLWJvcmRlciwgJGFsZXJ0LWRhbmdlci10ZXh0KTtcbn1cbiIsIi8vIFByb2dyZXNzIGFuaW1hdGlvbnNcbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cbi8vIEJhc2ljIHByb2dyZXNzIGJhclxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGZvbnQtc2l6ZTogJHByb2dyZXNzLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbn1cbi5wcm9ncmVzcy1iYXIge1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xufVxuXG4vLyBTdHJpcGVkXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG4vLyBBbmltYXRlZFxuLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nO1xufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg7XG4gIC8vIFBsYWNlIHRoZSBib3JkZXIgb24gdGhlIGxpc3QgaXRlbXMgYW5kIG5lZ2F0aXZlIG1hcmdpbiB1cCBmb3IgYmV0dGVyIHN0eWxpbmdcbiAgbWFyZ2luLWJvdHRvbTogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuXG4gICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICAgIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiBzbWFsbCxcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiAuc21hbGwge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHN1Y2Nlc3MsICRzdGF0ZS1zdWNjZXNzLWJnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGluZm8sICRzdGF0ZS1pbmZvLWJnLCAkc3RhdGUtaW5mby10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHdhcm5pbmcsICRzdGF0ZS13YXJuaW5nLWJnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGRhbmdlciwgJHN0YXRlLWRhbmdlci1iZywgJHN0YXRlLWRhbmdlci10ZXh0KTtcbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0yMWJ5OSB7XG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoOSAvIDIxKTtcbiAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoOSAvIDE2KTtcbiAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgzIC8gNCk7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMWJ5MSB7XG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoMSAvIDEpO1xuICB9XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogJGNsb3NlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIG9wYWNpdHk6IC41O1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogLjc1O1xuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuLy8gc2Nzcy1saW50OmVuYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjUlKTtcbiAgfVxuICAmLnNob3cgLm1vZGFsLWRpYWxvZyB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG59XG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LXhzLWJveC1zaGFkb3cpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlciBpdFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHNob3VsZCB0aGVyZSBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIGJvcmRlci10b3A6ICRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xuXG4gIC8vIEVhc2lseSBwbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgPiA6bm90KDpmaXJzdC1jaGlsZCkgeyBtYXJnaW4tbGVmdDogLjI1cmVtOyB9XG4gID4gOm5vdCg6bGFzdC1jaGlsZCkgeyBtYXJnaW4tcmlnaHQ6IC4yNXJlbTsgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1tZDtcbiAgICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctc20tdXAtbWFyZ2luLXkgYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LXNtLXVwLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcgeyBtYXgtd2lkdGg6ICRtb2RhbC1sZzsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgJi50b29sdGlwLXRvcCxcbiAgJi5icy10ZXRoZXItZWxlbWVudC1hdHRhY2hlZC1ib3R0b20ge1xuICAgIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLW1hcmdpbjtcblxuICAgIC50b29sdGlwLWlubmVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJi50b29sdGlwLXJpZ2h0LFxuICAmLmJzLXRldGhlci1lbGVtZW50LWF0dGFjaGVkLWxlZnQge1xuICAgIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICR0b29sdGlwLW1hcmdpbjtcblxuICAgIC50b29sdGlwLWlubmVyOjpiZWZvcmUge1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG4gICYudG9vbHRpcC1ib3R0b20sXG4gICYuYnMtdGV0aGVyLWVsZW1lbnQtYXR0YWNoZWQtdG9wIHtcbiAgICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIG1hcmdpbi10b3A6ICR0b29sdGlwLW1hcmdpbjtcblxuICAgIC50b29sdGlwLWlubmVyOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJi50b29sdGlwLWxlZnQsXG4gICYuYnMtdGV0aGVyLWVsZW1lbnQtYXR0YWNoZWQtcmlnaHQge1xuICAgIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1tYXJnaW47XG5cbiAgICAudG9vbHRpcC1pbm5lcjo6YmVmb3JlIHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIH1cbn1cbiIsIi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkcG9wb3Zlci1pbm5lci1wYWRkaW5nO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG5cbiAgLy8gUG9wb3ZlciBkaXJlY3Rpb25zXG5cbiAgJi5wb3BvdmVyLXRvcCxcbiAgJi5icy10ZXRoZXItZWxlbWVudC1hdHRhY2hlZC1ib3R0b20ge1xuICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206IC0oJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGggLSAxKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmLnBvcG92ZXItcmlnaHQsXG4gICYuYnMtdGV0aGVyLWVsZW1lbnQtYXR0YWNoZWQtbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogLSgkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCAtIDEpO1xuICAgICAgbWFyZ2luLXRvcDogLSgkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCAtIDEpO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmLnBvcG92ZXItYm90dG9tLFxuICAmLmJzLXRldGhlci1lbGVtZW50LWF0dGFjaGVkLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAtKCRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoIC0gMSk7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItdGl0bGUtYmc7XG4gICAgfVxuXG4gICAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci10aXRsZSdzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAgIC5wb3BvdmVyLXRpdGxlOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBvcG92ZXItdGl0bGUtYmc7XG4gICAgfVxuICB9XG5cbiAgJi5wb3BvdmVyLWxlZnQsXG4gICYuYnMtdGV0aGVyLWVsZW1lbnQtYXR0YWNoZWQtcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IC0oJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGggLSAxKTtcbiAgICAgIG1hcmdpbi10b3A6IC0oJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGggLSAxKTtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLXRpdGxlIHtcbiAgcGFkZGluZzogJHBvcG92ZXItdGl0bGUtcGFkZGluZy15ICRwb3BvdmVyLXRpdGxlLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLXRpdGxlLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLXRpdGxlLWJnLCA1JSk7XG4gICRvZmZzZXQtYm9yZGVyLXdpZHRoOiBjYWxjKCN7JGJvcmRlci1yYWRpdXMtbGd9IC0gI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG9mZnNldC1ib3JkZXItd2lkdGgpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItY29udGVudCB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWNvbnRlbnQtcGFkZGluZy15ICRwb3BvdmVyLWNvbnRlbnQtcGFkZGluZy14O1xufVxuXG5cbi8vIEFycm93c1xuLy9cbi8vIC5wb3BvdmVyLWFycm93IGlzIG91dGVyLCAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIgaXMgaW5uZXJcblxuLnBvcG92ZXI6OmJlZm9yZSxcbi5wb3BvdmVyOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5wb3BvdmVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xufVxuLnBvcG92ZXI6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbn1cbiIsIi8vIFdyYXBwZXIgZm9yIHRoZSBzbGlkZSBjb250YWluZXIgYW5kIGluZGljYXRvcnNcbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBpbmNsdWRlIGlmLXN1cHBvcnRzLTNkLXRyYW5zZm9ybXMoKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBlcnNwZWN0aXZlOiAxMDAwcHg7XG4gIH1cbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xufVxuXG4vLyBDU1MzIHRyYW5zZm9ybXMgd2hlbiBzdXBwb3J0ZWQgYnkgdGhlIGJyb3dzZXJcbkBpbmNsdWRlIGlmLXN1cHBvcnRzLTNkLXRyYW5zZm9ybXMoKSB7XG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgLy8gV2UgY2FuJ3QgaGF2ZSBhIHRyYW5zaXRpb24gaGVyZSBiZWNhdXNlIFdlYktpdCBjYW5jZWxzIHRoZSBjYXJvdXNlbFxuICAvLyBhbmltYXRpb24gaWYgeW91IHRyaXAgdGhpcyB3aGlsZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgYW5pbWF0aW9uLlxuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogLjk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZztcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZztcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gb3ZlcnJpZGUgPG9sPiBkZWZhdWx0XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgICBtYXgtd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnLCAuNSk7XG5cbiAgICAvLyBVc2UgcHNldWRvIGNsYXNzZXMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTEwcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0xMHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyKTtcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAoKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyKTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCJAaW1wb3J0IFwidXRpbGl0aWVzL2FsaWduXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2JhY2tncm91bmRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYm9yZGVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9kaXNwbGF5XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2ZsZXhcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZmxvYXRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2NyZWVucmVhZGVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zaXppbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc3BhY2luZ1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy90ZXh0XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3Zpc2liaWxpdHlcIjtcbiIsIi5hbGlnbi1iYXNlbGluZSAgICB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9IC8vIEJyb3dzZXIgZGVmYXVsdFxuLmFsaWduLXRvcCAgICAgICAgIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4uYWxpZ24tbWlkZGxlICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1ib3R0b20gICAgICB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtYm90dG9tIHsgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LXRvcCAgICB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50OyB9XG4iLCIvL1xuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuLy9cblxuLmJnLWZhZGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRib2R5LWJnLCAzJSk7XG59XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctc3VjY2VzcycsICRicmFuZC1zdWNjZXNzKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWluZm8nLCAkYnJhbmQtaW5mbyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy13YXJuaW5nJywgJGJyYW5kLXdhcm5pbmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctZGFuZ2VyJywgJGJyYW5kLWRhbmdlcik7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1pbnZlcnNlJywgJGJyYW5kLWludmVyc2UpO1xuIiwiLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xufVxuLnJvdW5kZWQtdG9wIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xufVxuLnJvdW5kZWQtcmlnaHQge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbn1cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbn1cbi5yb3VuZGVkLWxlZnQge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuIiwiLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cbiIsIi8vXG4vLyBEaXNwbGF5IHV0aWxpdGllc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmQjeyRpbmZpeH0tbm9uZSAgICAgICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0taW5saW5lICAgICAgIHsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWJsb2NrICAgICAgICB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZSAgICAgICAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tdGFibGUtY2VsbCAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tZmxleCAgICAgICAgIHsgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0taW5saW5lLWZsZXggIHsgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tZmlyc3QgICAgIHsgb3JkZXI6IC0xOyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbGFzdCAgICAgIHsgb3JkZXI6IDE7IH1cbiAgICAuZmxleCN7JGluZml4fS11bm9yZGVyZWQgeyBvcmRlcjogMDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgQGluY2x1ZGUgZmxvYXQtbGVmdDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IEBpbmNsdWRlIGZsb2F0LXJpZ2h0OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgQGluY2x1ZGUgZmxvYXQtbm9uZTsgfVxuICB9XG59XG4iLCIvLyBQb3NpdGlvbmluZ1xuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG4iLCIvLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGhzIGluICRzcGFjZXJzIHtcbiAgICAgICAgJGxlbmd0aC14OiBtYXAtZ2V0KCRsZW5ndGhzLCB4KTtcbiAgICAgICAgJGxlbmd0aC15OiBtYXAtZ2V0KCRsZW5ndGhzLCB5KTtcblxuICAgICAgICAuI3skYWJicmV2fSN7JGluZml4fS0jeyRzaXplfSAgeyAjeyRwcm9wfTogICAgICAgICRsZW5ndGgteSAkbGVuZ3RoLXggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfS10b3A6ICAgICRsZW5ndGgteSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9ciN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9LXJpZ2h0OiAgJGxlbmd0aC14ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoLXkgIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfS1sZWZ0OiAgICRsZW5ndGgteCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGgteCAhaW1wb3J0YW50O1xuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICAkbGVuZ3RoLXggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXRvcDogICAgJGxlbmd0aC15ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoLXkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvICB7IG1hcmdpbjogICAgICAgIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvIHsgbWFyZ2luLXRvcDogICAgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8geyBtYXJnaW4tcmlnaHQ6ICBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byB7IG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvIHsgbWFyZ2luLWxlZnQ6ICAgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogIGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogICAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFRleHRcbi8vXG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtbm93cmFwICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXRydW5jYXRlIHsgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LW5vcm1hbCB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsOyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkOyB9XG4uZm9udC1pdGFsaWMgICAgICAgIHsgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1tdXRlZCcsICR0ZXh0LW11dGVkKTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXN1Y2Nlc3MnLCAkYnJhbmQtc3VjY2Vzcyk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtaW5mbycsICRicmFuZC1pbmZvKTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC13YXJuaW5nJywgJGJyYW5kLXdhcm5pbmcpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWRhbmdlcicsICRicmFuZC1kYW5nZXIpO1xuXG4vLyBGb250IGNvbG9yXG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZ3JheS1kYXJrJywgJGdyYXktZGFyayk7XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgpO1xufVxuIiwiLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4uaW52aXNpYmxlIHtcbiAgQGluY2x1ZGUgaW52aXNpYmxlKCk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSB1dGlsaXRpZXNcblxuQGVhY2ggJGJwIGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC5oaWRkZW4tI3skYnB9LXVwIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAuaGlkZGVuLSN7JGJwfS1kb3duIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJwKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG4vL1xuLy8gTWVkaWEgcXVlcmllcyBhcmUgcGxhY2VkIG9uIHRoZSBpbnNpZGUgdG8gYmUgbWl4aW4tZnJpZW5kbHkuXG5cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRkZW4tcHJpbnQge1xuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLmRyb3Bkb3duLFxuLmRyb3B1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLWl0ZW0ge1xuICBwYWRkaW5nOiAwLjVyZW0gJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAzMDBtcywgY29sb3IgMzAwbXMpO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIHRvcDogMDtcbiAgQGluY2x1ZGUgYW5pbWF0ZShmYWRlSW4sIDMwMG1zKTtcbn1cblxuLmRyb3Bkb3duLW1lbnUtLWFsdCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5kcm9wZG93bi1tZW51LS1ibG9jayB7XG4gIHdpZHRoOiAzMjBweDtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS0taWNvbiB7XG4gIC5kcm9wZG93bi1pdGVtIHtcbiAgICAmID4gaSB7XG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIHdpZHRoOiAycmVtO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGJvdHRvbTogMDtcbiAgfVxufVxuXG4uY2FyZXQge1xuICAmOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgIGNvbnRlbnQ6ICdcXGYyZjInO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDNweDtcbiAgfVxufVxuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgYm9yZGVyLXJhZGl1czogMCAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufSIsIiIsIi5wcm9ncmVzcyB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLWJhciAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG59IiwiLmNhcmQge1xuICBib3gtc2hhZG93OiAkY2FyZC1zaGFkb3c7XG4gIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aC1iYXNlO1xuXG4gICY6bm90KFtjbGFzcyo9XCJjYXJkLW91dGxpbmUtXCJdKSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbltjbGFzcyo9XCJjYXJkLW91dGxpbmUtXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYgKyAuY2FyZC1ibG9jayB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAuYnRuLS1hY3Rpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjVweDtcbiAgICBib3R0b206IC0yNXB4O1xuICB9XG59XG5cbi5jYXJkID4gLmFjdGlvbnMsXG4uY2FyZC1oZWFkZXIgLmFjdGlvbnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNXB4O1xuICB6LWluZGV4OiAyO1xuICB0b3A6IDE4cHg7XG59XG5cbltjbGFzcyo9XCJjYXJkLWltZ1wiXSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2FyZC1pbnZlcnNlIHtcbiAgLmNhcmQtbGluayxcbiAgLmNhcmQtdGV4dCxcbiAgLmNhcmQtc3VidGl0bGUsXG4gIC5jYXJkLWJsb2NrcXVvdGUgLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuODUpO1xuICB9XG5cbiAgLmNhcmQtaGVhZGVyLFxuICAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLmNhcmQtbGluayB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC45OHJlbTtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogbGlnaHRlbigkaGVhZGluZ3MtY29sb3IsIDEwJSk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgJjpub3QoLmNhcmQtZm9vdGVyLS1oaWdobGlnaHQpIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXItLWhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWhpZ2hsaWdodC1iZztcbn1cblxuLmNhcmQtYmxvY2sge1xuICBwOm9ubHktY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmNhcmQtYmxvY2tfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gIG1hcmdpbi1ib3R0b206IDAuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLmNhcmQtLWZ1bGxzY3JlZW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogJGhlYWRlci16LWluZGV4IC0gMTtcbiAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0O1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLmNhcmQtYmxvY2tfX25hdiB7XG4gIG1hcmdpbi1ib3R0b206IDEuOHJlbTtcbiAgcGFkZGluZzogMCAxcHg7XG5cbiAgJiA+IGEge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiBsaWdodGVuKCRib2R5LWNvbG9yLCAyNSUpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMzAwbXMpO1xuXG4gICAgJiArIGEge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIH1cbiAgICBcbiAgICAmLmFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB9XG4gIH1cbn0iLCIuYnRuIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6bm90KC5idG4tc2Vjb25kYXJ5KTpub3QoW2NsYXNzKj1cImJ0bi1vdXRsaW5lLVwiXSk6bm90KC5idG4tbGluaykge1xuICAgIGJveC1zaGFkb3c6ICRidG4tYm94LXNoYWRvdztcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLmJ0bi1zZWNvbmRhcnkge1xuICAmLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDJweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICB9XG59XG5cbi5idG4tLXdoaXRlIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgfVxufVxuXG4uYnRuLS1pY29uIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBsaW5lLWhlaWdodDogMi45cmVtO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYnRuLS1pY29uLXRleHQge1xuICAmID4gLnptZGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIG1hcmdpbjogMXB4IDVweCAwIDA7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLmJ0bi0tYWN0aW9uIHtcbiAgei1pbmRleDogMjtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogNTBweDtcbiAgcGFkZGluZzogMDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDNweCA3cHggcmdiYSgkYmxhY2ssIDAuMTUpO1xuXG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgfVxufVxuXG4uYnRuLS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICBib3R0b206IDMwcHg7XG4gIHJpZ2h0OiAzMHB4O1xufVxuXG4uYnRuLWdyb3VwLWp1c3RpZmllZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICAuYnRuLFxuICAuYnRuLWdyb3VwIHtcbiAgICBmbGV4OiAxO1xuICAgIC5idG4ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl06bm90KC5idG4tZ3JvdXAtLWNvbG9ycykge1xuICAmID4gLmJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbi5idG4tZ3JvdXAtLWNvbG9ycyB7XG4gICYgPiAuYnRuIHtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBmb250LWljb24oJ1xcZjI2YicsIDE2cHgpO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gMjAwbXMsIG9wYWNpdHkgMjAwbXMpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzcHg7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJi5idG46bm90KFtjbGFzcyo9XCJiZy1cIl0pIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkaW5wdXQtYm9yZGVyLWNvbG9yLCA1JSk7XG4gICAgICBcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIudGFibGUge1xuICB0aGVhZCB7XG4gICAgdGgge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICB0cltjbGFzcyo9XCJ0YWJsZS1cIl0ge1xuICAgIHRkLFxuICAgIHRoLFxuICAgICYgKyB0ciB0ZCxcbiAgICAmICsgdHIgdGgge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIHRoIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgJjpub3QoLnRhYmxlLWJvcmRlcmVkKSB7XG4gICAgJiA+IHRoZWFkLFxuICAgICYgPiB0Ym9keSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1pbnZlcnNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWludmVyc2UtYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtaW52ZXJzZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuLnRoZWFkLWludmVyc2Uge1xuICB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWludmVyc2UtYmc7XG4gIH1cbn1cblxuLmRhdGEtdGFibGUge1xuICB0YWJsZSB7XG4gICAgdGgge1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICYgPiBpLmZhIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIHJpZ2h0OiAwLjNyZW07XG4gICAgICAgIGJvdHRvbTogMC42cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5mYS1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJ1xcZjFjZSc7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZhLWNoZXZyb24tZG93bjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICdcXGYxY2QnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdHIge1xuICAgICYgPiB0ZCxcbiAgICAmID4gdGgge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJkLXNwYWNlci14O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZGF0YS10YWJsZV9faGVhZGVyIHtcbiAgcGFkZGluZzogMCAkY2FyZC1zcGFjZXIteCAycmVtO1xufVxuXG4uZGF0YS10YWJsZV9fZmlsdGVyIHtcbiAgbWF4LXdpZHRoOiA1MDBweDtcblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZjFjMyc7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMC4yNjNyZW07XG4gIH1cbn1cblxuLmRhdGEtdGFibGVfX2Zvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG59IiwibGFiZWwge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgcmVzaXplOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgJiB+IC5mb3JtLWdyb3VwX19iYXIge1xuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG59XG5cblxuLy8gRm9ybSBHcm91cFxuLmZvcm0tZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJiA+IGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG5cbiAgJjpub3QoLmZvcm0tZ3JvdXAtLWZsb2F0KSB7XG4gICAgJiA+IGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1ncm91cF9fYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgd2lkdGg6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDIwMG1zKTtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICByaWdodDogNTAlO1xuICB9XG59XG5cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zZWxlY3Qge1xuICBAaW5jbHVkZSBzZWxlY3QtYmcoKTtcbn1cblxuQG1peGluIGZvcm0tZ3JvdXAtZmxvYXQoJGJvdHRvbS1vZmZzZXQtYWN0aXZlLCAkYWN0aXZlLWZvbnQtc2l6ZSkge1xuICAmOmZvY3VzIH4gbGFiZWwsXG4gICYuZm9ybS1jb250cm9sLS1hY3RpdmUgfiBsYWJlbCB7XG4gICAgICBib3R0b206ICRib3R0b20tb2Zmc2V0LWFjdGl2ZTtcbiAgICAgIGZvbnQtc2l6ZTogJGFjdGl2ZS1mb250LXNpemU7XG4gIH1cbn1cblxuLmZvcm0tZ3JvdXAtLWZsb2F0IHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLWdyb3VwLWZsb2F0KCRpbnB1dC1wYWRkaW5nLXkqNCwgJGZvbnQtc2l6ZS1zbSk7XG5cbiAgICAmIH4gbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICBib3R0b206ICRpbnB1dC1wYWRkaW5nLXk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLXNtIHtcbiAgICBAaW5jbHVkZSBmb3JtLWdyb3VwLWZsb2F0KCRpbnB1dC1wYWRkaW5nLXktc20qNCwgJGZvbnQtc2l6ZS1zbSk7XG5cbiAgICAmIH4gbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgYm90dG9tOiAkaW5wdXQtcGFkZGluZy15LXNtO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wtbGcge1xuICAgIEBpbmNsdWRlIGZvcm0tZ3JvdXAtZmxvYXQoJGlucHV0LXBhZGRpbmcteS1sZyo0LCAkZm9udC1zaXplLWJhc2UpO1xuXG4gICAgJiB+IGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICAgIGJvdHRvbTogJGlucHV0LXBhZGRpbmcteS1sZztcbiAgICB9XG4gIH1cblxuICAmID4gbGFiZWwge1xuICAgIGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgbGVmdDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luOiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYm90dG9tIDE1MG1zIGVhc2UsIGNvbG9yIDE1MG1zLCBmb250LXNpemUgMTUwbXMgZWFzZSk7XG4gIH1cbn1cblxuLmZvcm0tZ3JvdXAtLWNlbnRlcmVkIHtcbiAgJixcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4iLCIuaW5wdXQtZ3JvdXAge1xuICAuZm9ybS1ncm91cCB7XG4gICAgZmxleDogMjtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5mb3JtLWdyb3VwX19iYXIge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1ncm91cC0tZmxvYXQge1xuICAgICYgPiBsYWJlbCB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBwYWRkaW5nOiAwIDFyZW0gIWltcG9ydGFudDtcblxuICAmICsgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICB9XG59IiwiLmN1c3RvbS1jb250cm9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWluLWhlaWdodDogMS4zcmVtO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzdhN2E3YTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgdG9wOiAwLjAxcmVtO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlciAyMDBtcyk7XG59XG5cbi5jdXN0b20tY2hlY2tib3gge1xuICAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxmMjZiJztcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaWNvbjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZWFsO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgMjAwbXMpO1xuICAgICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tcmFkaW8ge1xuICAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDJweDtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgd2lkdGg6IDlweDtcbiAgICAgIGhlaWdodDogOXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlYWw7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIDIwMG1zKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICBib3JkZXItY29sb3I6ICR0ZWFsO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxufVxuXG4vLyBDaGVja2JveCBsaWdodCBza2luXG4uY3VzdG9tLWNvbnRyb2wtLWxpZ2h0IHtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiBsaWdodGVuKCRibGFjaywgMjUlKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBDaGFyXG4uY3VzdG9tLWNvbnRyb2wtLWNoYXIge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDNyZW07XG4gICAgei1pbmRleDogMztcblxuICAgICY6Y2hlY2tlZCArIC5jdXN0b20tY29udHJvbC0tY2hhcl9faGVscGVyIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG5cbiAgICAgICYgPiBpIHtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIC5jdXN0b20tY29udHJvbC0tY2hhcl9faGVscGVyIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cblxuICAgICAgJiA+IGkge1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC0tY2hhcl9faGVscGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDNyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyLFxuICAmID4gaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDFweDtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaWNvbjtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAzMDBtcyk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZjI3OSc7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXGYyNmInO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmID4gaSB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihmb250LXNpemUgMjAwbXMsIGJhY2tncm91bmQtY29sb3IgMzAwbXMpO1xuICB9XG59IiwiLnBhZ2UtaXRlbSB7XG4gICYuZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxufVxuXG4ucGFnZS1saW5rIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAyLjVyZW07XG4gIGhlaWdodDogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMi41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zLCBjb2xvciAzMDBtcyk7XG4gIG1hcmdpbjogMCAxcHg7XG5cbiAgJiA+IC56bWRpIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuXG4ucGFnaW5hdGlvbi1uZXh0LFxuLnBhZ2luYXRpb24tcHJldixcbi5wYWdpbmF0aW9uLWZpcnN0LFxuLnBhZ2luYXRpb24tbGFzdCB7XG4gIC5wYWdlLWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaWNvbjtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjU1cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ucGFnaW5hdGlvbi1wcmV2IC5wYWdlLWxpbms6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxmMmZmJztcbn1cblxuLnBhZ2luYXRpb24tbmV4dCAucGFnZS1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYzMDEnO1xufVxuXG4ucGFnaW5hdGlvbi1maXJzdCxcbi5wYWdpbmF0aW9uLWxhc3Qge1xuICAucGFnZS1saW5rOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZjMwMic7XG4gIH1cbn1cblxuLnBhZ2luYXRpb24tZmlyc3QgLnBhZ2UtbGluazpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4iLCIuYWxlcnQge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG5bY2xhc3MqPVwiYWxlcnQtXCJdIHtcbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKCR3aGl0ZSwgMC41KTtcbiAgfVxufVxuXG4uYWxlcnQtaGVhZGluZyB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBtYXJnaW4tdG9wOiAwLjE1cmVtO1xufVxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICAuY2xvc2Uge1xuICAgICYgPiBzcGFuOm5vdCguc3Itb25seSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMik7XG4gICAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgc3Bhbjpub3QoLnNyLW9ubHkpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFsZXJ0IEludmVyc2Vcbi5hbGVydC1pbnZlcnNlIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgjMmMyYzJjLCAjMmMyYzJjLCAkd2hpdGUpO1xuICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLy8gTm90aWZ5XG4uYWxlcnQtLW5vdGlmeSB7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuXG4gICY6bm90KC5hbGVydC1pbnZlcnNlKSB7XG4gICAgLmFsZXJ0LS1ub3RpZnlfX2Nsb3NlIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5hbGVydC1pbnZlcnNlIHtcbiAgICAuYWxlcnQtLW5vdGlmeV9fY2xvc2Uge1xuICAgICAgY29sb3I6ICR5ZWxsb3c7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hbGVydC0tbm90aWZ5X19jbG9zZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAkYWxlcnQtcGFkZGluZy14O1xuICB0b3A6ICRhbGVydC1wYWRkaW5nLXk7XG59IiwiLmNsb3NlIHtcbiAgJiwgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufSIsIi5icmVhZGNydW1iIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkYm9keS1iZywgMyUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWljb247XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIGNvbG9yOiBsaWdodGVuKCRib2R5LWNvbG9yLCAyMCUpO1xuICAgIH1cbiAgfVxuICBcbiAgJiwgJiA+IGEge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJGJvZHktY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59IiwiJGFjY29yZGlvbi1zaGFkZTogI2Y3ZjdmNztcblxuLmFjY29yZGlvbiB7XG4gIC5jYXJkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG1hcmdpbjogMCAwIDFweDtcbiAgfVxuXG4gIC5jYXJkLWhlYWRlciB7XG4gICAgcGFkZGluZzogMC45cmVtIDA7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMCAwICRhY2NvcmRpb24tc2hhZGU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3gtc2hhZG93IDMwMG1zKTtcbiAgfVxuXG4gIC5jYXJkLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmNhcmQtYmxvY2sge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuICB9XG59XG4iLCIuY2Fyb3VzZWwtaXRlbSB7XG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWljb247XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDVweCByZ2JhKCRibGFjaywgMC42KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMjUwbXMgbGluZWFyLCB0cmFuc2Zvcm0gMjUwbXMgbGluZWFyKTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoNSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5bY2xhc3MqPVwiY2Fyb3VzZWwtY29udHJvbC1cIl0ge1xuICAmOmhvdmVyIHtcbiAgICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4gICAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXGYyZmYnO1xuICB9XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxmMzAxJztcbiAgfVxufVxuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjUpO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyAwIDA7XG4gIGJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZy1ib3R0b206IDM1cHg7XG5cbiAgaDMge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn0iLCIubW9kYWwtZGlhbG9nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tb2RhbC1jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLm1vZGFsLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxLjFyZW07XG59XG5cbi5tb2RhbC1mb290ZXIge1xuICBwYWRkaW5nLXRvcDogMTBweDtcblxuICAmID4gLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRib2R5LWNvbG9yLCAxMCUpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5tb2RhbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMXB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlLFxuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn0iLCIucG9wb3ZlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn0iLCIubmF2LXRhYnMge1xuICAubmF2LWxpbmsge1xuICAgIGJvcmRlcjogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMzAwbXMpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDMwMG1zKTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50YWItY29udGVudCB7XG4gIHBhZGRpbmc6IDEuNXJlbSAwO1xufVxuXG5cbi8vIFRoZW1pbmdcbkBtaXhpbiB0YWItdGhlbWUoJGJnLWNvbG9yKSB7XG4gIC5uYXYtdGFicyB7XG4gICAgLm5hdi1saW5rOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi50YWItY29udGFpbmVyLS1yZWQgeyBAaW5jbHVkZSB0YWItdGhlbWUoJHJlZCk7IH1cbi50YWItY29udGFpbmVyLS1ncmVlbiB7IEBpbmNsdWRlIHRhYi10aGVtZSgkZ3JlZW4pOyB9XG4udGFiLWNvbnRhaW5lci0tYW1iZXIgeyBAaW5jbHVkZSB0YWItdGhlbWUoJGFtYmVyKTsgfVxuLnRhYi1jb250YWluZXItLWJsYWNrIHsgQGluY2x1ZGUgdGFiLXRoZW1lKCRibGFjayk7IH0iLCIudG9vbHRpcCB7XG4gIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xufSIsIi8vIFJvYm90byBMaWdodFxuQGZvbnQtZmFjZXtcbiAgZm9udC1mYW1pbHk6IFJvYm90bztcbiAgc3JjOnVybCgnLi4vZm9udHMvcm9ib3RvL1JvYm90by1MaWdodC13ZWJmb250LmVvdCcpO1xuICBzcmM6dXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLUxpZ2h0LXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgIHVybCgnLi4vZm9udHMvcm9ib3RvL1JvYm90by1MaWdodC13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnLi4vZm9udHMvcm9ib3RvL1JvYm90by1MaWdodC13ZWJmb250LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgIHVybCgnLi4vZm9udHMvcm9ib3RvL1JvYm90by1MaWdodC13ZWJmb250LnN2ZyNpY29uJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbi8vIFJvYm90byBSZWd1bGFyXG5AZm9udC1mYWNle1xuICBmb250LWZhbWlseTogUm9ib3RvO1xuICBzcmM6dXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLVJlZ3VsYXItd2ViZm9udC5lb3QnKTtcbiAgc3JjOnVybCgnLi4vZm9udHMvcm9ib3RvL1JvYm90by1SZWd1bGFyLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgdXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLVJlZ3VsYXItd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgnLi4vZm9udHMvcm9ib3RvL1JvYm90by1SZWd1bGFyLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICB1cmwoJy4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tUmVndWxhci13ZWJmb250LnN2ZyNpY29uJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbi8vIFJvYm90byBNZWRpdW1cbkBmb250LWZhY2V7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG87XG4gIHNyYzp1cmwoJy4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tTWVkaXVtLXdlYmZvbnQuZW90Jyk7XG4gIHNyYzp1cmwoJy4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tTWVkaXVtLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgdXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLU1lZGl1bS13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLU1lZGl1bS13ZWJmb250LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgdXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLU1lZGl1bS13ZWJmb250LnN2ZyNpY29uJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbi8vIFJvYm90byBNZWRpdW1cbkBmb250LWZhY2V7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG87XG4gIHNyYzp1cmwoJy4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tQm9sZC13ZWJmb250LmVvdCcpO1xuICBzcmM6dXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLUJvbGQtd2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICB1cmwoJy4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tQm9sZC13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLUJvbGQtd2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gIHVybCgnLi4vZm9udHMvcm9ib3RvL1JvYm90by1Cb2xkLXdlYmZvbnQuc3ZnI2ljb24nKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59IiwiLy8gR2VuZXJhdGUgYmFja2dyb3VuZCBjb2xvciBhbmQgY29sb3IgY2xhc3Nlc1xuJGNvbG9ycy1saXN0OiAoXG4gICAgICAgICdyZWQnICRyZWQsXG4gICAgICAgICdwaW5rJyAkcGluayxcbiAgICAgICAgJ3B1cnBsZScgJHB1cnBsZSxcbiAgICAgICAgJ2RlZXAtcHVycGxlJyAkZGVlcC1wdXJwbGUsXG4gICAgICAgICdpbmRpZ28nICRpbmRpZ28sXG4gICAgICAgICdibHVlJyAkYmx1ZSxcbiAgICAgICAgJ2xpZ2h0LWJsdWUnICRsaWdodC1ibHVlLFxuICAgICAgICAnY3lhbicgJGN5YW4sXG4gICAgICAgICd0ZWFsJyAkdGVhbCxcbiAgICAgICAgJ2dyZWVuJyAkZ3JlZW4sXG4gICAgICAgICdsaWdodC1ncmVlbicgJGxpZ2h0LWdyZWVuLFxuICAgICAgICAnbGltZScgJGxpbWUsXG4gICAgICAgICd5ZWxsb3cnICR5ZWxsb3csXG4gICAgICAgICdhbWJlcicgJGFtYmVyLFxuICAgICAgICAnb3JhbmdlJyAkb3JhbmdlLFxuICAgICAgICAnZGVlcC1vcmFuZ2UnICRkZWVwLW9yYW5nZSxcbiAgICAgICAgJ2Jyb3duJyAkYnJvd24sXG4gICAgICAgICdncmV5JyAkZ3JleSxcbiAgICAgICAgJ2JsdWUtZ3JleScgJGJsdWUtZ3JleSxcbiAgICAgICAgJ2JsYWNrJyAkYmxhY2ssXG4gICAgICAgICd3aGl0ZScgJHdoaXRlKTtcblxuQGVhY2ggJGN1cnJlbnQtY29sb3IgaW4gJGNvbG9ycy1saXN0IHtcbiAgLmJnLSN7bnRoKCRjdXJyZW50LWNvbG9yLCAxKX0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICN7bnRoKCRjdXJyZW50LWNvbG9yLCAyKX0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2xvci0je250aCgkY3VycmVudC1jb2xvciwgMSl9IHtcbiAgICBjb2xvcjogI3tudGgoJGN1cnJlbnQtY29sb3IsIDIpfSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIE92ZXJmbG93XG4uby1oaWRkZW4geyBvdmVyZmxvdzogaGlkZGVuOyB9XG4uby12aXNpYmxlIHsgb3ZlcmZsb3c6IHZpc2libGU7IH1cbi5vLWF1dG8geyBvdmVyZmxvdzogYXV0bzsgfVxuIiwiKiB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1yb290O1xufVxuXG5hIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5wcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJlLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG59IiwiLmxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgJiA+IGxpIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWljb247XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmxpc3QtLXN0YXIgPiBsaTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMjdkJztcbn1cblxuLmxpc3QtLWNoZWNrID4gbGk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjI2Yic7XG59XG5cbi5saXN0LS1kb3QgPiBsaTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMjZmJztcbn0iLCIubWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1haW4tLWFsdCB7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xufVxuXG4uY29udGVudCB7XG4gICY6bm90KC5jb250ZW50LS1ib3hlZCk6bm90KC5jb250ZW50LS1mdWxsKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgcGFkZGluZzogKCRoZWFkZXItaGVpZ2h0ICsgJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UpICRncmlkLWd1dHRlci13aWR0aC1iYXNlIDAgJHNpZGViYXItd2lkdGg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKHNtLCBsZykge1xuICAgICAgcGFkZGluZzogKCRoZWFkZXItaGVpZ2h0ICsgJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UpICRncmlkLWd1dHRlci13aWR0aC1iYXNlIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICBwYWRkaW5nOiAoJGhlYWRlci1oZWlnaHQgKyAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZS8yKSAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZS8yIDA7XG4gICAgfVxuICB9XG59XG5cbi5jb250ZW50LS1mdWxsIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkaGVhZGVyLWhlaWdodCArICRncmlkLWd1dHRlci13aWR0aC1iYXNlKSAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgcGFkZGluZzogKCRoZWFkZXItaGVpZ2h0ICsgJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UvMikgJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UvMiAwO1xuICB9XG59XG5cbi5jb250ZW50X19pbm5lciB7XG4gIG1hcmdpbjogYXV0bztcblxuICAmOm5vdCguY29udGVudF9faW5uZXItLXNtKSB7XG4gICAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gIH1cbn1cblxuLmNvbnRlbnRfX2lubmVyLS1zbSB7XG4gIG1heC13aWR0aDogODAwcHg7XG59XG5cbi5jb250ZW50X190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHBhZGRpbmc6IDFyZW0gMnJlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJiA+IGgxIHtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogJGNvbnRlbnQtdGl0bGUtaGVhZGluZy1jb2xvcjtcbiAgfVxuXG4gIC5hY3Rpb25zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjNyZW07XG4gICAgcmlnaHQ6IDFyZW07XG4gIH1cblxuICAmID4gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gICAgY29sb3I6IGxpZ2h0ZW4oJGNvbnRlbnQtdGl0bGUtaGVhZGluZy1jb2xvciwgMTglKTtcbiAgfVxufVxuXG4vLyBEYXNoYm9hcmQgY29sdW1ucyAoU2FsdmF0dG9yZSlcbltkYXRhLWNvbHVtbnNdIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuICBAbWVkaWEobWluLXdpZHRoOiAxNTAwcHgpIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnMyAuY29sdW1uLnNpemUtMW9mMyc7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgbWFyZ2luOiAwIC0xNXB4O1xuXG4gICAgLmNvbHVtbiB7XG4gICAgICBwYWRkaW5nOiAwICRncmlkLWd1dHRlci13aWR0aC1iYXNlLzI7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTQ5OXB4KSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJzIgLmNvbHVtbi5zaXplLTFvZjInO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgbWFyZ2luOiAwIC0xMHB4O1xuXG4gICAgLmNvbHVtbiB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJzEgLmNvbHVtbi5zaXplLTFvZjEnO1xuICAgIH1cbiAgfVxufVxuXG4uY29sdW1uIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zaXplLTFvZjEgeyB3aWR0aDogMTAwJTsgfVxuLnNpemUtMW9mMiB7IHdpZHRoOiA1MCU7IH1cbi5zaXplLTFvZjMgeyB3aWR0aDogMzMuMzMzJTsgfSIsIi8vIFZpZXcgTW9yZSBMaW5rXG4udmlldy1tb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMXJlbSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAzMDBtcyk7XG5cbiAgJjpub3QoLnZpZXctbW9yZS0tbGlnaHQpIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtbXV0ZWQsIDEwJSk7XG4gICAgfVxuICB9XG59XG5cbi52aWV3LW1vcmUtLWxpZ2h0IHtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG4gIH1cbn1cblxuLmxvYWQtbW9yZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMnJlbTtcblxuICAmID4gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjA2NSk7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yIDMwMG1zKTtcblxuICAgICYgPiBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbjogMCAwLjNyZW0gMCAtMC4xcmVtO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gMzAwbXMpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgMC4xMik7XG5cbiAgICAgICYgPiBpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWJsb2NrIHtcbiAgLnZpZXctbW9yZSB7XG4gICAgcGFkZGluZzogMXJlbSAwIDA7XG4gIH1cbn1cblxuLy8gQWN0aW9uIEljb25zXG4uYWN0aW9ucyB7XG4gIFtkcm9wZG93bl0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gICY6bm90KC5hY3Rpb25zLS1pbnZlcnNlKSB7XG4gICAgLmFjdGlvbnNfX2l0ZW0ge1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oJGJvZHktY29sb3IsIDMwJSk7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICB9XG4gICAgICBcbiAgICAgICYuYWN0aW9uc19faXRlbS0tYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkYm9keS1jb2xvciwgMTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFjdGlvbnNfX2l0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS41NXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDMwMG1zKTtcbiAgQGluY2x1ZGUgc2l6ZSgzMHB4LCAzMHB4KTtcblxuICAmID4gaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5hY3Rpb25zLS1pbnZlcnNlIHtcbiAgLmFjdGlvbnNfX2l0ZW0ge1xuICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC43KTtcbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG5cbiAgLmFjdGlvbnNfX2l0ZW0tLWFjdGl2ZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG5cbi8vIEljb24gTGlzdHNcbi5pY29uLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG5cbiAgJiA+IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMC4zcmVtIDA7XG5cbiAgICBhZGRyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuXG4gICAgJiA+IGkge1xuICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIHRvcDogMC4xMnJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEF2YXRhcnNcbi5hdmF0YXItaW1nLFxuLmF2YXRhci1jaGFyIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBAaW5jbHVkZSBzaXplKDNyZW0sIDNyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbn1cblxuLmF2YXRhci1jaGFyIHtcbiAgbGluZS1oZWlnaHQ6IDNyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxuICAmID4gLnptZGkge1xuICAgIGxpbmUtaGVpZ2h0OiAzLjFyZW07XG4gIH1cbn1cblxuXG4vLyBCYWNrZHJvcHNcbi5tYS1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6ICRzaWRlYmFyLXotaW5kZXggLSAxO1xufVxuXG5cbi8vIFRvb2xiYXJcbi50b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgaGVpZ2h0OiA0LjVyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMDVyZW0gJGNhcmQtc3BhY2VyLXggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZTtcblxuICAmOm5vdCgudG9vbGJhci0taW5uZXIpIHtcbiAgICBAaW5jbHVkZSBjYXJkKCk7XG4gIH1cblxuICAuYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAwLjA1cmVtIC0wLjhyZW0gMCBhdXRvO1xuICB9XG59XG5cbi50b29sYmFyLS1pbm5lciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjZmNmY2O1xufVxuXG4udG9vbGJhcl9fbmF2IHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuXG4gICYgPiBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICBjb2xvcjogbGlnaHRlbigkYm9keS1jb2xvciwgMjUlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAzMDBtcyk7XG5cbiAgICAmICsgYSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgfVxuXG4gICAgJi5hY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi50b29sYmFyX19zZWFyY2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgQGluY2x1ZGUgc2l6ZSgxMDAlLCAxMDAlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIGlucHV0W3R5cGU9dGV4dF0ge1xuICAgIEBpbmNsdWRlIHNpemUoMTAwJSwgMTAwJSk7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDAgMS42cmVtO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG59XG5cbi50b29sYmFyX19zZWFyY2hfX2Nsb3NlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAzMDBtcyk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEuNXJlbTtcbiAgbGVmdDogMS44cmVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgY29sb3I6IGxpZ2h0ZW4oJGJvZHktY29sb3IsIDE1JSk7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB9XG59XG5cbi50b29sYmFyX19sYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjFyZW07XG59IiwiLy8gSGVhZGVyIEJhc2Vcbi5oZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuICBib3gtc2hhZG93OiAkaGVhZGVyLXNoYWRvdztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgcGFkZGluZzogMCAycmVtO1xuICB6LWluZGV4OiAkaGVhZGVyLXotaW5kZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXG4gIC5tYS1iYWNrZHJvcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG59XG5cblxuLy8gTmF2aWdhdGlvbiB0cmlnZ2VyXG4ubmF2aWdhdGlvbi10cmlnZ2VyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDJyZW0gMnJlbSAycmVtIDIuNHJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0ycmVtO1xuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICYudG9nZ2xlZCB7XG4gICAgLm5hdmlnYXRpb24tdHJpZ2dlcl9faW5uZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uLXRyaWdnZXJfX2xpbmUge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KSB0cmFuc2xhdGVZKDFweCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDExcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpIHRyYW5zbGF0ZVkoLTFweCkgcm90YXRlKC00NWRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uYXZpZ2F0aW9uLXRyaWdnZXJfX2lubmVyLFxuLm5hdmlnYXRpb24tdHJpZ2dlcl9fbGluZSB7XG4gIHdpZHRoOiAxOHB4O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAzMDBtcyk7XG59XG5cbi5uYXZpZ2F0aW9uLXRyaWdnZXJfX2lubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGxlZnQ6IC0xMXB4O1xuICAgIHRvcDogLTE0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMjUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAzMDBtcyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxufVxuXG4ubmF2aWdhdGlvbi10cmlnZ2VyX19saW5lIHtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgfVxufVxuXG5cbi8vIExvZ29cbi5oZWFkZXJfX2xvZ28ge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgbWluLXdpZHRoOiBjYWxjKCN7JHNpZGViYXItd2lkdGh9IC0gMnJlbSk7XG4gIH1cblxuICAmID4gaDEge1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgJiA+IGEge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZcbi50b3AtbmF2IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuXG4gICYgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAmID4gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAzMDBtcyk7XG5cbiAgICAgICY6bm90KC5oZWFkZXJfX25hdl9fdGV4dCkge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC4xNXJlbTtcbiAgICAgICAgbWluLXdpZHRoOiA1MHB4O1xuXG4gICAgICAgICYgPiAuem1kaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjY1cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51LS1ibG9jayB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcblxuICAgICAgLmRyb3Bkb3duLW1lbnUtLWJsb2NrIHtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICB0b3A6ICRoZWFkZXItaGVpZ2h0IC0gMTA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50b3AtbmF2X19ub3RpZmljYXRpb25zIHtcbiAgLmxpc3R2aWV3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBmb250LWljb24oJ1xcZjI2NycsIDIuNXJlbSk7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAzMDBtcywgb3BhY2l0eSAzMDBtcyk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICB3aWR0aDogOTBweDtcbiAgICAgIGhlaWdodDogOTBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNlY2VjZWM7XG4gICAgICBjb2xvcjogbGlnaHRlbigkYm9keS1jb2xvciwgMTAlKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCkgcm90YXRlKC0zNjBkZWcpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiA4NnB4O1xuICAgIH1cbiAgfVxuXG4gIC5saXN0dmlld19fc2Nyb2xsIHtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICB9XG59XG5cbi50b3AtbmF2X19ub3RpZmljYXRpb25zLS1jbGVhcmVkIHtcbiAgLmxpc3R2aWV3IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwZGVnKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi50b3AtbmF2X19ub3RpZnkge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDdweDtcbiAgICBoZWlnaHQ6IDdweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRyZWQsIDIlKTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtM3B4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIEBpbmNsdWRlIGFuaW1hdGUoZmxhc2gsIDIwMDBtcyk7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIH1cbn1cblxuXG4vLyBTZWFyY2hcbkBtaXhpbiBzZWFyY2gtZmxvYXQoJGJnLWNvbG9yLCAkY29sb3IsICRwbGFjZWhvbGRlci1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uc2VhcmNoIHtcbiAgZmxleDogMTtcbiAgbWFyZ2luLXJpZ2h0OiAyLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB6LWluZGV4OiAkaGVhZGVyLXotaW5kZXggKyAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAzMDBtcyk7XG5cbiAgICAmOm5vdCguc2VhcmNoLS10b2dnbGVkKSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTEwNSUsMCk7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2hfX2lubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnNlYXJjaF9fdGV4dCB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGhlaWdodDogMi45cmVtO1xuICBwYWRkaW5nOiAwIDFyZW0gMCAzcmVtO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zLCBjb2xvciAzMDBtcyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIEBpbmNsdWRlIHNlYXJjaC1mbG9hdChyZ2JhKCR3aGl0ZSwgMC4yKSwgJHdoaXRlLCAkd2hpdGUpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBzZWFyY2gtZmxvYXQoZGFya2VuKCRncmF5LWxpZ2h0ZXIsIDElKSwgJGlucHV0LWNvbG9yLCBsaWdodGVuKCRpbnB1dC1jb2xvciwgMTAlKSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgQGluY2x1ZGUgc2VhcmNoLWZsb2F0KGRhcmtlbigkZ3JheS1saWdodGVyLCAxJSksICRpbnB1dC1jb2xvciwgbGlnaHRlbigkaW5wdXQtY29sb3IsIDEwJSkpO1xuICB9XG59XG5cbi5zZWFyY2hfX2hlbHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogM3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogM3JlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDMwMG1zLCB0cmFuc2Zvcm0gNDAwbXMpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICBsaW5lLWhlaWdodDogMi45cmVtO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZjMwMSc7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjk7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtLWZvY3VzIHtcbiAgLnNlYXJjaF9faGVscGVyIHtcbiAgICBjb2xvcjogbGlnaHRlbigkaW5wdXQtY29sb3IsIDEwJSk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICBsaW5lLWhlaWdodDogMi45cmVtO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZjMwMSc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQXBwIHNob3J0Y3V0c1xuLmFwcC1zaG9ydGN1dHMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi5hcHAtc2hvcnRjdXRzX19pdGVtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgMzAwbXMpO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gIH1cblxuICAmID4gaSB7XG4gICAgd2lkdGg6IDQ1cHg7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG5cbiAgJiA+IHNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xuXG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRvcCBOYXZpZ2F0aW9uXG4udG9wLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNoYWRvdzogMCAzcHggNXB4IC0ycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICYgPiBsaSB7XG4gICAgJi5hY3RpdmUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgLTJweCByZWQ7XG4gICAgfVxuXG4gICAgJiA+IGEge1xuICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICBjb2xvcjogbGlnaHRlbigkYm9keS1jb2xvciwgMTUlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA0cmVtIDFyZW0gMXJlbTtcblxuICAmID4gcCB7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJGJvZHktY29sb3IsIDIwJSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uZm9vdGVyX19uYXYge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAubmF2LWxpbmsge1xuICAgIGNvbG9yOiBsaWdodGVuKCRib2R5LWNvbG9yLCAyMCUpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMzAwbXMpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBsaWdodGVuKCRib2R5LWNvbG9yLCA1JSk7XG4gICAgfVxuXG4gICAgJiArIC5uYXYtbGluayB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbignXFxmMjZkJywgNHB4KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiAtMS4ycmVtO1xuICAgICAgICB0b3A6IC0wLjJyZW07XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCRib2R5LWNvbG9yLCAyMCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIkBtaXhpbiBzaWRlYmFyLXRvZ2dsZWQoKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gMzAwbXMsIG9wYWNpdHkgMzAwbXMpO1xuXG4gICY6bm90KC50b2dnbGVkKSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxuXG4gICYudG9nZ2xlZCB7XG4gICAgYm94LXNoYWRvdzogNXB4IDAgMTBweCByZ2JhKCRibGFjaywgMC4wOCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5zaWRlYmFyIHtcbiAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICgkaGVhZGVyLWhlaWdodCArICRncmlkLWd1dHRlci13aWR0aC1iYXNlKSAycmVtIDAuNXJlbSAycmVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6ICRzaWRlYmFyLXotaW5kZXg7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgQGluY2x1ZGUgc2lkZWJhci10b2dnbGVkKCk7XG4gIH1cblxuICAvLyBTY3JvbGxiYXIgcG9zaXRpb25cbiAgLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5zaWRlYmFyLS1oaWRkZW4ge1xuICBAaW5jbHVkZSBzaWRlYmFyLXRvZ2dsZWQoKTtcbn1cblxuXG4vLyBVc2VyXG4udXNlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLWxpbmstaG92ZXItYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udXNlcl9faW5mbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIHBhZGRpbmc6IDAuOHJlbTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAzMDBtcyk7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tbGluay1ob3Zlci1iZztcbiAgfVxufVxuXG4udXNlcl9faW1nIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogM3JlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tcmlnaHQ6IDAuOHJlbTtcbn1cblxuLnVzZXJfX25hbWUge1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG59XG5cbi51c2VyX19lbWFpbCB7XG4gIGNvbG9yOiBsaWdodGVuKCRib2R5LWNvbG9yLCAxNSUpO1xufVxuXG5cbi8vIFNpdGUgTmF2aWdhdGlvblxuLm5hdmlnYXRpb24ge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuXG4gIGxpIHtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2aWdhdGlvbi1saW5rLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zLCBjb2xvciAzMDBtcyk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmOm5vdCgubmF2aWdhdGlvbl9fYWN0aXZlKTpub3QoLm5hdmlnYXRpb25fX3N1Yi0tYWN0aXZlKSB7XG4gICAgICBhIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tbGluay1ob3Zlci1iZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYgPiBsaSB7XG4gICAgJiA+IGEge1xuICAgICAgcGFkZGluZzogMC44NXJlbSAwLjVyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuICAgICAgJiA+IGkge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDAuMXJlbTtcbiAgICAgICAgd2lkdGg6IDEuNXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm5hdmlnYXRpb25fX3N1YiB7XG4gICYgPiB1bCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmID4gbGkge1xuICAgICAgJiA+IGEge1xuICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMXJlbSAwLjZyZW0gMi43NXJlbTtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOm5vdCgubmF2aWdhdGlvbl9fc3ViLS1hY3RpdmUpIHtcbiAgICAmID4gdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubmF2aWdhdGlvbl9fYWN0aXZlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBmb250LWljb24oJ1xcZjI2ZCcsIDZweCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAxcmVtO1xuICAgICAgdG9wOiAxLjFyZW07XG4gICAgfVxuICB9XG59IiwiLmNoYXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAkc2lkZWJhci13aWR0aCArIDUwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICB6LWluZGV4OiAkaGVhZGVyLXotaW5kZXggKyAxO1xuICBib3gtc2hhZG93OiAtNXB4IDAgMTBweCByZ2JhKCRibGFjaywgMC4wOCk7XG4gIHBhZGRpbmctdG9wOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gMzAwbXMsIG9wYWNpdHkgMzAwbXMpO1xuXG4gICY6bm90KC50b2dnbGVkKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgoJHNpZGViYXItd2lkdGggKyA3MHB4KSwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICYudG9nZ2xlZCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jaGF0X19oZWFkZXIge1xuICBwYWRkaW5nOiAwIDJyZW07XG59XG5cbi5jaGF0X190aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDAgMCAycmVtO1xuICBmb250LXNpemU6IDEuMnJlbTtcblxuICAmID4gc21hbGwge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgICBmb250LXNpemU6IDAuOTVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5jaGF0X19zZWFyY2gge1xuICAuZm9ybS1ncm91cCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZm9udC1pY29uKCdcXGYxYzMnLCAxLjRyZW0pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMC4zcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgfVxufVxuXG4uY2hhdF9fYnVkZGllcyB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcblxuICAubGlzdHZpZXdfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgfVxufVxuXG4vLyBTdGF0dXNcbi5jaGF0X19hdmFpbGFibGUsXG4uY2hhdF9fYXdheSxcbi5jaGF0X19idXN5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgd2lkdGg6IDhweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbGVmdDogMS41cmVtO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICB9XG59XG5cbi5jaGF0X19hdmFpbGFibGU6YmVmb3JlIHsgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuIH1cbi5jaGF0X19hd2F5OmJlZm9yZSB7IGJhY2tncm91bmQtY29sb3I6ICRhbWJlciB9XG4uY2hhdF9fYnVzeTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkIH1cblxuXG4iLCIvLyBGbG90IENoYXJ0c1xuIiwiJHRvZ2dsZS1zd2l0Y2gtcmFpbC1iZzogI2UwZTBlMDtcblxuLnRvZ2dsZS1zd2l0Y2gge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnRvZ2dsZS1zd2l0Y2hfX2hlbHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMnB4O1xuICB3aWR0aDogMTAwJTtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgd2lsbC1jaGFuZ2U6IGxlZnQsIGJhY2tncm91bmQtY29sb3I7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihsZWZ0IDIwMG1zLCBiYWNrZ3JvdW5kLWNvbG9yLCAyMDBtcyk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvZ2dsZS1zd2l0Y2gtcmFpbC1iZztcbiAgICB0b3A6IDRweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwwLDAsLjIpO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLnRvZ2dsZS1zd2l0Y2hfX2NoZWNrYm94IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmNoZWNrZWQge1xuICAgICYgfiAudG9nZ2xlLXN3aXRjaF9faGVscGVye1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmIH4gLnRvZ2dsZS1zd2l0Y2hfX2hlbHBlciB7XG4gICAgICBvcGFjaXR5OiAwLjY1O1xuICAgIH1cbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICAmIH4gLnRvZ2dsZS1zd2l0Y2hfX2hlbHBlcjphZnRlciB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZW1pbmdcbkBtaXhpbiB0b2dnbGUtc3dpdGNoLXRoZW1lKCRjb2xvcikge1xuICAudG9nZ2xlLXN3aXRjaF9fY2hlY2tib3gge1xuICAgICY6Y2hlY2tlZCB7XG4gICAgICAmIH4gLnRvZ2dsZS1zd2l0Y2hfX2hlbHBlcntcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50b2dnbGUtc3dpdGNoLS1yZWQgeyBAaW5jbHVkZSB0b2dnbGUtc3dpdGNoLXRoZW1lKCRyZWQpOyB9XG4udG9nZ2xlLXN3aXRjaC0tYmx1ZSB7IEBpbmNsdWRlIHRvZ2dsZS1zd2l0Y2gtdGhlbWUoJGxpZ2h0LWJsdWUpOyB9XG4udG9nZ2xlLXN3aXRjaC0tZ3JlZW4geyBAaW5jbHVkZSB0b2dnbGUtc3dpdGNoLXRoZW1lKCRncmVlbik7IH1cbi50b2dnbGUtc3dpdGNoLS1hbWJlciB7IEBpbmNsdWRlIHRvZ2dsZS1zd2l0Y2gtdGhlbWUoJGFtYmVyKTsgfVxuLnRvZ2dsZS1zd2l0Y2gtLXB1cnBsZSB7IEBpbmNsdWRlIHRvZ2dsZS1zd2l0Y2gtdGhlbWUoJHB1cnBsZSk7IH1cbi50b2dnbGUtc3dpdGNoLS1jeWFuIHsgQGluY2x1ZGUgdG9nZ2xlLXN3aXRjaC10aGVtZSgkY3lhbik7IH0iLCIubGlzdHZpZXdfX2hlYWRlciB7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDEuMnJlbSAxcmVtIDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWxpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLmFjdGlvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuOHJlbTtcbiAgICByaWdodDogMXJlbTtcbiAgfVxufVxuXG4ubGlzdHZpZXdfX3Njcm9sbCB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5saXN0dmlld19faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE1cHggJGNhcmQtc3BhY2VyLXg7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAzMDBtcyk7XG59XG5cbi5saXN0dmlld19faW1nIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogM3JlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW46IC0wLjFyZW0gMS4ycmVtIDAgLTAuMnJlbTtcbn1cblxuLmxpc3R2aWV3X19jb250ZW50IHtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xuXG4gICYgPiBwIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJGJvZHktY29sb3IsIDEwJSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ubGlzdHZpZXdfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmID4gc21hbGwge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gIH1cblxuICAmICsgcCB7XG4gICAgbWFyZ2luOiAwLjJyZW0gMCAwO1xuICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgfVxufVxuXG4ubGlzdHZpZXdfX2F0dHJzIHtcbiAgZmxleDogMSAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG5cbiAgJiA+IHNwYW4ge1xuICAgIHBhZGRpbmc6IDAuNDVyZW0gMC43cmVtIDAuNXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGVuKCRncmV5LCAzMCUpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luOiAwLjJyZW0gMC4wNXJlbSAwIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi8vIExpc3R2aWV3IG1vZGlmaWVyIGNsYXNzZXNcbi5saXN0dmlldyB7XG4gICY6bm90KC5saXN0dmlldy0taW52ZXJzZSkge1xuXG4gICAgJi5saXN0dmlldy0taG92ZXIge1xuICAgICAgLmxpc3R2aWV3X19pdGVtOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3R2aWV3LWl0ZW0taG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5saXN0dmlldy0tc3RyaXBlZCB7XG4gICAgICAubGlzdHZpZXdfX2l0ZW06bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3R2aWV3LWl0ZW0tc3RyaXBlZC1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdHZpZXdfX2l0ZW0tLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdHZpZXctaXRlbS1hY3RpdmUtYmc7XG4gICAgfVxuXG4gICAgJi5saXN0dmlldy0tYm9yZGVyZWQge1xuICAgICAgLmxpc3R2aWV3X19pdGVtICsgLmxpc3R2aWV3X19pdGVtIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaXN0dmlldy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5saXN0dmlldy0taW52ZXJzZSB7XG4gICYubGlzdHZpZXctLXN0cmlwZWQge1xuICAgIC5saXN0dmlld19faXRlbTpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3R2aWV3LWludmVydC1pdGVtLXN0cmlwZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5saXN0dmlld19fYWN0aW9ucyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xufSIsIi5wYWdlLWxvYWRlciB7XG4gIEBpbmNsdWRlIHNpemUoMTAwJSwgMTAwJSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgei1pbmRleDogOTk5OTk5OTk5O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnBhZ2UtbG9hZGVyX19zcGlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBzaXplKDUwcHgsIDUwcHgpO1xuXG5cbiAgc3ZnIHtcbiAgICBhbmltYXRpb246IHJvdGF0ZSAycyBsaW5lYXIgaW5maW5pdGU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICBAaW5jbHVkZSBzaXplKDEwMCUsIDEwMCUpO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgY2lyY2xlIHtcbiAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEsIDIwMDtcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICAgICAgYW5pbWF0aW9uOiBkYXNoIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGUsIGNvbG9yIDZzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgIH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZSB7XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBkYXNoIHtcbiAgMCUge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEsIDIwMDtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxuICA1MCUge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDg5LCAyMDA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0zNXB4O1xuICB9XG4gIDEwMCUge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDg5LCAyMDA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0xMjRweDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNvbG9yIHtcbiAgMTAwJSxcbiAgMCUge1xuICAgIHN0cm9rZTogJHJlZDtcbiAgfVxuICA0MCUge1xuICAgIHN0cm9rZTogJGJsdWU7XG4gIH1cbiAgNjYlIHtcbiAgICBzdHJva2U6ICRncmVlbjtcbiAgfVxuICA4MCUsXG4gIDkwJSB7XG4gICAgc3Ryb2tlOiAkYW1iZXI7XG4gIH1cbn0iLCIucHJvZmlsZSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIG1hcmdpbi10b3A6IDc1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5wcm9maWxlX19pbWcge1xuICBwYWRkaW5nOiA1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xuICAgIGltZyB7XG4gICAgICBtYXJnaW46IC01NXB4IDAgLTEwcHg7XG4gICAgICB3aWR0aDogMTIwcHg7XG4gICAgICBib3JkZXI6IDVweCBzb2xpZCAkd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuICB9XG59XG5cbi5wcm9maWxlX19pbWdfX2VkaXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB0b3A6IDE1cHg7XG4gIGxlZnQ6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLDAuNCk7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywwLjY1KTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5wcm9maWxlX19pbmZvIHtcbiAgIHBhZGRpbmc6IDMwcHg7XG59XG4iLCIucGhvdG9zIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICBtYXJnaW46IDAgKC0kY2FyZC1zcGFjZXIteCkrMC4ycmVtIDFyZW07XG4gIH1cblxuICAmID4gYSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn0iLCIuY29udGFjdHMge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICBtYXJnaW46IDAgLTVweDtcblxuICAgICYgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICB9XG4gIH1cbn1cblxuLmNvbnRhY3RzX19pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJGNhcmQtc2hhZG93O1xuICBwYWRkaW5nOiAxLjhyZW0gMS41cmVtIDEuMTVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2U7XG5cbiAgJjpob3ZlciB7XG4gICAgLmNvbnRhY3RzX19pbWcgPiBpbWcge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLmNvbnRhY3RzX19pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMS4xcmVtO1xuXG4gICYgPiBpbWcge1xuICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgbWF4LWhlaWdodDogMTIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIDMwMG1zKTtcbiAgfVxufVxuXG4uY29udGFjdHNfX2luZm8ge1xuICBzdHJvbmcsXG4gIHNtYWxsIHtcbiAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93KCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmNvbnRhY3RzX19idG4ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogMDtcbiAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogOHB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgMzAwbXMsIGNvbG9yIDMwMG1zKTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodGVyO1xuICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gIH1cbn0iLCIuZ3JvdXBzIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgbWFyZ2luOiAwIC01cHg7XG5cbiAgICBbY2xhc3MqPWNvbC1dIHtcbiAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIH1cblxuICAgIC5ncm91cHNfX2l0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmdyb3Vwc19faXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAycmVtIDFyZW0gMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZTtcbiAgQGluY2x1ZGUgY2FyZCgpO1xuXG4gICY6aG92ZXIge1xuICAgIC5hY3Rpb25zIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLmFjdGlvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuN3JlbTtcbiAgICByaWdodDogMC41cmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZ3JvdXBzX19pbWcge1xuICB3aWR0aDogNi4ycmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgLmF2YXRhci1pbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgLTFweCAzcHggMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG59XG5cbi5ncm91cHNfX2luZm8ge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICYgPiBzdHJvbmcge1xuICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICB9XG5cbiAgJiA+IHNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn0iLCIkbWVzc2FnZS1zaWRlYmFyLXdpZHRoOiAyM3JlbTtcblxuLm1lc3NhZ2VzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgQGluY2x1ZGUgY2FyZCgpO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxODBweCk7XG59XG5cbi5tZXNzYWdlc19fc2lkZWJhciB7XG4gIHdpZHRoOiAkbWVzc2FnZS1zaWRlYmFyLXdpZHRoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZjFmMWYxO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5saXN0dmlldyB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxMzBweCk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubWVzc2FnZXNfX3NlYXJjaCB7XG4gIHBhZGRpbmc6IDAgMi4ycmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbignXFxmMWMzJywgMS4zcmVtKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDAuMzVyZW07XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICB9XG59XG5cbi5tZXNzYWdlc19fYm9keSB7XG4gIGZsZXg6IDI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5tZXNzYWdlc19faGVhZGVyLFxuLm1lc3NhZ2VzX19yZXBseSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4ubWVzc2FnZXNfX2NvbnRlbnQge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAyLjVyZW07XG59XG5cbi5tZXNzYWdlc19faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgJjpub3QoLm1lc3NhZ2VzX19pdGVtLS1yaWdodCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cblxuLm1lc3NhZ2VzX19hdmF0YXIge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5tZXNzYWdlc19fZGV0YWlscyB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgbWF4LXdpZHRoOiA1MDBweDtcblxuICAmID4gcCB7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIHBhZGRpbmc6IDFyZW0gMS4zcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmICsgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgfVxuICB9XG5cbiAgJiA+IHNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcblxuICAgICYgPiAuem1kaSB7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuM3JlbTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCgubWVzc2FnZXNfX2RldGFpbHMtLWhpZ2hsaWdodCkgPiBwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodGVyO1xuICB9XG59XG5cbi5tZXNzYWdlc19faXRlbS0tcmlnaHQge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgLm1lc3NhZ2VzX19kZXRhaWxzIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICYgPiBwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4ubWVzc2FnZXNfX3JlcGx5IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMWYxZjE7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1lc3NhZ2VzX19yZXBseV9fdGV4dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIHJlc2l6ZTogbm9uZTtcbn1cblxuLm1lc3NhZ2VzX19yZXBseV9fYnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogMS41cmVtO1xuICByaWdodDogMS41cmVtO1xufVxuXG4iLCIucHJpY2UtdGFibGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJjpub3QoLnByaWNlLXRhYmxlLS1oaWdobGlnaHQpIHtcbiAgICBtYXJnaW46IDAgLTEwcHg7XG5cbiAgICAmID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4ucHJpY2UtdGFibGUtLWhpZ2hsaWdodCB7XG4gIG1hcmdpbjogMDtcblxuICAmID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnByaWNlLXRhYmxlX19pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgQGluY2x1ZGUgY2FyZCgpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5wcmljZS10YWJsZV9faXRlbS0tcG9wdWxhciB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBtYXJnaW46IC0xcmVtIC0wLjFyZW0gMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKCRibGFjaywgMC4xNCk7XG5cbiAgICAucHJpY2UtdGFibGVfX2hlYWRlciB7XG4gICAgICBwYWRkaW5nOiAyLjVyZW0gMnJlbSAyLjVyZW1cbiAgICB9XG4gIH1cbn1cblxuLnByaWNlLXRhYmxlX19oZWFkZXIge1xuICBjb2xvcjogJHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyAwIDA7XG4gIHBhZGRpbmc6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5wcmljZS10YWJsZV9fdGl0bGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xufVxuXG4ucHJpY2UtdGFibGVfX2Rlc2Mge1xuICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNzUpO1xuICBtYXJnaW46IDAuM3JlbSAwO1xufVxuXG4ucHJpY2UtdGFibGVfX3ByaWNlIHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG5cbiAgJiA+IHNtYWxsIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTAuNHJlbTtcbiAgfVxufVxuXG4ucHJpY2UtdGFibGVfX2luZm8ge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xuICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgJiA+IGxpIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgcGFkZGluZzogMXJlbSAxLjVyZW07XG5cbiAgICAmICsgbGkge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5LWxpZ2h0ZXN0O1xuICAgIH1cbiAgfVxufVxuXG4ucHJpY2UtdGFibGVfX2FjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICBwYWRkaW5nOiAwLjhyZW0gMS4ycmVtO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICBib3gtc2hhZG93OiAwIDNweCA1cHggcmdiYSgkYmxhY2ssIDAuMTIpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMzAwbXMpO1xuICBcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMC45O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn0iLCIuaW52b2ljZSB7XG4gIG1pbi13aWR0aDogMTEwMHB4O1xuICBtYXgtd2lkdGg6IDExNzBweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBwYWRkaW5nOiAyLjVyZW07XG4gIEBpbmNsdWRlIGNhcmQoKTtcbn1cblxuLmludm9pY2VfX2hlYWRlciB7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyAwIDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLmludm9pY2VfX2FkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuXG4gIGg0IHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLmludm9pY2VfX2F0dHJzIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuXG4gIFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nOiAtMTBweDtcbiAgfVxufVxuXG4uaW52b2ljZV9fYXR0cnNfX2l0ZW0ge1xuICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHRlcjtcblxuICBzbWFsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4ycmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuXG4gIGgzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuXG4uaW52b2ljZV9fdGFibGUge1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xufVxuXG4uaW52b2ljZV9fZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDRyZW0gMCAxLjVyZW07XG5cbiAgJiA+IGEge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHNpemU6IGF1dG87XG4gIH1cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDBtbSAwbW0gMG1tIDBtbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDBtbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmhlYWRlcixcbiAgLmFjdGlvbnMsXG4gIC5jb250ZW50X190aXRsZSxcbiAgLmZvb3RlcixcbiAgLm5vdGlmaWNhdGlvbnMsXG4gIC5uYXZpZ2F0aW9uLFxuICAuY2hhdCxcbiAgLmdyb3dsLWFuaW1hdGVkLFxuICAuYnRuLS1hY3Rpb24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIEludm9pY2VcbiAgLmludm9pY2Uge1xuICAgIHBhZGRpbmc6IDMwcHggIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXByaW50LWNvbG9yLWFkanVzdDogZXhhY3QgIWltcG9ydGFudDtcbiAgfVxufSIsIi5sb2dpbiB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDEuMnJlbTtcbn1cblxuLmxvZ2luX19ibG9jayB7XG4gIG1heC13aWR0aDogMzMwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEuMnJlbTtcbiAgQGluY2x1ZGUgYW5pbWF0ZShmYWRlSW5VcCwgMzAwbXMpO1xuICBAaW5jbHVkZSBjYXJkKCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICY6aG92ZXIge1xuICAgICAgLmxvZ2luX19ibG9ja19fYWN0aW9ucyAuZHJvcGRvd24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmxvZ2luX19ibG9jay5hY3RpdmUge1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubG9naW5fX2Jsb2NrX19oZWFkZXIge1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIG1hcmdpbi10b3A6IC0yLjRyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTgpO1xuXG4gICYgPiBpLFxuICAmID4gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIH1cblxuICAmID4gaSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG5cbiAgJiA+IGltZyB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zMyk7XG4gIH1cbn1cblxuLmxvZ2luX19ibG9ja19fYWN0aW9ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxcmVtO1xuICByaWdodDogMXJlbTtcblxuICAuZHJvcGRvd246bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ubG9naW5fX2Jsb2NrX19ib2R5IHtcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLmxvZ2luX19ibG9ja19fYnRuIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuXG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjk7XG4gIH1cbn0iLCIudG9kb19faXRlbSB7XG4gIHBhZGRpbmctbGVmdDogNC41cmVtO1xuICBkaXNwbGF5OiBibG9jaztcblxuICBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgJjpjaGVja2VkIHtcbiAgICAgICYgfiAudG9kb19faW5mbyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgfVxuXG4gICAgICAmIH4gLmN1c3RvbS1jb250cm9sLS1jaGFyX19oZWxwZXIge1xuICAgICAgICAmID4gaSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTllOSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29sb3I6ICM1RTVFNUU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRvZG9fX2luZm8ge1xuICAmID4gc3BhbiB7XG4gICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgfVxuXG4gICYgPiBzbWFsbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi50b2RvX19sYWJlbHMge1xuICAmID4gYSB7XG4gICAgY29sb3I6ICRhbWJlcjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBsaWdodGVuKCRhbWJlciwgMjAlKTtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBwYWRkaW5nOiAwLjM1cmVtIDAuOHJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAuMXJlbSAwLjRyZW07XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAzMDBtcywgYm9yZGVyLWNvbG9yIDMwMG1zKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGRhcmtlbigkYW1iZXIsIDUlKTtcbiAgICB9XG4gIH1cbn0iLCIvL0xpc3Rpbmdcbi5ub3Rlc19faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aC1iYXNlO1xuXG4gICYgPiBhIHtcbiAgICBoZWlnaHQ6IDE1NXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxLjhyZW0gMnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAzMDBtcyk7XG5cbiAgICAmLFxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoJGJsYWNrLDAuMDgpO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEwcHgpO1xuICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgbGVmdDogNXB4O1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYm90dG9tIDIwMG1zKTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAmID4gYSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogLThweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubm90ZXNfX2FjdGlvbnMge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuLm5vdGVzX190aXRsZSB7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93KCk7XG59XG5cbi5ub3Rlc19fYWN0aW9ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIuMnJlbTtcbiAgYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgd2lkdGg6IDIuMnJlbTtcbiAgaGVpZ2h0OiAyLjJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssMC43KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBsaW5lLWhlaWdodDogMi4ycmVtO1xuICBjb2xvcjogJHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDAgNHB4IHJnYmEoJGJsYWNrLDAuNSk7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAzMDBtcyk7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywwLjkpO1xuICB9XG59XG5cblxuLy9OZXcgTm90ZSBNb2RhbFxuLm5vdGUtdmlldyB7XG4gIC50cnVtYm93eWctYm94IHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLm5vdGUtdmlld19fZmllbGQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICBpbnB1dCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBwYWRkaW5nOiAxLjdyZW0gMnJlbTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLm5vdGUtdmlld19fZmllbGQtLWNvbG9yIHtcbiAgcGFkZGluZzogMS4ycmVtIDJyZW0gMC44cmVtO1xufVxuXG4ubm90ZS12aWV3X19sYWJlbCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAuNHJlbSAxLjVyZW0gMCAwO1xufSIsIi8vIFRoZW1pbmdcbkBtaXhpbiBtYS10aGVtZSgkY29sb3IpIHtcbiAgLmhlYWRlcixcbiAgLmxvZ2luX19ibG9ja19faGVhZGVyLFxuICAubG9naW5fX2Jsb2NrX19idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC5uYXZpZ2F0aW9uX19zdWItLWFjdGl2ZSA+IGEsXG4gIC5uYXZpZ2F0aW9uX19hY3RpdmUgPiBhLFxuICAubmF2aWdhdGlvbl9fYWN0aXZlOmJlZm9yZSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC50b3AtbWVudSB7XG4gICAgJiA+IGxpLmFjdGl2ZSB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIC0ycHggMCAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbltkYXRhLW1hLXRoZW1lPVwiZ3JlZW5cIl0ge1xuICBAaW5jbHVkZSBtYS10aGVtZSgkZ3JlZW4pO1xufVxuXG5bZGF0YS1tYS10aGVtZT1cImJsdWVcIl0ge1xuICBAaW5jbHVkZSBtYS10aGVtZSgkYmx1ZSk7XG59XG5cbltkYXRhLW1hLXRoZW1lPVwicmVkXCJdIHtcbiAgQGluY2x1ZGUgbWEtdGhlbWUoJHJlZCk7XG59XG5cbltkYXRhLW1hLXRoZW1lPVwib3JhbmdlXCJdIHtcbiAgQGluY2x1ZGUgbWEtdGhlbWUoJG9yYW5nZSk7XG59XG5cbltkYXRhLW1hLXRoZW1lPVwidGVhbFwiXSB7XG4gIEBpbmNsdWRlIG1hLXRoZW1lKCR0ZWFsKTtcbn1cblxuW2RhdGEtbWEtdGhlbWU9XCJjeWFuXCJdIHtcbiAgQGluY2x1ZGUgbWEtdGhlbWUoJGN5YW4pO1xufVxuXG5bZGF0YS1tYS10aGVtZT1cImJsdWUtZ3JleVwiXSB7XG4gIEBpbmNsdWRlIG1hLXRoZW1lKCRibHVlLWdyZXkpO1xufVxuXG5bZGF0YS1tYS10aGVtZT1cInB1cnBsZVwiXSB7XG4gIEBpbmNsdWRlIG1hLXRoZW1lKCRwdXJwbGUpO1xufVxuXG5bZGF0YS1tYS10aGVtZT1cImluZGlnb1wiXSB7XG4gIEBpbmNsdWRlIG1hLXRoZW1lKCRpbmRpZ28pO1xufVxuXG5bZGF0YS1tYS10aGVtZT1cImxpbWVcIl0ge1xuICBAaW5jbHVkZSBtYS10aGVtZSgkbGltZSk7XG59XG5cbltkYXRhLW1hLXRoZW1lPVwiYmFzZVwiXSB7XG4gIEBpbmNsdWRlIG1hLXRoZW1lKCRiYXNlKTtcbn1cbi8vIFN3aXRjaGVyXG4udGhlbWUtc3dpdGNoIHtcbiAgLmJ0bi1ncm91cC0tY29sb3JzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufSIsIi5pZS13YXJuaW5nIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgei1pbmRleDogMTAwMDAwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzcmVtO1xuICBvdmVyZmxvdzogYXV0bztcblxuICAmID4gaDEge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uaWUtd2FybmluZ19fZG93bmxvYWRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHRlcjtcbiAgcGFkZGluZzogMzBweCAwO1xuICBtYXJnaW46IDMwcHggMDtcblxuICAmID4gYSB7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG59IiwiLmVycm9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZXJyb3JfX2lubmVyIHtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmID4gaDEge1xuICAgIGZvbnQtc2l6ZTogOHJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC4wMyk7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG5cbiAgJiA+IGgyIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDEuM3JlbSAwO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG4gIFxuICAmID4gcCB7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJGJvZHktY29sb3IsIDE1JSk7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gIH1cbn0iLCIud2lkZ2V0LXBhc3QtZGF5cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0ZWFsO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ud2lkZ2V0LXBhc3QtZGF5c19fbWFpbiB7XG4gIG1hcmdpbjogMCAtMTBweDtcbn1cblxuLndpZGdldC1wYXN0LWRheXNfX2NoYXJ0IHtcbiAgb3BhY2l0eTogMC43NTtcbiAgbWFyZ2luOiAwLjU1cmVtIDAgMCBhdXRvO1xuXG59XG5cbi53aWRnZXQtcGFzdC1kYXlzX19pbmZvIHtcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuOSk7XG4gIH1cblxuICBoMyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufSIsIi53aWRnZXQtdmlzaXRvcnNfX3N0YXRzIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgbWFyZ2luOiAwIC0wLjVyZW0gMnJlbTtcblxuICAmID4gZGl2IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGVuKCRncmV5LCAzMCUpO1xuICAgIHBhZGRpbmc6IDEuMXJlbSAxLjVyZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAgMCAwLjVyZW07XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMXJlbSk7XG5cbiAgICAmID4gc3Ryb25nIHtcbiAgICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgICB9XG5cbiAgICAmID4gc21hbGwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLndpZGdldC12aXNpdG9yc19fbWFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbi53aWRnZXQtdmlzaXRvcnNfX2NvdW50cnkge1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxLjVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICBsZWZ0OiAtMC4xcmVtO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG59IiwiLndpZGdldC1waWUge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi53aWRnZXQtcGllX19pdGVtIHtcbiAgcGFkZGluZzogMjBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgfVxufVxuXG4ud2lkZ2V0LXBpZV9fdGl0bGUge1xuICBjb2xvcjogJHdoaXRlO1xufSIsIi5xdWljay1zdGF0c19faXRlbSB7XG4gIHBhZGRpbmc6IDEuNXJlbSAxLjVyZW0gMS40NXJlbTtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLC4wOCk7XG4gIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aC1iYXNlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG59XG5cbi5xdWljay1zdGF0c19fY2hhcnQsXG4ucXVpY2stc3RhdHNfX2luZm8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5xdWljay1zdGF0c19faW5mbyB7XG4gIG1pbi13aWR0aDogMDtcblxuICAmID4gaDIsXG4gICYgPiBzbWFsbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xuICB9XG5cbiAgJiA+IGgyIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgJiA+IHNtYWxsIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjgpO1xuICAgIG1hcmdpbi10b3A6IDAuNnJlbTtcbiAgfVxufVxuXG4ucXVpY2stc3RhdHNfX2NoYXJ0IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMS4ycmVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihzbSwgbGcpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zdGF0cyB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuXG4uc3RhdHNfX2l0ZW0ge1xuICBAaW5jbHVkZSBjYXJkKCk7XG4gIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aC1iYXNlO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uc3RhdHNfX2NoYXJ0IHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsLjEpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5mbG90LWNoYXJ0IHtcbiAgICBtYXJnaW46IDAgLTEycHggLTEycHg7XG4gIH1cbn1cblxuLnN0YXRzX19pbmZvIHtcbiAgcGFkZGluZzogMS44cmVtIDFyZW0gMC41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbWFyZ2luOiAwO1xuXG4gIH1cblxuICBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNHJlbTtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn0iLCIud2lkZ2V0LXBpY3R1cmVzX19ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuICAmID4gYSB7XG4gICAgcGFkZGluZzogMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjk7XG4gICAgfVxuICB9XG59IiwiLndpZGdldC1yYXRpbmdzX19zdGFyIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGNvbG9yOiBsaWdodGVuKCRncmV5LCAyNSUpO1xuICBtYXJnaW46IDAuNXJlbSAwIDA7XG5cbiAgLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRhbWJlcjtcbiAgfVxufVxuXG4ud2lkZ2V0LXJhdGluZ3NfX2l0ZW0ge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcblxuICAuZmxvYXQtbGVmdCxcbiAgLmZsb2F0LXJpZ2h0IHtcbiAgICBmb250LXNpemU6IDEuMTVyZW07XG4gIH1cblxuICAuZmxvYXQtbGVmdCB7XG4gICAgLnptZGkge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgY29sb3I6ICRhbWJlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMC4xNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjM1cmVtO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuLndpZGdldC1yYXRpbmdzX19wcm9ncmVzcyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAuNnJlbSAxLjVyZW07XG59IiwiLndpZGdldC1wcm9maWxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG5cbiAgLmNhcmQtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuYnRuLS1mbG9hdCB7XG4gICAgICBjb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgfVxuICB9XG5cbiAgLmF2YXRhci1jaGFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC45NSk7XG4gICAgY29sb3I6ICRsaWdodC1ibHVlO1xuICAgIG1hcmdpbi1yaWdodDogMS4ycmVtO1xuICB9XG59XG5cbi53aWRnZXQtcHJvZmlsZV9faW1nIHtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi1ib3R0b206IDEuMnJlbTtcbiAgYm9yZGVyOiA1cHggc29saWQgcmdiYSgkd2hpdGUsIDAuMSk7XG59XG5cbi53aWRnZXQtcHJvZmlsZV9fbGlzdCB7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgLm1lZGlhIHtcbiAgICBwYWRkaW5nOiAxcmVtIDJyZW07XG5cbiAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICB9XG4gIH1cblxuICAubWVkaWEtYm9keSB7XG4gICAgc3Ryb25ne1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgIHNtYWxsIHtcbiAgICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC44KTtcbiAgICAgIGZvbnQtc2l6ZTogMC45MnJlbTtcbiAgICB9XG4gIH1cbn0iLCIud2lkZ2V0LWNvbnRhY3RzX19tYXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4O1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgbWFyZ2luOiAtMjBweCAwIC0xcHg7XG4gIH1cbn0iLCIud2lkZ2V0LXNpZ251cHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS1ncmV5O1xuXG4gIC5jYXJkLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMDgpO1xuICB9XG59XG5cbi53aWRnZXQtc2lnbnVwc19fbGlzdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMnJlbTtcblxuICAmID4gYSB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXJnaW46IDRweCAycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgLmF2YXRhci1jaGFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgLmF2YXRhci1jaGFyLFxuICAuYXZhdGFyLWltZyB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59IiwiLmZsb3QtY2hhcnQge1xuICBoZWlnaHQ6IDIwMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZsb3QtY2hhcnQtLXNtIHtcbiAgaGVpZ2h0OiAxMDBweDtcbn1cblxuLmZsb3QtY2hhcnQtLXhzIHtcbiAgaGVpZ2h0OiA3MHB4O1xufVxuXG4uZmxvdC1jaGFydC1sZWdlbmRzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDIwcHggMCAtMTBweDtcblxuICB0YWJsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgLmxlZ2VuZENvbG9yQm94IHtcbiAgICAmID4gZGl2IHtcbiAgICAgICYgPiBkaXYge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmxlZ2VuZExhYmVsIHtcbiAgICBwYWRkaW5nOiAwIDhweCAwIDNweDtcbiAgfVxufVxuXG4uZmxvdC10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsaW5lLWhlaWdodDogMTAwJTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGJveC1zaGFkb3c6IDAgM3B4IDVweCByZ2JhKCRibGFjaywgMC4wOCk7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICB6LWluZGV4OiA5OTk5OTtcbn0iLCIjanFzdG9vbHRpcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGJvcmRlcjogMDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAzcHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cbiAgLmpxc2ZpZWxkIHtcbiAgICBmb250LXNpemU6IDAuOTVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuXG4gICAgJiA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn0iLCIuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQge1xuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgQGluY2x1ZGUgc2VsZWN0LWJnKCk7XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyO1xuICAgIH1cblxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICB9XG4gIH1cblxuICAmLnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyB7XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDFweDtcblxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkaW5wdXQtYm9yZGVyLWNvbG9yLCAzJSk7XG4gICAgICBwYWRkaW5nOiAwLjRyZW0gMC44cmVtO1xuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgIH1cblxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgICAgcGFkZGluZzogMCAkaW5wdXQtcGFkZGluZy14O1xuICAgIH1cbiAgfVxuXG4gICYuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIHtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG4gIH1cblxuICAuc2VsZWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAyMDBtcyk7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiA1MCU7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiB7XG4gIC5zZWxlY3Rpb24ge1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cbn1cblxuLnNlbGVjdDItZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgYm94LXNoYWRvdzogJGRyb3Bkb3duLWJveC1zaGFkb3c7XG4gIHotaW5kZXg6ICRoZWFkZXItei1pbmRleCAtIDE7XG4gIEBpbmNsdWRlIGFuaW1hdGUoZmFkZUluLCAzMDBtcyk7XG5cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICBwYWRkaW5nOiAwLjY1cmVtICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgfVxuXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgfVxuXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaWNvbjtcbiAgICAgIGNvbnRlbnQ6ICdcXGYyNmInO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwLjQ1cmVtO1xuICAgICAgcmlnaHQ6IDEuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24ge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGxpZ2h0ZW4oJGlucHV0LWJvcmRlci1jb2xvciwgMyUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgICAgY29udGVudDogJ1xcZjFjMyc7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDEuNHJlbTtcbiAgICAgIHRvcDogMC42NXJlbTtcblxuICAgIH1cblxuICAgIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgaGVpZ2h0OiAyLjhyZW07XG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzLjVyZW07XG4gICAgfVxuICB9XG59IiwiLmRyb3B6b25lIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRib2R5LWJnLCAxJSk7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciAzMDBtcywgYmFja2dyb3VuZC1jb2xvciAzMDBtcyk7XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXG4gICY6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWljb247XG4gICAgY29udGVudDogJ1xcZjIyYSc7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMzAwbXMpO1xuICB9XG5cbiAgLmR6LXByZXZpZXcge1xuICAgICYuZHotZmlsZS1wcmV2aWV3LFxuICAgICYuZHotaW1hZ2UtcHJldmlldyB7XG4gICAgICAuZHotaW1hZ2Uge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZztcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHotcmVtb3ZlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTNweDtcbiAgICAgIHJpZ2h0OiAtNHB4O1xuICAgICAgei1pbmRleDogMjA7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIGhlaWdodDogMjJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHJlZCwgNSUpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZjEzNic7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWljb247XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICAgICAgcGFkZGluZzogMCA2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmR6LW1lc3NhZ2Uge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAzMDBtcyk7XG5cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oJGJvZHktY29sb3IsIDE1JSk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMzAwbXMsIGJveC1zaGFkb3csIDMwMG1zKTtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxLjRyZW0gMC44cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm94LXNoYWRvdzogMCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMjFlJztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAuZHotbWVzc2FnZSB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICYuZHotZHJhZy1ob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRib2R5LWJnLCAyJSk7XG4gIH1cblxuICAmLmR6LWRyYWctaG92ZXIge1xuICAgIC5kei1tZXNzYWdlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuIiwiLm5vVWktdGFyZ2V0IHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiAjZThlOGU4O1xuICBtYXJnaW46IDE1cHggMDtcbn1cblxuLm5vVWktaG9yaXpvbnRhbCB7XG4gIGhlaWdodDogMnB4O1xuXG4gIC5ub1VpLWhhbmRsZSB7XG4gICAgdG9wOiAtNXB4O1xuICAgIGxlZnQ6IC0xcHg7XG4gIH1cbn1cblxuLm5vVWktdmVydGljYWwge1xuICB3aWR0aDogM3B4O1xufVxuXG4ubm9VaS1jb25uZWN0IHtcbiAgYmFja2dyb3VuZDogJHRlYWw7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5ub1VpLWhvcml6b250YWwsXG4ubm9VaS12ZXJ0aWNhbCB7XG4gIC5ub1VpLWhhbmRsZSB7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJveC1zaGFkb3cgMjAwbXMsIHRyYW5zZm9ybSAyMDBtcyk7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5ub1VpLWFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgfVxuICB9XG5cbiAgLm5vVWktYWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxMHB4IHJnYmEoMCwwLDAsMC4wNCk7XG4gIH1cbn1cblxuLy8gVGhlbWluZ1xuQG1peGluIG5vVWlTbGlkZXItdGhlbWUoJGNvbG9yKSB7XG4gIC5ub1VpLWNvbm5lY3Qge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgfVxuXG4gICYubm9VaS1ob3Jpem9udGFsLFxuICAmLm5vVWktdmVydGljYWwge1xuICAgIC5ub1VpLWhhbmRsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5pbnB1dC1zbGlkZXItLWJsdWUgeyBAaW5jbHVkZSBub1VpU2xpZGVyLXRoZW1lKCRsaWdodC1ibHVlKTsgfVxuLmlucHV0LXNsaWRlci0tcmVkIHsgQGluY2x1ZGUgbm9VaVNsaWRlci10aGVtZSgkcmVkKTsgfVxuLmlucHV0LXNsaWRlci0tYW1iZXIgeyBAaW5jbHVkZSBub1VpU2xpZGVyLXRoZW1lKCRhbWJlcik7IH1cbi5pbnB1dC1zbGlkZXItLWdyZWVuIHsgQGluY2x1ZGUgbm9VaVNsaWRlci10aGVtZSgkZ3JlZW4pOyB9IiwiLmVhc3ktcGllLWNoYXJ0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5lYXN5LXBpZS1jaGFydF9fdmFsdWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiJVwiO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxufVxuXG4uZWFzeS1waWUtY2hhcnRfX3RpdGxlIHtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMTFweDtcbn1cbiIsIi5kYXRhVGFibGVzX3dyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gIC50YWJsZSB7XG4gICAgbWFyZ2luOiA0MHB4IDAgMjBweDtcbiAgfVxufVxuXG4uZGF0YVRhYmxlc19sZW5ndGgsXG4uZGF0YVRhYmxlc19maWx0ZXIge1xuICBmb250LXNpemU6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWljb247XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiA2cHg7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgfVxuXG4gICYgPiBsYWJlbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgc2VsZWN0LFxuICAgIGlucHV0W3R5cGU9c2VhcmNoXSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmRhdGFUYWJsZXNfbGVuZ3RoIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBAaW5jbHVkZSBzZWxlY3QtYmcoKTtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIG1pbi13aWR0aDogMTUwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJ1xcZjE5Nyc7XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cbn1cblxuLmRhdGFUYWJsZXNfZmlsdGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxmMWMzJztcbiAgfVxuXG4gICYgPiBsYWJlbCB7XG5cbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAyMDBtcyk7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiA1MCU7XG4gICAgfVxuICB9XG59XG5cbi5kYXRhVGFibGVzX2ZpbHRlci0tdG9nZ2xlZCB7XG4gICYgPiBsYWJlbCB7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxufVxuXG4uZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2luYXRlX2J1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW46IDAgMXB4IDAgMnB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmLmN1cnJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxuXG4gICY6bm90KC5jdXJyZW50KTpub3QoLmRpc2FibGVkKSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgICAgY29sb3I6IGRhcmtlbigkYm9keS1jb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbiAgXG4gICYuY3VycmVudCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG5cbiAgJi5wcmV2aW91cyxcbiAgJi5uZXh0IHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWljb247XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi41NXJlbTtcbiAgICB9XG4gIH1cblxuICAmLnByZXZpb3VzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxGMkZGJztcbiAgICB9XG4gIH1cblxuICAmLm5leHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXEYzMDEnO1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICBcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uZGF0YVRhYmxlc19pbmZvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xufVxuXG4uZGF0YVRhYmxlc19idXR0b25zIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDEwcHggMCAwIDMwcHg7XG5cbiAgLmFjdGlvbnNfX2l0ZW0ge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG5cbiAgICB9XG4gIH1cbn1cblxuLmR0LWJ1dHRvbnMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZGF0YS10YWJsZS10b2dnbGVkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuZGF0YVRhYmxlc19idXR0b25zIHtcbiAgICBbZGF0YS10YWJsZS1hY3Rpb249XCJmdWxsc2NyZWVuXCJdIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZjE2Yyc7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmZsYXRwaWNrci1jYWxlbmRhciB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6ICRkcm9wZG93bi1ib3gtc2hhZG93O1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmLnNob3dUaW1lSW5wdXQge1xuICAgICYuaGFzVGltZSB7XG4gICAgICAuZmxhdHBpY2tyLXRpbWUge1xuICAgICAgICBib3JkZXItY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZsYXRwaWNrci1tb250aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0ZWFsO1xuICBjb2xvcjogJHdoaXRlO1xuICBoZWlnaHQ6IDYwcHg7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDAgMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIHtcbiAgdG9wOiAxOHB4O1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuXG4gIHNwYW4uY3VyLW1vbnRoLFxuICBpbnB1dC5jdXIteWVhciB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICB9XG5cbiAgc3Bhbi5jdXItbW9udGg6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLm51bUlucHV0V3JhcHBlciB7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDNweDtcbiAgICAgIH1cblxuICAgICAgJi5hcnJvd1VwOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHdoaXRlO1xuICAgICAgfVxuXG4gICAgICAmLmFycm93RG93bjphZnRlciB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZsYXRwaWNrci1wcmV2LW1vbnRoLFxuLmZsYXRwaWNrci1uZXh0LW1vbnRoIHtcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDtcbiAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIHRvcDogMTNweDtcbiAgcGFkZGluZzogMDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5mbGF0cGlja3ItcHJldi1tb250aCB7XG4gIG1hcmdpbi1sZWZ0OiAxMnB4O1xufVxuXG4uZmxhdHBpY2tyLW5leHQtbW9udGgge1xuICBtYXJnaW4tcmlnaHQ6IDEycHg7XG59XG5cbi5mbGF0cGlja3ItaW5uZXJDb250YWluZXIge1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG5zcGFuLmZsYXRwaWNrci13ZWVrZGF5IHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG4uZmxhdHBpY2tyLWRheSB7XG4gIGZvbnQtc2l6ZTogMC45MnJlbTtcbiAgYm9yZGVyOiAwO1xuXG4gICYuc2VsZWN0ZWQge1xuICAgICYsICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlYWwgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmLnRvZGF5IHtcbiAgICAmLCAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gICAgICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gIH1cbn1cblxuLmZsYXRwaWNrci10aW1lIHtcbiAgbWF4LWhlaWdodDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBsaW5lLWhlaWdodDogNjBweDtcblxuICAubnVtSW5wdXRXcmFwcGVyLFxuICAuZmxhdHBpY2tyLWFtLXBtIHtcbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGdyYXktbGlnaHRlciwgMSUpO1xuICAgIH1cbiAgfVxufSIsIi5jb2xvcnBpY2tlciB7XG4gIHBhZGRpbmc6IDVweDtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGRpdiB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmLmNvbG9ycGlja2VyLWhvcml6b250YWwge1xuICAgIHdpZHRoOiAxNjBweDtcblxuICAgIC5jb2xvcnBpY2tlci1odWUsXG4gICAgLmNvbG9ycGlja2VyLWFscGhhLFxuICAgIC5jb2xvcnBpY2tlci1jb2xvciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbG9ycGlja2VyLXNhdHVyYXRpb24ge1xuICB3aWR0aDogMTUwcHg7XG4gIGhlaWdodDogMTUwcHg7XG5cbiAgaSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggcmdiYSgkYmxhY2ssIDAuMzYpO1xuXG4gICAgJiwgYiB7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmNvbG9ycGlja2VyLWh1ZSxcbi5jb2xvcnBpY2tlci1hbHBoYSB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE1MHB4O1xufVxuXG4uY29sb3JwaWNrZXItY29sb3Ige1xuICAmLCBkaXYge1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxufVxuXG4uY29sb3ItcGlja2VyX19wcmV2aWV3IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufSIsIi50cnVtYm93eWctYm94LCBcbi50cnVtYm93eWctZWRpdG9yIHtcbiAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICBtYXJnaW46IDA7XG59XG5cbi50cnVtYm93eWctYnV0dG9uLXBhbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAmOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLnRydW1ib3d5Zy1idXR0b24tZ3JvdXAge1xuICAgICY6bm90KDplbXB0eSkge1xuICAgICAgJiArIC50cnVtYm93eWctYnV0dG9uLWdyb3VwIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRydW1ib3d5Zy1kcm9wZG93biB7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogJGRyb3Bkb3duLWJveC1zaGFkb3c7XG5cbiAgYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmc6IDAgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuXG4gICAgc3ZnIHtcbiAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgICB9XG4gIH1cbn1cblxuLnRydW1ib3d5Zy1tb2RhbC1ib3gge1xuICBmb250LXNpemU6IDFyZW07XG4gIGJveC1zaGFkb3c6ICRkcm9wZG93bi1ib3gtc2hhZG93O1xuXG4gIC50cnVtYm93eWctbW9kYWwtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgXG4gIGxhYmVsIHtcbiAgICBtYXJnaW46IDE1cHggMjBweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgLnRydW1ib3d5Zy1pbnB1dC1pbmZvcyB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgICAgICY6Zm9jdXMsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGlucHV0LWJvcmRlci1jb2xvciwgNSUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50cnVtYm93eWctbW9kYWwtYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIHBhZGRpbmc6IDdweCAwO1xuICAgIG1hcmdpbjogMCAyMHB4O1xuICAgIGJvdHRvbTogMThweDtcbiAgfVxufSIsIi5mYy1zY3JvbGxlciB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uZmMge1xuICB0aCB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIHBhZGRpbmc6IDEycHggMTJweCAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxuICB0YWJsZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICB0ciB7XG4gICAgICAmID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBkaXYuZmMtcm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi5mYy11bnRoZW1lZCB7XG4gIHRkLmZjLXRvZGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRhbWJlcjtcbiAgICB9XG4gIH1cbn1cblxuLmZjLWV2ZW50IHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAwLjkycmVtO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgYm9yZGVyOiAwO1xuXG4gIC5mYy10aXRsZSB7XG4gICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3coKTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAuZmMtdGltZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuMik7XG4gICAgcGFkZGluZzogMnB4IDZweDtcbiAgICBtYXJnaW46IDAgMCAwIC0xcHg7XG4gIH1cbn1cblxuLmZjLXZpZXcge1xuICAmLFxuICAmID4gdGFibGUge1xuICAgIGJvcmRlcjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgJiA+IHRhYmxlIHtcbiAgICAmID4gdGJvZHkge1xuICAgICAgJiA+IHRyIHtcbiAgICAgICAgLnVpLXdpZGdldC1jb250ZW50IHtcbiAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mYy1pY29uIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLmZjLWJ1dHRvbiB7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cblxuLy8gTWFpbiBDYWxlbmRhclxuLmNhbGVuZGFyIHtcbiAgei1pbmRleDogMDtcblxuICB0ZCwgdGgge1xuICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkdGFibGUtYm9yZGVyLWNvbG9yLCAyJSk7XG4gIH1cblxuICAuZmMtdG9vbGJhciB7XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMgMCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgIGhlaWdodDogMTM1cHg7XG4gICAgfVxuICB9XG5cbiAgLmZjLWRheS1udW1iZXIge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oJGJvZHktY29sb3IsIDEwJSk7XG4gICAgfVxuXG4gICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC5mYy1kYXktaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLmZjLWRheS1ncmlkLWV2ZW50IHtcbiAgICBtYXJnaW46IDFweCA5cHg7XG4gIH1cbn1cblxuXG4vLyBXaWRnZXRcbi53aWRnZXQtY2FsZW5kYXIge1xuICB0ZCwgdGgge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmZjLXRvb2xiYXIge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgcGFkZGluZy10b3A6IDAuM3JlbTtcbiAgICB9XG4gIH1cblxuICAuZmMtZGF5LW51bWJlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLndpZGdldC1jYWxlbmRhcl9feWVhciB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG59XG5cbi53aWRnZXQtY2FsZW5kYXJfX2RheSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMTAwJTtcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLndpZGdldC1jYWxlbmRhcl9fYm9keSB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cblxuLy8gVGFnIENvbG9yXG4uZXZlbnQtdGFnIHtcbiAgJiA+IHNwYW4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luOiAwIDAgM3B4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmLFxuICAgICYgPiBpIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDIwMG1zKTtcbiAgICB9XG5cbiAgICAmID4gaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgJjpjaGVja2VkICsgaSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuXG4gICAgJiA+IGkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogNHB4IDAgMCA3cHg7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMjZiJztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBNYWluIENhbGVuZGFyIFNlYXNvbmFsIGhlYWRlcnNcbltkYXRhLWNhbGVuZGFyLW1vbnRoXSB7XG4gIEBpbmNsdWRlIGJnLWNvdmVyLWlubGluZSgpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtaW1hZ2UgMzAwbXMpO1xufVxuXG5bZGF0YS1jYWxlbmRhci1tb250aD1cIjBcIl0geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvY2FsZW5kYXIvamFudWFyeS5qcGcnKTsgfVxuW2RhdGEtY2FsZW5kYXItbW9udGg9XCIxXCJdIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1nL2NhbGVuZGFyL2ZlYnJ1YXJ5LmpwZycpOyB9XG5bZGF0YS1jYWxlbmRhci1tb250aD1cIjJcIl0geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvY2FsZW5kYXIvbWFyY2guanBnJyk7IH1cbltkYXRhLWNhbGVuZGFyLW1vbnRoPVwiM1wiXSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9jYWxlbmRhci9hcHJpbC5qcGcnKTsgfVxuW2RhdGEtY2FsZW5kYXItbW9udGg9XCI0XCJdIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1nL2NhbGVuZGFyL21heS5qcGcnKTsgfVxuW2RhdGEtY2FsZW5kYXItbW9udGg9XCI1XCJdIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1nL2NhbGVuZGFyL2p1bmUuanBnJyk7IH1cbltkYXRhLWNhbGVuZGFyLW1vbnRoPVwiNlwiXSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9jYWxlbmRhci9qdWx5LmpwZycpOyB9XG5bZGF0YS1jYWxlbmRhci1tb250aD1cIjdcIl0geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvY2FsZW5kYXIvYXVndXN0LmpwZycpOyB9XG5bZGF0YS1jYWxlbmRhci1tb250aD1cIjhcIl0geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvY2FsZW5kYXIvc2VwdGVtYmVyLmpwZycpOyB9XG5bZGF0YS1jYWxlbmRhci1tb250aD1cIjlcIl0geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvY2FsZW5kYXIvb2N0b2Jlci5qcGcnKTsgfVxuW2RhdGEtY2FsZW5kYXItbW9udGg9XCIxMFwiXSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9jYWxlbmRhci9ub3ZlbWJlci5qcGcnKTsgfVxuW2RhdGEtY2FsZW5kYXItbW9udGg9XCIxMVwiXSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9jYWxlbmRhci9kZWNlbWJlci5qcGcnKTsgfSIsIi5zd2FsMi1tb2RhbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBwYWRkaW5nOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBib3gtc2hhZG93OiAkZHJvcGRvd24tYm94LXNoYWRvdztcblxuICAuc3dhbDItdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAuc3dhbDItaWNvbixcbiAgLnN3YWwyLWltYWdlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuXG4gIC5zd2FsMi1jb250ZW50IHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAuc3dhbDItYnV0dG9uc3dyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICAuYnRuIHtcbiAgICAgIG1hcmdpbjogMCAzcHg7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5zd2FsMi1jb250YWluZXIuaW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC4yKTtcbn0iLCIubGctb3V0ZXIge1xuICAubGctdGh1bWItb3V0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICB9XG5cbiAgLmxnLXRodW1iLWl0ZW0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogNjBweCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCA1cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICB9XG4gIH1cblxuICAubGctaW1hZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmxnLXRvb2dsZS10aHVtYiB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgaGVpZ2h0OiA1MXB4O1xuICAgIHdpZHRoOiA1MXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCA1MDBtcyk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoLmxnLXRodW1iLW9wZW4pIC5sZy10b29nbGUtdGh1bWIge1xuICAgIHRvcDogLTcwcHg7XG4gIH1cblxuICAmLmxnLXRodW1iLW9wZW4gLmxnLXRvb2dsZS10aHVtYiB7XG4gICAgdG9wOiAtMjZweDtcbiAgfVxufVxuXG4ubGctdGh1bWIuZ3JvdXAge1xuICBwYWRkaW5nOiAyMHB4IDA7XG59XG5cbi5sZy1zbGlkZSB7XG4gIGVtIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgICBoMyB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgfVxuXG4gIC52aWRlby1jb250IHtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgkYmxhY2ssLjE2KSwgMCAycHggMTBweCByZ2JhKCRibGFjaywuMTIpO1xuICB9XG59XG5cbi5saWdodGJveCB7XG4gICYgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMzAwbXMpO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGYxZWUnO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgICAgZm9udC1zaXplOiAyLjNyZW07XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMik7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMyk7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5zY3JvbGxiYXItaW5uZXIge1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgJiA+IC5zY3JvbGwtZWxlbWVudCB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDMwMG1zKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDJweDtcblxuICAgICYuc2Nyb2xsLXkge1xuICAgICAgd2lkdGg6IDNweDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cblxuICAgICYuc2Nyb2xsLXgge1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgLnNjcm9sbC1iYXIsXG4gICAgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAzMDBtcyk7XG4gICAgfVxuXG4gICAgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpob3Zlcikge1xuICAgIC5zY3JvbGwtZWxlbWVudCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxufSIsIi53YXZlcy1lZmZlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gIC53YXZlcy1yaXBwbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgbWFyZ2luLXRvcDogLTUwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC01MHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCkgdHJhbnNsYXRlKDAsIDApO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgJjpub3QoLndhdmVzLWxpZ2h0KSxcbiAgJi5idG4tc2Vjb25kYXJ5LFxuICAmLmJ0bi1saW5rIHtcbiAgICAud2F2ZXMtcmlwcGxlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjA4KTtcbiAgICB9XG4gIH1cblxuXG4gICYuYnRuOm5vdCguYnRuLXNlY29uZGFyeSk6bm90KC5idG4tbGluayksXG4gICYud2F2ZXMtbGlnaHQge1xuICAgIC53YXZlcy1yaXBwbGUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuNSk7XG4gICAgfVxuICB9XG5cbiAgJi53YXZlcy1jbGFzc2ljIHtcbiAgICAud2F2ZXMtcmlwcGxlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjA4KTtcbiAgICB9XG5cbiAgICAmLndhdmVzLWxpZ2h0IHtcbiAgICAgIC53YXZlcy1yaXBwbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4ud2F2ZXMtbm90cmFuc2l0aW9uIHtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuLndhdmVzLWJ1dHRvbixcbi53YXZlcy1jaXJjbGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkd2hpdGUgMTAwJSwgJGJsYWNrIDEwMCUpO1xufVxuXG4ud2F2ZXMtaW5wdXQtd3JhcHBlciB7XG4gIC53YXZlcy1idXR0b24taW5wdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4ud2F2ZXMtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn0iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBb0NBQSw0RUFBNEU7QUFZNUUsQUFBQSxJQUFJLENBQUM7RUFDSCxXQUFXLEVBQUUsVUFBVTtFQUN2QixXQUFXLEVBQUUsSUFBSTtFQUNqQixvQkFBb0IsRUFBRSxJQUFJO0VBQzFCLHdCQUF3QixFQUFFLElBQUk7Q0FDL0I7O0FBU0QsQUFBQSxJQUFJLENBQUM7RUFDSCxNQUFNLEVBQUUsQ0FBQztDQUNWOztBQU1ELEFBQUEsT0FB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 */